比如缺少dll文件的提示什么的
应该怎么解决呢?

解决方案 »

  1.   

    就是我用createprocess创建了一个子进程,运行程序test.exe,而test.exe需要一个plxapi.dll文件,在windows下直接运行,会弹出缺少dll的提示,但用createprocess创建就什么提示都没有直接退出了。
      

  2.   

    TCHAR szBuf[80]; 
        LPVOID lpMsgBuf;
        if (NULL==CreateProcess(......))
        { 
          DWORD dw = GetLastError(); 
          FormatMessage(
            FORMAT_MESSAGE_ALLOCATE_BUFFER | 
            FORMAT_MESSAGE_FROM_SYSTEM,
            NULL,
            dw,
            MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
            (LPTSTR) &lpMsgBuf,
            0, NULL );      wsprintf(szBuf, 
            "%s failed with error %d: %s", 
            lpszFunction, dw, lpMsgBuf); 
        
          MessageBox(NULL, szBuf, "Error", MB_OK);        LocalFree(lpMsgBuf);
       }
    思路是使用getlasterror获得错误原因,然后用formatmessage获得文字资料
    请参考msdn
      

  3.   

    可是createprocess返回的结果是1阿,进程创建成功。但实际在windows下运行的时候会有错误提示。据说可以试试seterrormode,但子进程的代码我没办法改,可以在外面设置么?