在vc中调用了一个c#写的可执行文件,想在vc得到这个可执行文件的一个返回值,该怎么办啊

解决方案 »

  1.   

    你怎么调用的呢?
    如果是CreateProcess,可以用
    BOOL GetExitCodeProcess(
      HANDLE hProcess,
      LPDWORD lpExitCode
    );
    得到返回值。
      

  2.   

    是用的CreateProcess,这样调用的
    sprintf(szArg,"%s%s","Rubbish.exe ",parameter);
    PROCESS_INFORMATION pi;
    STARTUPINFO si = {sizeof(si)};
    ::CreateProcess( NULL,szArg,NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);请问高手上面那个GetExitCodeProcess是在什么时候调用,多谢
      

  3.   

    GetExitCodeProcess有两个参数,第一个是进程句柄,第二个是一个DWORD的指针,用来接收返回值.
      

  4.   

    还有一个问题,请问在用CreateProcess调用了一个可执行应用程序时,如何判断该程序是否已经运行完毕。
      

  5.   

    用Event,调用CreateProcess:WaitForSingleObjects
    当进程结束前先SetEvent
      

  6.   

    WaitForSingleObject(hProcess,INFINITE);
    返回后,说明进程已经退出。