想在程序中掉用PlaySound,使其自动播放一个软件,程序如下:
void CVdataDlg::Onplay()
{
bool result;
HANDLE Handle = CreateFile("C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe", GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
result = INVALID_HANDLE_VALUE == Handle;
if (!result)
CloseHandle(Handle);
if(result)
{
MessageBox("程序正在运行!");
}
else
{
CFileFind ff;
if(ff.FindFile("C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe"))
{
ShellExecute(NULL,"open","C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe","E:\\语音\\34.11.9-2-2.dat",NULL,SW_SHOW);
}
else
MessageBox("can't find the file!");
}
HWND hWnd =::FindWindow(NULL,"PlaySound");
}
我在函数中想调用PlaySound软件,C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe是她的可执行程序的路径,但FindWindow怎么也找不到他的句柄是怎么回事请大家帮我看看
void CVdataDlg::Onplay()
{
bool result;
HANDLE Handle = CreateFile("C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe", GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
result = INVALID_HANDLE_VALUE == Handle;
if (!result)
CloseHandle(Handle);
if(result)
{
MessageBox("程序正在运行!");
}
else
{
CFileFind ff;
if(ff.FindFile("C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe"))
{
ShellExecute(NULL,"open","C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe","E:\\语音\\34.11.9-2-2.dat",NULL,SW_SHOW);
}
else
MessageBox("can't find the file!");
}
HWND hWnd =::FindWindow(NULL,"PlaySound");
}
我在函数中想调用PlaySound软件,C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe是她的可执行程序的路径,但FindWindow怎么也找不到他的句柄是怎么回事请大家帮我看看
PROCESS_INFORMATION pi = {0};CreateProcess(NULL, "C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe E:\\语音\\34.11.9-2-2.dat", NULL, NULL, false, 0, NULL, NULL, &si, &pi);参数不记得是不是这几个了。
E:\\语音\\34.11.9-2-2.dat为什么后面都是双斜线!
路径应该是单斜线吧!
呵呵
不是很懂!
见笑了!