Freigeben über


IDebugEventCallbacksWide::CreateProcess-Methode (dbgeng.h)

Die CreateProcess-Rückrufmethode wird von der Engine aufgerufen, wenn ein Create-Process-Debugereignis im Ziel auftritt.

Syntax

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

Parameter

[in] ImageFileHandle

Gibt das Handle für die Imagedatei des Prozesses an. Wenn diese Informationen nicht verfügbar sind, ist ImageFileHandleNULL.

[in] Handle

Gibt das Handle für den Prozess an. Dieser Parameter entspricht dem Feld hProcess in der CREATE_PROCESS_DEBUG_INFO-Struktur. Wenn diese Informationen nicht verfügbar sind, ist ImageFileHandleNULL.

[in] BaseOffset

Gibt die Basisadresse des ausführbaren Images des Prozesses im Speicheradressraum des Ziels an. Wenn diese Informationen nicht verfügbar sind, ist BaseOffsetNULL.

[in] ModuleSize

Gibt die Größe des ausführbaren Images des Prozesses in Byte an. Wenn diese Informationen nicht verfügbar sind, ist ModuleSize null.

[in, optional] ModuleName

Gibt den vereinfachten Modulnamen an, der von der Debugger-Engine verwendet wird. In den meisten Fällen stimmt dies mit dem Namen der Bilddatei ab, wobei die Erweiterung nicht enthalten ist. Wenn diese Informationen nicht verfügbar sind, ist ModuleNameNULL.

[in, optional] ImageName

Gibt den Dateinamen für ausführbare Images des Prozesses an, der den Pfad enthalten kann. Wenn diese Informationen nicht verfügbar sind, ist ImageNameNULL.

[in] CheckSum

Gibt die Prüfsumme des ausführbaren Images des Prozesses an. Wenn diese Informationen nicht verfügbar sind, ist CheckSumme null.

[in] TimeDateStamp

Gibt die Uhrzeit und den Datumsstempel der ausführbaren Imagedatei des Prozesses an. Wenn diese Informationen nicht verfügbar sind, ist TimeDateStamp null.

[in] InitialThreadHandle

Gibt das Handle für den anfänglichen Thread des Prozesses an. Dieser Parameter entspricht dem Feld hThread in der CREATE_PROCESS_DEBUG_INFO-Struktur. Wenn diese Informationen nicht verfügbar sind, ist InitialThreadHandleNULL.

[in] ThreadDataOffset

Gibt einen Datenblock an, den das Betriebssystem für diesen Thread verwaltet. Die tatsächlichen Daten im Block sind betriebssystemspezifisch. Wenn diese Informationen nicht verfügbar sind, ist ThreadDataOffsetNULL.

[in] StartOffset

Gibt die Startadresse des Threads im virtuellen Adressraum des Prozesses an. Wenn diese Informationen nicht verfügbar sind, ist StartOffsetNULL.

Rückgabewert

Diese Methode gibt einen DEBUG_STATUS_XXX Wert zurück, der angibt, wie die Ausführung des Ziels fortgesetzt werden soll, nachdem die Engine dieses Ereignis verarbeitet hat. Ausführliche Informationen dazu, wie die Engine diesen Wert behandelt, finden Sie unter Überwachen von Ereignissen.

Hinweise

Diese Methode wird nur von der Engine aufgerufen, wenn das flag DEBUG_EVENT_CREATE_PROCESS in der von IDebugEventCallbacksWide::GetInterestMask zurückgegebenen Maske festgelegt ist.

Weitere Informationen zur Behandlung von Ereignissen finden Sie unter Überwachen von Ereignissen. Informationen zu Threads finden Sie unter Threads und Prozesse.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile dbgeng.h (dbgeng.h einschließen)