想在程序中掉用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怎么也找不到他的句柄是怎么回事请大家帮我看看

解决方案 »

  1.   

    STARTUPINFO si = {sizeof(si)};
    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);参数不记得是不是这几个了。
      

  2.   

    C:\\Program Files\\YJZXD\\PlaySound\\YjzXd_Voice.exe
    E:\\语音\\34.11.9-2-2.dat为什么后面都是双斜线!
    路径应该是单斜线吧!
    呵呵
    不是很懂!
    见笑了!
      

  3.   

    将"E:\\语音\\34.11.9-2-2.dat"要执行的文件字符前加"-m"试看看