Pseudovariablen
Dieses Thema gilt für folgende Anwendungsbereiche:
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium und Ultimate |
Pseudovariablen sind Begriffe, mit denen bestimmte Informationen in einem Variablenfenster oder im Dialogfeld Schnellüberwachung angezeigt werden. Eine Pseudovariable geben Sie genauso wie eine normale Variable ein. Pseudovariablen sind jedoch keine Variablen und ihnen entsprechen keine Variablennamen im Programm.
Beispiel
Angenommen, Sie schreiben eine Anwendung im systemeigenen Code, und Sie möchten sehen, wie viele Handles der Anwendung zugeordnet sind. Im Fenster Überwachen können Sie in der Spalte Name die folgende Pseudovariable eingeben und zur Auswertung anschließend die EINGABETASTE drücken:
$handles
Für systemeigenen Code können Sie die in dieser Tabelle aufgeführten Pseudovariablen verwenden:
Pseudovariable |
Funktion |
---|---|
$handles |
Zeigt die Anzahl der Handles an, die der Anwendung zugeordnet sind. |
$vframe |
Zeigt die Adresse des aktuellen Stapelrahmens an. |
$TID |
Zeigt die Thread-ID für den aktuellen Thread an. |
$ENV |
Zeigt die Größe des Umgebungsblocks an. Der Versuch, die Größe des Umgebungsblocks (in der Spalte Wert) zu bearbeiten, führt dazu, dass beim Drücken der EINGABETASTE der Inhalt des Umgebungsblocks im Fenster Ausgabe angezeigt wird. Die Größe des Umgebungsblocks ändert sich dadurch aber nicht. |
$CMDLINE |
Zeigt die Größe der Befehlszeilenzeichenfolge an, mit der das Programm gestartet wurde. Beim Versuch, die Größe des Umgebungsblocks in der Spalte Wert zu bearbeiten, wird nach Drücken der EINGABETASTE die Befehlszeilenzeichenfolge im Fenster Ausgabe angezeigt. Die Größe der Befehlszeilenzeichenfolge ändert sich dadurch aber nicht. |
$Registername oder @Registername |
Zeigt den Inhalt des Registers Registername an. Um den Registerinhalt anzuzeigen, geben Sie normalerweise einfach den Registernamen ein. Nur beim Überladen eines Variablennamens durch einen Registernamen müssen Sie diese Syntax verwenden. Wenn im aktuellen Gültigkeitsbereich Registername und Variablenname gleich sind, interpretiert der Debugger den Namen als Variablenname. In diesem Fall bietet sich $Registername oder @Registername an. |
$clk |
Zeigt die Zeit in Taktzyklen an. |
$user |
Zeigt eine Struktur mit Kontoinformationen für das Konto an, das die Anwendung ausführt. Aus Sicherheitsgründen werden die Kennwortinformationen nicht angezeigt. |
Die in dieser Tabelle angezeigten Pseudovariablen können Sie in C# und Visual Basic verwenden:
Pseudovariable |
Funktion |
---|---|
$exception |
Zeigt Informationen über die letzte Ausnahme an. Wenn keine Ausnahme aufgetreten ist, wird beim Auswerten von $exception eine Fehlermeldung angezeigt. In Visual C# wird bei deaktiviertem Ausnahmen-Assistenten dem Fenster Lokal automatisch $exception hinzugefügt, wenn eine Ausnahme auftritt. |
$user |
Zeigt eine Struktur mit Kontoinformationen für das Konto an, das die Anwendung ausführt. Aus Sicherheitsgründen werden die Kennwortinformationen nicht angezeigt. |
Die in dieser Tabelle angezeigten Pseudovariablen können Sie in Visual Basic verwenden:
Pseudovariable |
Funktion |
---|---|
$delete oder $$delete |
Löscht eine implizite Variable, die im Direktfenster erstellt wurde. Die Syntax ist $delete, Variable oder $delete, Variable. |
$objectids oder $listobjectids |
Zeigt alle aktiven Objekt-IDs als untergeordnete Elemente des angegebenen Ausdrucks an. Die Syntax ist $objectid, Ausdruck oder $listobjectids, Ausdruck. |
$N# |
Zeigt das Objekt mit Objekt-ID gleich N an. |
$dynamic |
Zeigt den besonderen Knoten dynamische Ansicht für ein Objekt an, das IDynamicMetaObjectProvider implementiert. Schnittstelle Die Syntax ist $dynamic, Objekt. Diese Funktion gilt nur für Code, der .NET Framework, Version 4, verwendet. Weitere Informationen finden Sie unter Dynamische Ansicht. |
Siehe auch
Aufgaben
Gewusst wie: Überwachen eines Ausdrucks im Debugger