共用方式為


ICorDebug::CreateProcess 方法

更新:2007 年 11 月

在偵錯工具控制下,啟動處理序及其主執行緒。

HRESULT CreateProcess (
    [in]  LPCWSTR                     lpApplicationName,
    [in]  LPWSTR                      lpCommandLine,
    [in]  LPSECURITY_ATTRIBUTES       lpProcessAttributes,
    [in]  LPSECURITY_ATTRIBUTES       lpThreadAttributes,
    [in]  BOOL                        bInheritHandles,
    [in]  DWORD                       dwCreationFlags,
    [in]  PVOID                       lpEnvironment,
    [in]  LPCWSTR                     lpCurrentDirectory,
    [in]  LPSTARTUPINFOW              lpStartupInfo,
    [in]  LPPROCESS_INFORMATION       lpProcessInformation,
    [in]  CorDebugCreateProcessFlags  debuggingFlags,
    [out] ICorDebugProcess            **ppProcess
);

參數

  • lpApplicationName
    [in] null 結尾字串的指標,指定要由啟動之處理序執行的模組。此模組會在呼叫處理序的安全性內容中執行。

  • lpCommandLine
    [in] null 結尾字串的指標,指定要由啟動之處理序執行的命令列。

  • lpProcessAttributes
    [in] Win32 SECURITY_ATTRIBUTES 結構的指標,指定此處理序的安全性描述元 (Security Descriptor)。如果 lpProcessAttributes 為 null,則此處理序會取得預設的安全性描述元。

  • lpThreadAttributes
    [in] Win32 SECURITY_ATTRIBUTES 結構的指標,指定此處理序主執行緒的安全性描述元。如果 lpThreadAttributes 為 null,則此執行緒會取得預設的安全性描述元。

  • bInheritHandles
    [in] 設定為 true 表示呼叫處理序中每個可繼承的控制代碼都是由啟動的處理序繼承,false 表示不繼承這些控制代碼。繼承的控制代碼具有原始控制代碼的相同值和存取權限。

  • dwCreationFlags
    [in] Win32 處理序建立旗標的位元組合,控制優先權類別和啟動之處理序的行為。

  • lpEnvironment
    [in] 新處理序的環境區塊指標。

  • lpCurrentDirectory
    [in] null 結尾字串的指標,指定此處理序目前目錄的完整路徑。如果這個參數為 null,則新的處理序會具有與呼叫處理序目前相同的磁碟機和目錄。

  • lpStartupInfo
    [in] Win32 STARTUPINFOW 結構的指標,指定啟動之處理序主視窗的視窗站、桌面、標準控制代碼和外觀。

  • lpProcessInformation
    [in] Win32 PROCESS_INFORMATION 結構的指標,指定所要啟動之處理序的識別資訊。

  • debuggingFlags
    [in] 指定偵錯選項之 CorDebugCreateProcessFlags 列舉型別的值。

  • ppProcess
    [out] 表示處理序之 ICorDebugProcess 物件的位址指標。

備註

這個方法的參數和 Win32 CreateProcess 方法的參數相同。

若要啟動 Unmanaged 混合模式的偵錯,請將 dwCreationFlags 設定為 DEBUG_PROCESS | DEBUG_ONLY_THIS_PROCESS。如果只要使用 Managed 偵錯,則請勿設定這些旗標。

如果偵錯工具和要偵錯的處理序 (附加的處理序) 共用單一主控台,而且使用 Interop 偵錯,則此附加的處理序可能會保留主控台鎖定,而在偵錯事件上停止。偵錯工具就會封鎖任何使用主控台的嘗試。若要避免此問題,請在 dwCreationFlags 參數中設定 CREATE_NEW_CONSOLE 旗標。

Win9x 和非 x86 平台 (例如 IA-64 和 AMD-64 平台) 不支援 Interop 偵錯。

需求

**平台:**請參閱 .NET Framework 系統需求

**標頭:**CorDebug.idl

**程式庫:**CorGuids.lib

**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0、1.1、1.0

請參閱

參考

ICorDebug