Share via


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)