PROCESS_INFORMATION

在創建進程時相關的數據結構之一,該結構返回有關新進程及其主執行緒的信息。其結構定義如下。

與此相關的數據結構還有

STARTUPINFO結構

該結構用於指定新進程的主視窗特性。STARTUPINFO 結構定義如下。

typedef struct_STARTUPINFO

{

DWORD cb;

LPTSTR lpReserved;

LPTSTR lpDesktop;

LPTSTR lpTitle;

DWORD dwX;

DWORD dwY;

DWORD dwXSize;

DWORD dwYSize;

DWORD dwXCountChars;

DWORD dwYCountChars;

DWORD dwFillAttribute;

DWORD dwFlags;

WORD wShowWindow;

WORD cbReserved2;

LPBYTE lpReserverd2;

HANDLE hStdInput;

HANDLE hStdOutput;

HANDLE hStdError;

}STARTUPINFO,*LPSTARTUPINFO;

其中成員含義如下。

① cb:指定該結構大小。

② lpReserved:保留,置為NULL。

③ lpDesktop:指定一個字元串,包括該進程的桌面名或視窗位置名。

④ lpTitle:指定控制台進程創建的新控制台視窗標題。

⑤ dwX,dwY:指定新視窗左上角的x 和y 偏移量(以像素為單位)。如果dwFlags 成員

未指定STARTF_USEPOSITION 標誌,則忽略這兩項。

⑥ dwXSize,dwYSize:指定新視窗的寬度和高度。如果dwFlags 成員未指定

STARTF_USESIZE 標誌,則忽略這兩個成員。

⑦ dwXCountChars,dwYCountChars:指定新控制台視窗的螢幕緩衝區的寬度和高度。

如果dwFlags 成員未指定STARTF_USECOUNTCHARS 標誌,則忽略這兩成員。

⑧ dwFillAttribute:指定新控制台視窗的初始文字和背景顏色。如果dwFlags 成員未

指定STARTF_USEFILLATTRIBUTE 標誌,則忽略該成員。

⑨ dwFlags:創建視窗標誌。

⑩ wShowWindow:新視窗的顯示狀態。如果dwFlags 成員未指定STARTF_

USESHOWWINDOWW 標誌,則忽略該成員。

cbReserved2:保留,必須置為0。

lpReserved2:保留,必須置為NULL。

hStdInput:指定一個句柄,該句柄用作進程的標準輸入句柄。如果dwFlags 成員未

指定STARTF_USESTDHANDLES 標誌,則忽略該成員。

hStdOutput:指定一個句柄,該句柄用作進程的標準輸出句柄。如果dwFlags 成員

未指定STARTF_USESTDHANDLES,則忽略該成員。

hStdError:指定一個句柄,該句柄用作進程的標準錯誤句柄。如果dwFlags 成員未

指定STARTF_USESTDHANDLES,則忽略該成員。

SECURITY_ATTRIBUTES結構

該結構存放一個對象的安全描述符並指定是否繼承返回的句柄。

SECURITY_ATTRIBUTES 結構定義如下。

typedef struct_SECURITY_ATTRIBUTES{

DWORD nLength;

LPVOID lpSecurityDescriptor;

BOOL bInheritHandle;

}SECURITY_ATTRIBUTES

其中成員含義如下。

① nLength:指定該結構大小。

② lpSecurityDescriptor:指向一個對象的安全描述符,該安全描述符控制對象的共享。

如果該成員置為NULL,則該對象使用調用進程的默認安全描述符。

③ bInheritHandle:指定新進程被創建時是否繼承返回的句柄。若該成員置為TRUE,

則新進程繼承該句柄。

相關詞條

熱門詞條

聯絡我們