功能:示範等待通過CreateProcess建立的進程結束#include <stdio.h>#include <Windows.h>int main(){STARTUPINFO si;PROCESS_INFORMATION pi;memset( &si, 0x00, sizeof(si) );si.cb = sizeof(si);memset( &pi, 0x00, sizeof(pi) );// Start the child process. if ( CreateProcess( L"c:\\windows\\system32\\cmd.exe", // No module name (use command line)NULL, // Command lineNULL, // Process handle not inheritableNULL, // Thread handle not inheritableFALSE, // Set handle inheritance to FALSE0, // No creation flagsNULL, // Use parent's environment blockNULL, // Use parent's starting directory &si, // Pointer to STARTUPINFO structure&pi )){DWORD oldTime =GetTickCount();DWORD dwRetun=0;WaitForSingleObject(pi.hProcess,INFINITE);DWORD newTime=GetTickCount();DWORDdwTime=(newTime-oldTime)/1000;GetExitCodeProcess(pi.hProcess,&dwRetun);printf("程式運時間長度: dwTime = %d 退出時傳回值: %d\n", dwTime, dwRetun);getchar();}return 0;}