Méthode IDebugEventCallbacksWide ::CreateProcess (dbgeng.h)
La méthode de rappel CreateProcess est appelée par le moteur lorsqu’un événement de débogage create-process se produit dans la cible.
Syntaxe
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
);
Paramètres
[in] ImageFileHandle
Spécifie le handle du fichier image du processus. Si ces informations ne sont pas disponibles, ImageFileHandle aura la valeur NULL.
[in] Handle
Spécifie le handle du processus. Ce paramètre correspond au champ hProcess dans la structure CREATE_PROCESS_DEBUG_INFO. Si ces informations ne sont pas disponibles, ImageFileHandle aura la valeur NULL.
[in] BaseOffset
Spécifie l’adresse de base de l’image exécutable du processus dans l’espace d’adressage mémoire de la cible. Si ces informations ne sont pas disponibles, BaseOffset a la valeur NULL.
[in] ModuleSize
Spécifie la taille de l’image exécutable du processus en octets. Si ces informations ne sont pas disponibles, ModuleSize est égal à zéro.
[in, optional] ModuleName
Spécifie le nom de module simplifié utilisé par le moteur de débogueur. Dans la plupart des cas, cela correspond au nom du fichier image à l’exclusion de l’extension. Si ces informations ne sont pas disponibles, ModuleName aura la valeur NULL.
[in, optional] ImageName
Spécifie le nom du fichier exécutable-image du processus, qui peut inclure le chemin d’accès. Si ces informations ne sont pas disponibles, ImageName aura la valeur NULL.
[in] CheckSum
Spécifie la somme de contrôle de l’image exécutable du processus. Si ces informations ne sont pas disponibles, CheckSum est égal à zéro.
[in] TimeDateStamp
Spécifie l’horodatage et la date du fichier image exécutable du processus. Si ces informations ne sont pas disponibles, TimeDateStamp est égal à zéro.
[in] InitialThreadHandle
Spécifie le handle du thread initial du processus. Ce paramètre correspond au champ hThread dans la structure CREATE_PROCESS_DEBUG_INFO. Si ces informations ne sont pas disponibles, InitialThreadHandle est NULL.
[in] ThreadDataOffset
Spécifie un bloc de données que le système d’exploitation gère pour ce thread. Les données réelles du bloc sont spécifiques au système d’exploitation. Si ces informations ne sont pas disponibles, ThreadDataOffset aura la valeur NULL.
[in] StartOffset
Spécifie l’adresse de départ du thread dans l’espace d’adressage virtuel du processus. Si ces informations ne sont pas disponibles, StartOffset a la valeur NULL.
Valeur retournée
Cette méthode retourne une valeur DEBUG_STATUS_XXX , qui indique comment l’exécution de la cible doit se poursuivre une fois que le moteur a traite cet événement. Pour plus d’informations sur la façon dont le moteur traite cette valeur, consultez Surveillance des événements.
Remarques
Cette méthode n’est appelée par le moteur que si l’indicateur DEBUG_EVENT_CREATE_PROCESS est défini dans le masque retourné par IDebugEventCallbacksWide ::GetInterestMask.
Pour plus d’informations sur la gestion des événements, consultez Surveillance des événements. Pour plus d’informations sur les threads, consultez Threads et processus.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | dbgeng.h (inclure Dbgeng.h) |