資源簡介
個人寫的操作系統實驗 進程的創建 部分的代碼以及文檔,調用了WINDOWS API

代碼片段和文件信息
#include?
#include??
#include??
#include?
using?namespace?std;
int?_tmain(int?argc?TCHAR?*argv[])
{
STARTUPINFO?si;
PROCESS_INFORMATION?pi;?//進程信息:
ZeroMemory(&si?sizeof(si));
si.cb?=?sizeof(si);
ZeroMemory(&pi?sizeof(pi));
TCHAR?cmdline[]?=?TEXT(“c://program?files//internet?explorer//iexplore.exe?http://community.csdn.net/“);
//?創建子進程,判斷是否執行成功
if?(!CreateProcess(NULL?cmdline?NULL?NULL?FALSE?0?NULL?NULL?&si?&pi))
{
cout?<“創建進程失敗..“?< system(“pause“);?//用于測試
return?0;
}
//進程執行成功,打印進程信息?
cout?<“進程創建成功,以下是進程的信息:“?< cout?<“進程ID?pi.dwProcessID:?“?< cout?<“線程ID?pi.dwThreadID?:?“?< cout?<“主線程優先級?GetThreadPriority()?:?“?<
int?a;
cin?>>?a;
if?(a?==?1){
WaitForSingleobject(pi.hProcess?INFINITE);//檢測進程是否停止
cout?<“進程已經自己退出...“?< }
system(“pause“);//執行完畢后等待
if?(TerminateProcess(pi.hProcess?1))
cout?<“進程已被終止!“?< else?cout?<“終止進程失敗!“?< //關閉進程和句柄?
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
system(“pause“);//執行完畢后等待
exit(0);
return?0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1395??2015-10-31?21:48??進程的創建\main.cpp
?????文件??????67584??2015-10-31?21:48??進程的創建\main.exe
?????文件????1267739??2015-11-18?09:35??進程的創建\操作系統實驗一進程的創建文檔.docx
?????目錄??????????0??2015-11-18?09:35??進程的創建
-----------?---------??----------?-----??----
??????????????1336718????????????????????4
評論
共有 條評論