共用方式為


IDebugEventCallbacks::CreateProcess 方法 (dbgeng.h)

當目標中發生建立進程偵錯事件時,引擎會呼叫 CreateProcess 回呼方法。

語法

HRESULT CreateProcess(
  [in]           ULONG64 ImageFileHandle,
  [in]           ULONG64 Handle,
  [in]           ULONG64 BaseOffset,
  [in]           ULONG   ModuleSize,
  [in, optional] PCSTR   ModuleName,
  [in, optional] PCSTR   ImageName,
  [in]           ULONG   CheckSum,
  [in]           ULONG   TimeDateStamp,
  [in]           ULONG64 InitialThreadHandle,
  [in]           ULONG64 ThreadDataOffset,
  [in]           ULONG64 StartOffset
);

參數

[in] ImageFileHandle

指定行程的影像檔句柄。 如果無法使用這項資訊,ImageFileHandle 將會 NULL

[in] Handle

指定進程的句柄。 此參數對應於 CREATE_PROCESS_DEBUG_INFO 結構中的 hProcess 欄位。 如果無法使用這項資訊,ImageFileHandle 將會 NULL

[in] BaseOffset

指定目標記憶體位址空間中進程可執行檔映像的基位址。 如果無法使用這項資訊,BaseOffset 將會 NULL

[in] ModuleSize

指定進程的可執行映射大小,以位元組為單位。 如果無法使用這項資訊,ModuleSize 為零。

[in, optional] ModuleName

指定調試程式引擎所使用的簡化模組名稱。 在大部分情況下,這符合排除擴展名的映像檔名稱。 如果無法使用這項資訊,ModuleName 將會 NULL

[in, optional] ImageName

指定進程的可執行檔映像檔名,其可包含路徑。 如果無法使用這項資訊,ImageName 將會 NULL

[in] CheckSum

指定進程可執行檔映像的總和檢查碼。 如果無法使用這項資訊,CheckSum 為零。

[in] TimeDateStamp

指定進程可執行檔的日期和時間戳記。 如果無法使用這項資訊,TimeDateStamp 為零。

[in] InitialThreadHandle

指定進程初始線程的句柄。 此參數對應於 CREATE_PROCESS_DEBUG_INFO 結構中的 hThread 字段。 如果無法使用這項資訊,InitialThreadHandle 將會 NULL

[in] ThreadDataOffset

指定作系統為此線程維護的數據區塊。 區塊中的實際數據是作系統特定的。 如果無法使用這項資訊,ThreadDataOffset 將會 NULL

[in] StartOffset

指定進程虛擬位址空間中線程的起始位址。 如果無法使用這項資訊,StartOffset 將會 NULL

傳回值

這個方法會傳回 DEBUG_STATUS_XXX 值,指出引擎處理此事件之後,目標的執行應該如何繼續。 如需引擎如何處理此值的詳細資訊,請參閱 監視事件

言論

只有在 IDebugEventCallbacks::GetInterestMask 傳回的遮罩中設定了DEBUG_EVENT_CREATE_PROCESS旗標時,引擎才會呼叫這個方法。

如需處理事件的詳細資訊,請參閱 監視事件。 如需線程的相關信息,請參閱 線程和進程

要求

要求 價值
目標平臺 桌面
標頭 dbgeng.h (include Dbgeng.h)