欢迎讨论

解决方案 »

  1.   

    用一个程序启动winzip很容易的,不过返回执行结果不太容易!
    学习
      

  2.   

    用WaitForInputIdle来等待b进程完全启动
    用WaitForSingleObject来等待b进程结束
      

  3.   

    PROCESS_INFORMATION ProcessInfo; 
    STARTUPINFO StartupInfo; //This is an [in] parameter
    ZeroMemory(&StartupInfo, sizeof(StartupInfo));
    StartupInfo.cb = sizeof StartupInfo ; //Only compulsory field
    if(CreateProcess("c:\\winnt\\notepad.exe", NULL, 
        NULL,NULL,FALSE,0,NULL,
        NULL,&StartupInfo,&ProcessInfo))

        WaitForSingleObject(ProcessInfo.hProcess,INFINITE);
        CloseHandle(ProcessInfo.hThread);
        CloseHandle(ProcessInfo.hProcess);
    }  
    else
    {
        MessageBox("The process could not be started...");
    }
    但是这样,不能得知winzip何时才解压完毕.
    如果能设置winzip解压完毕自动退出,
    那就能捕获了