Metodo IDebugEventCallbacks::CreateProcess (dbgeng.h)
Il metodo di callback CreateProcess viene chiamato dal motore quando si verifica un evento di debug create-process nella destinazione.
Sintassi
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
);
Parametri
[in] ImageFileHandle
Specifica l'handle per il file di immagine del processo. Se queste informazioni non sono disponibili, ImageFileHandle sarà NULL.
[in] Handle
Specifica l'handle per il processo. Questo parametro corrisponde al campo hProcess nella struttura CREATE_PROCESS_DEBUG_INFO. Se queste informazioni non sono disponibili, ImageFileHandle sarà NULL.
[in] BaseOffset
Specifica l'indirizzo di base dell'immagine eseguibile del processo nello spazio indirizzi di memoria della destinazione. Se queste informazioni non sono disponibili, BaseOffset sarà NULL.
[in] ModuleSize
Specifica le dimensioni dell'immagine eseguibile del processo in byte. Se queste informazioni non sono disponibili, ModuleSize sarà zero.
[in, optional] ModuleName
Specifica il nome del modulo semplificato utilizzato dal motore del debugger. Nella maggior parte dei casi, corrisponde al nome del file di immagine escluso l'estensione. Se queste informazioni non sono disponibili, ModuleName sarà NULL.
[in, optional] ImageName
Specifica il nome del file eseguibile-immagine del processo, che può includere il percorso. Se queste informazioni non sono disponibili, ImageName sarà NULL.
[in] CheckSum
Specifica il checksum dell'immagine eseguibile del processo. Se queste informazioni non sono disponibili, CheckSum sarà zero.
[in] TimeDateStamp
Specifica l'ora e la data del file eseguibile del processo. Se queste informazioni non sono disponibili, TimeDateStamp sarà zero.
[in] InitialThreadHandle
Specifica l'handle per il thread iniziale del processo. Questo parametro corrisponde al campo hThread nella struttura CREATE_PROCESS_DEBUG_INFO. Se queste informazioni non sono disponibili, InitialThreadHandle sarà NULL.
[in] ThreadDataOffset
Specifica un blocco di dati gestito dal sistema operativo per questo thread. I dati effettivi nel blocco sono specifici del sistema operativo. Se queste informazioni non sono disponibili, ThreadDataOffset sarà NULL.
[in] StartOffset
Specifica l'indirizzo iniziale del thread nello spazio indirizzi virtuale del processo. Se queste informazioni non sono disponibili, StartOffset sarà NULL.
Valore restituito
Questo metodo restituisce un valore DEBUG_STATUS_XXX , che indica il modo in cui l'esecuzione della destinazione deve continuare dopo l'elaborazione dell'evento da parte del motore. Per informazioni dettagliate sul modo in cui il motore gestisce questo valore, vedere Monitoraggio degli eventi.
Commenti
Questo metodo viene chiamato dal motore solo se il flag DEBUG_EVENT_CREATE_PROCESS è impostato nella maschera restituita da IDebugEventCallbacks::GetInterestMask.
Per altre informazioni sulla gestione degli eventi, vedere Monitoraggio degli eventi. Per informazioni sui thread, vedere Thread e processi.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | dbgeng.h (include Dbgeng.h) |