- 15
- 0
- 约2.04千字
- 约 5页
- 2017-08-22 发布于湖北
- 举报
进程的创建与撤销
实验一 进程创建与撤销
实验目的
通过创建进程,观察正在运行的进程和终止进程的程序设计与调试操作,进一步熟悉操作系统的进程概念,理解windows 2007进程生存过程.
通过阅读和分析实验程序,学习创建进程,观察进程和终止进程的程序设计方法。
背景知识
1.创建进程:CreateProcess()调用的核心参数是可执行文件运行时的文件名以及其命令行。其核心参数和名称和类型如下:
lpApplicationName:指定要执行的模块,包括可执行代码的EXE文件的文件名。
lpCommandLine:指向一个以空结尾的串,该串定义了要执行。该命令行是可以在Windows提示符下执行的的命令行命令行。
lpProcessAttributes:指向一个SECURITY_ATTRIBUTES结构,该结构决定了返回的句柄是否可被子进程继承。
lpThreadAttributes:指向一个SECURITY_ATTRIBUTES结构,该结构决定了返回的句柄是否可被子进程继承。
bInheritHandles:表明新进程是否可继承创建者进程的句柄。
dwCreationFlags:定义控制优先类和进程创建的附加标志。
lpEnvironment:指向一个新进程的环境块。
lpCurrentDirectory:指向一个以空结尾的串,该串定义了子进程的当前驱动器和当前目录。
lpStartupInfo:指向一个STARTUPINFO结构,该结构定义了新进程的主窗口将如何显示。
lpProcessInformation:指向进程信息描述结构,该结构接受关于新进程的描述信息。
可执行文件运行时的文件名及其命令行,如 lpCommandLine=c:\\windows\\system32\\cmd.exe”
或lpApplicationName=“c:\windows\system32\cmd.exe”
lpStartupInfor描述新进程的窗口显示情况。定义STARTUPINFO结构,并赋予初始值, 如:STARTUPINFO si;
memset(si,0,sizeof(si));
si.cb=sizeof(si);
lpProcessInformation指向进程信息描述结构,接受关于新进程的描述信息,如:PROCESS_INFORMATION pi
所有进程都是以调用ExitProcess() 或者TerminateProcess() 函数结束的。
TerminateProcess() API函数只要打开带有PROCESS_TERMINATE访问权的进程对象,就可以终止进程,并向系统返回指定的代码。
如果不知道所创建进程中所有线程的状态,最好使用TerminateProcess() 终止进程。
进程创建和撤销的代码
#includewindows.h
#includecstdlib
#includeiostream
using namespace std;
void main()
{
PROCESS_INFORMATION pi;
STARTUPINFO si; //一数据结构,定义新进程的窗口如何显示
memset(si,0,sizeof(si)); //为该结构内存中数据初始化为0
si.cb=sizeof(si);
si.wShowWindow=SW_SHOW;
si.dwFlags=STARTF_USESHOWWINDOW;
bool creat=CreateProcess(NULL,
C:\\Users\\Stone\\Desktop\\示例代码\\line演示\\line\\x64\\Debug\\line.exe,
NULL,
NULL,
FALSE,
NORMAL_PRIORITY_CLASS|CREATE_NEW_CONSOLE,
NULL,
NULL,
si,
pi);
if(!creat)
{
进程创建成功!;
}
else
cout进程创建成功!\n;
if(!TerminateProcess(pi.hProcess,0)){
cout终止进程出错!;
}
else
{
cout终止进程成功!;
}
int n;
cinn;
}
当父进程执行时的运行结果如图:
控制面板上的信息提示为:
当销毁进程时:
执行结果为:
心得体会
通过本实验的操作,简单了解了CreateProcess()函数的参数类型,以及参数中涉及的一些数据结构,对于进程创建过程中遇到的bug,能结合各数据结构的参数类型进行转换,得以成功完成进程的创建和销毁
您可能关注的文档
- 软控股份:2010年半年度报告摘要 2010-08-17.pdf
- 轻松创业持续成功.ppt
- 载重电报拍发格式.docx
- 轻叩爱国的大门.ppt
- 轻纺城2010年第三次临时股东大会材料.pdf
- 辐射沙洲农业生态景观建设.pdf
- 辩护词(宋)3.docx
- 轻松几步教你如何鉴别和田玉及购买和田玉的注意点.doc
- 辽宁08年事业单位真题.docx
- 辽宁乡村旅游产业发展策略研究——以丹东为例.pdf
- 2025-2026学年科普版七年级下册英语Unit7 Being a Smart Shopper素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit10 Lending a Helping Hand素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit11 Rules Matter素养测评卷(含答案).docx
- 2025-2026学年科普版七年级下册英语Unit12 Better Together素养测评卷(含答案).docx
- 2026年中考英语语法选择专题训练(含答案).docx
- 2026中考语文二轮学思并重,涵养君子之德论语十二章、虽有佳肴、大道之行也.docx
- 中考文言文常见文化常识梳理.docx
- 中考语文二轮:内修君子德外尽忠臣心诚子书出师表修身立德主题学习.docx
- 中考语文二轮:不一样的求学路一样的成长梦送东阳马生序劝学主题学习.docx
- 中考语文二轮:《陋室铭》《爱莲说》托物寓意主题学习.docx
原创力文档

文档评论(0)