创建进程(CreateProcess)
生活随笔
收集整理的這篇文章主要介紹了
创建进程(CreateProcess)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
下面來分享一下如何用C++創建進程(開發環境建議VS2017【宇宙第一IDE】)
/*以下為創建新的進程,以拉起記事本為例*/ #include <windows.h>? #include <iostream> using namespace std; int main() {char TEST[] = "notepad.exe";?? //設置命令行?STARTUPINFO si = { sizeof(si) };? //startupinfo 結構體初始化PROCESS_INFORMATION pi;???? //process_infomationsi.dwFlags = STARTF_USESHOWWINDOW;?// 指定wShowWindow成員有效si.wShowWindow = TRUE;???// 此成員設為TRUE的話則顯示新建進程的主窗口,// 為FALSE的話則不顯示BOOL bRet = ::CreateProcess(NULL,???// 不在此指定可執行文件的文件名TEST,???????? // 命令行參數?NULL,???// 默認進程安全性NULL,???// 默認線程安全性FALSE,???// 指定當前進程內的句柄不可以被子進程繼承CREATE_NEW_CONSOLE,?// 為新進程創建一個新的控制臺窗口NULL,???// 使用本進程的環境變量NULL,???// 使用本進程的驅動器和目錄&si,&pi);if (bRet){// 既然我們不使用兩個句柄,最好是立刻將它們關閉::CloseHandle(pi.hThread);???? //結束新創建主線程句柄::CloseHandle(pi.hProcess);??? //結束新創建主進程句柄cout << " 新進程的進程ID號:" << pi.dwProcessId << endl;?? //dwprocessid:新建進程IDcout << " 新進程的主線程ID號:"<<pi.dwThreadId<<endl;?? //dwthreadid: 新建主線程ID}system("pause");return 0; }?
總結
以上是生活随笔為你收集整理的创建进程(CreateProcess)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 雪宝顶在哪里
- 下一篇: 破解win7开机密码的小技巧(win7怎