1 回答

TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超8個(gè)贊
對于CreateProcess函數(shù)的后兩個(gè)參數(shù)你不能簡單的定義為NULL,你可以參看MSDN對這個(gè)函數(shù)的說明,倒數(shù)第二個(gè)參數(shù)必須要有你提供。它是一個(gè)STARTUPINFO結(jié)構(gòu)體的指針,這個(gè)結(jié)構(gòu)體對象一定要有你自己提供
最后一個(gè)參數(shù)你也必須自己提供,它是一個(gè)PROCESS_INFORMATION類型的指針
也就是:
STARTUPINFO st;
PROCESS_INFORMATION pi:
eroMemory(&si,sizeof(si));
si.cb=sizeof(si);
ZeroMemory(&pi,sizeof(pi));
然后調(diào)用函數(shù)CreateProcess("D:\\QQ\\Bin\\QQ.exe", NULL, NULL,NULL, NULL, NULL,NULL, NULL,&si,&pi);
或者CreateProcess(NULL,"D:\\QQ\\Bin\\QQ.exe", NULL, NULL,NULL, NULL, NULL,NULL, &si,&pi)
這樣就可以了。
這樣雖然可以正常的運(yùn)行,但是最好的習(xí)慣是打開一個(gè)進(jìn)程之后,我們要將該程序與進(jìn)程斷開連系,調(diào)用CloseHandle函數(shù)實(shí)現(xiàn)。
添加回答
舉報(bào)