IDebugEngineLaunch2::LaunchSuspended
這個方法會透過偵錯引擎 (DE) 啟動進程。
語法
int LaunchSuspended(
string pszServer,
IDebugPort2 pPort,
string pszExe,
string pszArgs,
string pszDir,
string bstrEnv,
string pszOptions,
enum_LAUNCH_FLAGS dwLaunchFlags,
uint hStdInput,
uint hStdOutput,
uint hStdError,
IDebugEventCallback2 pCallback,
out IDebugProcess2 ppProcess
);
參數
pszMachine
[in]要在其中啟動進程的機器名稱。 使用 Null 值來指定本機電腦。
pPort
[in] 代表程式將執行之埠的 IDebugPort2 介面。
pszExe
[in]要啟動的可執行檔名稱。
pszArgs
[in]要傳遞至可執行檔的自變數。 如果沒有自變數,可能是 Null 值。
pszDir
[in]可執行檔所使用的工作目錄名稱。 如果不需要工作目錄,可能是 Null 值。
bstrEnv
[in]NULL 終止字串的環境區塊,後面接著額外的NULL終止符。
pszOptions
[in]可執行文件的選項。
dwLaunchFlags
[in]指定 工作階段的LAUNCH_FLAGS 。
hStdInput
[in]處理替代輸入數據流。 如果不需要重新導向,可能是 0。
hStdOutput
[in]處理替代輸出數據流。 如果不需要重新導向,可能是 0。
hStdError
[in]處理替代錯誤輸出數據流。 如果不需要重新導向,可能是 0。
pCallback
[in] 接收調試程式事件的IDebugEventCallback2 物件。
ppDebugProcess
[out]會傳回代表已啟動進程的產生的 IDebugProcess2 物件。
傳回值
如果成功,則會傳回 S_OK
;否則,會傳回錯誤碼。
備註
一般而言,Visual Studio 會使用 LaunchSuspended 方法來啟動程式,然後將調試程式附加至暫停的程式。 不過,在某些情況下,偵錯引擎可能需要啟動程式(例如,如果偵錯引擎是解釋器的一部分,而偵錯的程式是解譯的語言),在此情況下,Visual Studio 會使用 IDebugEngineLaunch2::LaunchSuspended
方法。
呼叫 ResumeProcess 方法,以在進程成功啟動處於暫停狀態之後啟動進程。