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) |