Condividi tramite


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 verrà 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 verrà NULL.

[in] BaseOffset

Specifica l'indirizzo di base dell'immagine eseguibile del processo nello spazio di indirizzi di memoria della destinazione. Se queste informazioni non sono disponibili, BaseOffset verrà 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 verrà NULL.

[in, optional] ImageName

Specifica il nome del file di immagine eseguibile del processo, che può includere il percorso. Se queste informazioni non sono disponibili, ImageName verrà 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 di immagine 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 verrà NULL.

Valore restituito

Questo metodo restituisce un valore DEBUG_STATUS_XXX, che indica il modo in cui l'esecuzione della destinazione deve procedere dopo l'elaborazione dell'evento da parte del motore. Per informazioni dettagliate sul modo in cui il motore gestisce questo valore, vedere Monitoraggio eventi.

Osservazioni:

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 eventi. Per informazioni sui thread, vedere Thread e processi.

Requisiti

Requisito Valore
Piattaforma di destinazione Schermo
intestazione dbgeng.h (include Dbgeng.h)