PROCESS_INFORMATION 结构 STARTUPINFO结构 SECURITY_ATTRIBUTES 结构

来源:互联网 发布:单片机车辆闯红灯检测 编辑:程序博客网 时间:2024/05/16 05:45
PROCESS_INFORMATION 结构

在创建进程时相关的数据结构之一,该结构返回有关新进程及其主线程的信息。其结构定义如下。

typedef struct_PROCESS_INFORMATION

{

HANDLE hProcess;//返回新进程的句柄
HANDLE hThread;//返回主线程的句柄
DWORD dwProcessId;//返回一个全局进程标识符。该标识符用于标识一个进程。从进程被创建到终止,该值始终有效
DWORD dwThreadId;//返回一个全局线程标识符。该标识符用于标识一个线程。从线程被创建到终止,该值始终有效
}PROCESS_INFORMATION;

STARTUPINFO结构


该结构用于指定新进程的主窗口特性。STARTUPINFO 结构定义如下。
typedef struct_STARTUPINFO
{
DWORD cb; 指定该结构大小
LPTSTR lpReserved;保留,置为NULL。
LPTSTR lpDesktop;指定一个字符串,包括该进程的桌面名或窗口位置名
LPTSTR lpTitle;指定控制台进程创建的新控制台窗口标题
DWORD dwX; 如果dwFlags 成员指定STARTF_USEPOSITION 标志,则指定新窗口左上角的x 和y 偏移量(以像素为单位)
DWORD dwY;
DWORD dwXSize;       如果dwFlags 成员指定为STARTF_USESIZE 标志,则指定新窗口的宽度和高度
DWORD dwYSize;
DWORD dwXCountChars;如果dwFlags 成员指定为STARTF_USECOUNTCHARS 标志,则指定新控制台窗口的屏幕缓冲区的宽度和高度
DWORD dwYCountChars;
DWORD dwFillAttribute;        如果dwFlags 成员为指定STARTF_USEFILLATTRIBUTE 标志,则指定为新控制台窗口的初始文字和背景颜色
DWORD dwFlags;创建窗口标志
WORD wShowWindow;新窗口的显示状态。如果dwFlags 成员未指定STARTF_USESHOWWINDOWW 标志,则忽略该成员

WORD cbReserved2; 保留,必须置为0

        LPBYTE lpReserverd2; 保留,必须置为NULL


如果dwFlags 成员未指定STARTF_USESTDHANDLES 标志,则忽略下面三个成员

HANDLE hStdInput; 指定一个句柄,该句柄用作进程的标准输入句柄
HANDLE hStdOutput; 指定一个句柄,该句柄用作进程的标准输出句柄
HANDLE hStdError; 指定一个句柄,该句柄用作进程的标准错误句柄

}STARTUPINFO,*LPSTARTUPINFO;





SECURITY_ATTRIBUTES 结构
该结构存放一个对象的安全描述符并指定是否继承返回的句柄。

typedef struct_SECURITY_ATTRIBUTES

{
DWORD nLength;
LPVOID lpSecurityDescriptor;
BOOL bInheritHandle;
}SECURITY_ATTRIBUTES
其中成员含义如下。
① nLength:指定该结构大小。
② lpSecurityDescriptor:指向一个对象的安全描述符,该安全描述符控制对象的共享。
如果该成员置为NULL,则该对象使用调用进程的默认安全描述符。
③ bInheritHandle:指定新进程被创建时是否继承返回的句柄。若该成员置为TRUE,
则新进程继承该句柄。

原创粉丝点击