Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de changer d’annuaire.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer d’annuaire.
Les pseudovariables sont des termes utilisés pour afficher certaines informations dans une fenêtre variable ou dans la boîte de dialogue QuickWatch . Vous pouvez entrer un pseudovariable de la même façon que vous entreriez une variable normale. Les pseudovariables ne sont pas des variables, mais ne correspondent pas aux noms de variables dans votre programme.
Example
Supposons que vous écrivez une application de code natif et que vous souhaitez voir le nombre de handles alloués dans votre application. Dans la fenêtre Espion , vous pouvez entrer le pseudovariable suivant dans la colonne Name , puis appuyer sur Retour pour l’évaluer :
$handles
Dans le code natif, vous pouvez utiliser les pseudovariables présentés dans le tableau suivant :
| Pseudovariable | Fonction |
|---|---|
$err |
Affiche la dernière valeur d’erreur définie avec la fonction SetLastError. La valeur affichée représente ce qui serait retourné par la fonction GetLastError. Permet $err,hr de voir la forme décodée de cette valeur. Par exemple, si la dernière erreur était 3, l’affichage $err,hr serait ERROR_PATH_NOT_FOUND : The system cannot find the path specified. |
$handles |
Affiche le nombre de handles alloués dans votre application. |
$vframe |
Affiche l’adresse du frame de pile actuel. |
$tid |
Affiche l’ID de thread du thread actuel. |
$env |
Affiche le bloc d’environnement dans la visionneuse de chaînes. |
$cmdline |
Affiche la chaîne de ligne de commande qui a lancé le programme. |
$pid |
Affiche l’ID de processus. |
$
registernameou @
registername |
Affiche le contenu du registre registername. Normalement, vous pouvez afficher le contenu de l’inscription uniquement en entrant le nom du registre. La seule fois où vous devez utiliser cette syntaxe, c’est quand le nom du registre surcharge un nom de variable. Si le nom du registre est identique à un nom de variable dans l’étendue actuelle, le débogueur interprète le nom comme un nom de variable. C’est quand $registername ou @registername est pratique. |
$clk |
Affiche l’heure dans les cycles d’horloge. |
$user |
Affiche une structure avec des informations de compte pour le compte exécutant l’application. Pour des raisons de sécurité, les informations de mot de passe ne s’affichent pas. |
$exceptionstack |
Affiche la trace de pile de l’exception Windows Runtime actuelle.
$ exceptionstack fonctionne uniquement dans les applications UWP.
$ exceptionstack n’est pas pris en charge pour les exceptions C++ et SEH |
$returnvalue |
Affiche la valeur de retour d’une méthode. |
En C#, vous pouvez utiliser les pseudovariables indiqués dans le tableau suivant :
| Pseudovariable | Fonction |
|---|---|
$exception |
Affiche des informations sur la dernière exception. Si aucune exception n’a eu lieu, l’évaluation $exception affiche un message d’erreur.Lorsque l’Assistant Exception est désactivé, $exception est automatiquement ajouté à la fenêtre Locals lorsqu’une exception se produit. |
$user |
Affiche une structure avec des informations de compte pour le compte exécutant l’application. Pour des raisons de sécurité, les informations de mot de passe ne s’affichent pas. |
$returnvalue |
Affiche la valeur de retour d’une méthode .NET. |
$threadSmallObjectHeapBytes |
Affiche le nombre total d’octets alloués dans le tas de petits objets par le thread actuel. (.NET 6+) |
$threadUserOldHeapBytes |
Affiche le nombre total d’octets alloués dans le tas utilisateur ancien par le thread actuel.
User Old Heap = Large Object Heap + Pinned Object Heap (.NET 6+) |
Dans Visual Basic, vous pouvez utiliser les pseudovariables présentés dans le tableau suivant :
| Pseudovariable | Fonction |
|---|---|
$exception |
Affiche des informations sur la dernière exception. Si aucune exception n’a eu lieu, l’évaluation $exception affiche un message d’erreur. |
$delete ou $$delete |
Supprime une variable implicite créée dans la fenêtre Immédiate. La syntaxe est $delete,variable ou$delete,variable. |
$objectids ou $listobjectids |
Affiche tous les ID d’objet actifs en tant qu’enfants de l’expression spécifiée. La syntaxe est $objectid, ou$listobjectids,. |
$
N# |
Affiche l’objet avec l’ID d’objet égal à N. |
$dynamic |
Affiche le nœud d’affichage dynamique spécial pour un objet qui implémente le IDynamicMetaObjectProvider. Interface. La syntaxe est $dynamic,. Cette fonctionnalité s’applique uniquement au code qui utilise .NET Framework version 4 ou ultérieure. |