进程初学——使用win32API创建进程

本文介绍了如何使用win32API创建进程,重点讲解了STARTUPINFO和PROCESS_INFORMATION结构,以及句柄的概念。同时提到了关键函数ZeroMemory和WaitForSingleObject的作用,并给出了相关代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CreateProcess(lpApplicationName,//String,要执行的应用程序的名字
		lpCommandLine,//String,要执行的命令行
		lpProcessAttributes,//SEQURITY_ATTRIBUTES,指定一个SEQURITY_ATTRIBUTES结构,或传递零值
		lpthreadAttributes,//SEQURITY_ATTRIBUTES,指定一个SECURITY_ATTRIBUTES结构,或传递零值
		bInheritHandles,//Long,TRUE表示允许当前进程中所有句柄都由新建的子进程继承
		dwCreationFlags,//creation flags
	<span style="white-space:pre">	</span>lpEnvironment,//Any,指向一个环境块的指针(环境缓冲区的头一个字符,或者环境块地址)
		lpCurrentDirectory,//String,新进程的当前目录路径
		lpStartupInfo,//STARTUPINFO,指定一个STARTUPINFO结构,其中包含了创建进程时的附加信息
		lpProcessInfomation //PROCESS_INFOMATION,该结构用于容纳新进程的进程和线程标识符))

STARTUPINFO结构 用于指定新进程的主窗口特性,其中包含参数DWORD,指明STARTUPINFO结构中的字节数,应用程序必须将cb初始化为sizeof(STARTUPINFO)

PROCESS_INFOMATION结构 返回有关新进程及其主线程的信息,其中包含HANDLE hProcess(返回新进程的句柄) 和 HANDLE hThread(返回主线程的句柄)

句柄,是整个Windows编程的基础。一个句柄是指使用的一个唯一的整数值,即一个4字节(64位程序中为8字节)唱得数值,来标识应用程序中的不同对象和同类中的不同实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控制或者文件等。应用程序能够通过句柄访问相应的对象的信息,但是句柄不是一个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值