IDebugEventCallbacks::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] PCSTR   ModuleName,
  [in, optional] PCSTR   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 Bytes an. Wenn diese Informationen nicht verfügbar sind, ist ModuleSize 0.

[in, optional] ModuleName

Gibt den vereinfachten Modulnamen an, der von der Debugger-Engine verwendet wird. In den meisten Fällen entspricht dies dem Namen der Imagedatei mit Ausnahme der Erweiterung. Wenn diese Informationen nicht verfügbar sind, lautet ModuleNameNULL.

[in, optional] ImageName

Gibt den Dateinamen des ausführbaren 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 CheckSum 0.

[in] TimeDateStamp

Gibt den Zeit- und Datumsstempel der ausführbaren Imagedatei des Prozesses an. Wenn diese Informationen nicht verfügbar sind, ist TimeDateStamp 0.

[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 nach der Verarbeitung dieses Ereignisses durch das Modul fortgesetzt werden soll. Ausführliche Informationen zur Behandlung dieses Werts durch das Modul finden Sie unter Überwachungsereignisse.

Hinweise

Diese Methode wird nur von der Engine aufgerufen, wenn das DEBUG_EVENT_CREATE_PROCESS-Flag in der von IDebugEventCallbacks::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 (einschließlich Dbgeng.h)