VB聲明 |
||
Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As String, ByVal lpCommandLine As String, lpProcessAttributes As SECURITY_ATTRIBUTES, lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long |
||
說明 |
||
創(chuàng)建一個新進程(比如執(zhí)行一個程序) |
||
返回值 |
||
Long,非零表示成功,零表示失敗。會設置GetLastError |
||
參數(shù)表 |
||
參數(shù) |
類型及說明 |
|
lpApplicationName |
String,要執(zhí)行的應用程序的名字??稍O為vbNullString;在這種情況下,應用程序的名字應在lpCommandLine參數(shù)的起始處出現(xiàn) |
|
lpCommandLine |
String,要執(zhí)行的命令行??捎肎etCommandLine函數(shù)取得一個進程使用的命令行。Windows會盡可能地根據(jù)下述搜索順序來查找執(zhí)行文件: (1)包含了父進程執(zhí)行文件的目錄 (2)父進程當前的目錄 (3)由GetSystemDirectory返回的系統(tǒng)目錄 (4)僅適于windows NT:16位系統(tǒng)目錄 (5)由GetWindowDirectory返回的Windows目錄 (6)由PATH環(huán)境變量指定的目錄 |
|
lpProcessAttributes |
SECURITY_ATTRIBUTES,指定一個SECURITY_ATTRIBUTES結(jié)構(gòu),或傳遞零值(將參數(shù)聲明為ByVal As Long,并傳遞零值)——表示采用不允許繼承的默認描述符。該參數(shù)定義了進程的安全特性 |
|
lpThreadAttributes |
SECURITY_ATTRIBUTES,指定一個SECURITY_ATTRIBUTES結(jié)構(gòu),或傳遞零值(將參數(shù)聲明為ByVal As Long,并傳遞零值)——表示采用不允許繼承的默認描述符。該參數(shù)定義了進程之主線程的安全特性 |
|
bInheritHandles |
Long,TRUE表示允許當前進程中的所有句柄都由新建的子進程繼承 |
|
dwCreationFlags |
Long,來自API32.TXT文件的一個或多個下述常數(shù)之一,它們都帶有前綴CREATE_。下面這些用于VB程序員: |
|
CREATE_SEPARATE_WOW_VDM(僅適用于NT) |
啟動一個16位的Windows應用程序時,強迫它在自己的內(nèi)存空間運行 |
|
CREATE_SHARED_WOW_VDM(僅適用于NT) |
啟動一個16位的Windows應用程序時,強迫它在共享的16位虛擬機(VM)內(nèi)運行 |
|
CREATE_SUSPENDED |
立即掛起新進程。除非調(diào)用了ResumeThread函數(shù)函數(shù),否則它不會恢復運行 |
|
也可能是下述常數(shù)之一,用于指定優(yōu)先級 |
||
IDLE_PRIORITY_CLASS |
新進程應該有非常低的優(yōu)先級——只有在系統(tǒng)空閑的時候才能運行?;局凳? |
|
HIGH_PRIORITY_CLASS |
新進程有非常高的優(yōu)先級,它優(yōu)先于大多數(shù)應用程序?;局凳?3。注意盡量避免采用這個優(yōu)先級 |
|
NORMAL_PRIORITY_CLASS |
標準優(yōu)先級。如進程位于前臺,則基本值是9;如在后臺,則優(yōu)先值是7 |
|
不要在VB中使用REALTIME_PRIORITY_CLASS |
||
lpEnvironment |
Any,指向一個環(huán)境塊的指針(環(huán)境緩沖區(qū)的頭一個字符,或者環(huán)境塊的地址) |
|
lpCurrentDriectory |
String,新進程的當前目錄路徑。調(diào)用函數(shù)的時候,可用vbNullString指定當前目錄 |
|
lpStartupInfo |
STARTUPINFO,指定一個STARTUPINFO結(jié)構(gòu),其中包含了創(chuàng)建進程時使用的附加信息 |
|
lpProcessInformation |
PROCESS_INFORMATION,該結(jié)構(gòu)用于容納新進程的進程和線程標識符。大多數(shù)情況下,一旦這個函數(shù)返回,父應用程序都會關(guān)閉兩個句柄。 |