CreateProcess注意的幾個地方

2022-07-19 09:27:11 字數 854 閱讀 3019

1.createprocess失敗,getlasterror返回998,應該是最後兩個引數沒有初始化導致的。

2.要使外部程式隱藏視窗執行,需要將startupinfo的dwflags指定為startf_useshowwindow,並且將wshowwindow指定為sw_hide.

3.第2條建立的程序確實是隱藏執行的,但是程式啟動時會導致螢幕閃爍,為了避免螢幕閃爍我們應該建立乙個桌面並指定給該程序的startupinfo.

hdesk hdesk = createdesktop(_t("

mydesk

"), null, null, 0

, generic_all, null);

assert(hdesk);

startupinfo si = ;

si.lpdesktop = _t("

mydesk");

si.dwflags =startf_useshowwindow;

si.wshowwindow =sw_hide;

process_information pi = ;

createprocess(g_strexepath + _t("

deletefiles.exe"),

null,

null,

null,

false,

create_default_error_mode |normal_priority_class,

null,

null,

&si,

&pi);

closehandle(pi.hthread);

closehandle(pi.hprocess);

CreateProcess函式使用

startupinfo infostart process information infoprocess memset infostart,0,sizeof infostart infostart.cb sizeof startupinfo infostart.dwflags startf use...

CreateProcess 終止程序

最近需要用到,稍微研究了下。1.供createprocess啟動的程序test.exe,只是列印出引數而已。include stdafx.h include include include using namespace std int main int argc,char argv 程式 incl...

建立程序 CreateProcess

下面來分享一下如何用c 建立程序 開發環境建議vs2017 宇宙第一ide 以下為建立新的程序,以拉起記事本為例 include include using namespace std int main startupinfo 結構體初始化 process information pi proces...