Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Obtient l’interface ICorDebugProcess qui correspond à un module CLR (Common Language Runtime) chargé dans le processus.
Syntaxe
HRESULT OpenVirtualProcess(
[in] ULONG64 moduleBaseAddress,
[in] IUnknown * pDataTarget,
[in] ICLRDebuggingLibraryProvider * pLibraryProvider,
[in] CLR_DEBUGGING_VERSION * pMaxDebuggerSupportedVersion,
[in] REFIID riidProcess,
[out, iid_is(riidProcess)] IUnknown ** ppProcess,
[in, out] CLR_DEBUGGING_VERSION * pVersion,
[out] CLR_DEBUGGING_PROCESS_FLAGS * pdwFlags);
Paramètres
moduleBaseAddress [in] Adresse de base d’un module dans le processus cible.
COR_E_NOT_CLR est retourné si le module spécifié n’est pas un module CLR.
pDataTarget [in] Abstraction de la cible de données qui permet au débogueur managé d’inspecter l’état du processus. Le débogueur doit implémenter l’interface ICorDebugDataTarget . Vous devez implémenter l’interface ICLRDebuggingLibraryProvider pour prendre en charge les scénarios où le CLR en cours de débogage n’est pas installé localement sur l’ordinateur.
pLibraryProvider [in] Interface de rappel du fournisseur de bibliothèque qui permet aux bibliothèques de débogage spécifiques à la version de se trouver et de les charger à la demande. Ce paramètre est obligatoire uniquement si ppProcess ou pFlags n’est pas null.
pMaxDebuggerSupportedVersion [in] Version la plus élevée du CLR que ce débogueur peut déboguer. Vous devez spécifier les versions principales, mineures et de build de la dernière version clR prise en charge par ce débogueur et définir le numéro de révision sur 65535 pour prendre en charge les futures versions de maintenance CLR sur place.
riidProcess [in] ID de l’interface ICorDebugProcess à récupérer. Actuellement, les seules valeurs acceptées sont IID_CORDEBUGPROCESS3, IID_CORDEBUGPROCESS2et IID_CORDEBUGPROCESS.
ppProcess [out] Pointeur vers l’interface COM identifiée par riidProcess.
pVersion [in, out] Version du CLR. Lors de l’entrée, cette valeur peut être null. Il peut également pointer vers une structure CLR_DEBUGGING_VERSION , auquel cas le champ de wStructVersion la structure doit être initialisé à 0 (zéro).
En sortie, la structure retournée CLR_DEBUGGING_VERSION est renseignée avec les informations de version du CLR.
pdwFlags [out] Indicateurs d’information sur le runtime spécifié. Pour obtenir une description des indicateurs, consultez CLR_DEBUGGING_PROCESS_FLAGS.
Valeur de retour
Cette méthode retourne les HRESULT spécifiques suivantes ainsi que les erreurs HRESULT qui indiquent une défaillance de méthode.
| HRESULT | Descriptif |
|---|---|
| S_OK | La méthode s’est terminée avec succès. |
| E_POINTER |
pDataTarget a la valeur null. |
| CORDBG_E_LIBRARY_PROVIDER_ERROR | Le rappel ICLRDebuggingLibraryProvider retourne une erreur ou ne fournit pas de handle valide. |
| CORDBG_E_MISSING_DATA_TARGET_INTERFACE |
pDataTarget n’implémente pas les interfaces cibles de données requises pour cette version du runtime. |
| CORDBG_E_NOT_CLR | Le module indiqué n’est pas un module CLR. Ce HRESULT est également retourné lorsqu’un module CLR ne peut pas être détecté, car la mémoire a été endommagée, que le module n’est pas disponible ou que la version CLR est ultérieure à la version shim. |
| CORDBG_E_UNSUPPORTED_DEBUGGING_MODEL | Cette version du runtime ne prend pas en charge ce modèle de débogage. Actuellement, le modèle de débogage n’est pas pris en charge par les versions clR avant .NET Framework 4. Le pwszVersion paramètre de sortie est toujours défini sur la valeur correcte après cette erreur. |
| CORDBG_E_UNSUPPORTED_FORWARD_COMPAT | La version du CLR est supérieure à la version prise en charge par ce débogueur. Le pwszVersion paramètre de sortie est toujours défini sur la valeur correcte après cette erreur. |
| E_NO_INTERFACE | L’interface riidProcess n’est pas disponible. |
| CORDBG_E_UNSUPPORTED_VERSION_STRUCT | La CLR_DEBUGGING_VERSION structure n’a pas de valeur reconnue pour wStructVersion. La seule valeur acceptée à ce stade est 0. |
Exceptions
Remarques
Spécifications
Plateformes : Consultez Configuration requise.
En-tête: CorDebug.idl, CorDebug.h
Bibliothèque : CorGuids.lib
Versions du .NET Framework : Disponible depuis 4
Versions de .NET : Disponible depuis .NET Core 2.1