Note
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.
Aperçu
Les objets débogueur natifs représentent différentes constructions et comportements de l’environnement du débogueur. Les exemples d’objets débogueur incluent les éléments suivants.
- session
- Threads / Thread
- Processus / Processus
- Cadres de pile / Cadre de pile
- Variables locales
- Modules / Module
- Utilité
- État
- Paramètres
Vous pouvez utiliser la commande dx et LINQ pour interagir avec les objets du débogueur. Pour plus d’informations, consultez dx (Display Debugger Object Model Expression) et Using LINQ With the debugger objects.
Vous pouvez également utiliser des objets de débogueur à l’aide de JavaScript. Pour en savoir plus sur cela, voir les objets Débogueur Natifs dans les extensions JavaScript.
Cette rubrique explique comment créer des visualiseurs NatVis personnalisés pour afficher des objets de débogueur.
Ressources de développement NatVis
Reportez-vous à ces ressources pour obtenir des informations générales sur l’utilisation de NatVis.
Créer des vues personnalisées d’objets natifs
Exemple d’objet NatVis personnalisé
Créez une application C++ simple qui a une instance de la classe CDog.
class CDog
{
public:
CDog(){m_age = 8; m_weight = 30;}
long m_age;
long m_weight;
};
int main()
{
CDog MyDog;
printf_s("%d, %d\n", MyDog.m_age, MyDog.m_weight);
return 0;
}
Créez un fichier nommé Dog.natvis qui contient ce code XML :
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="https://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<Type Name="CDog">
<DisplayString>{{Age = {m_age} years. Weight = {m_weight} pounds.}}</DisplayString>
</Type>
</AutoVisualizer>
Copiez Dog.natvis dans le dossier Visualiseurs dans votre répertoire d’installation pour Les outils de débogage pour Windows. Par exemple:
C :\Program Files\Debugging Tools for Windows (x64)\Visualiseurs
Exécutez votre programme et arrêtez-le à la fonction principale. Effectuez une étape pour que la variable MyDog soit initialisée. Affichez MyDog avec l’aide de ?? et à nouveau avec l’aide de dx.
0:000> ??MyDog
class CDog
+0x000 m_age : 0n8
+0x004 m_weight : 0n30
0:000> *
0:000> dx -r1 MyDog
.....
MyDog : {Age = 8 years. Weight = 30 pounds.} [Type: CDog]
Voir aussi
dx (afficher l’expression de modèle objet du débogueur)