.Printf

Le jeton .printf se comporte comme l’instruction printf en C.

.printf [/D] [Option] "FormatString" [, Argument , ...] 

Éléments de syntaxe

/D
Spécifie que la chaîne de format contient le langage DML ( Debugger Markup Language ).

Option
(WinDbg uniquement) Spécifie le type de message texte que WinDbg doit interpréter comme FormatString. WinDbg attribue à chaque type de message de la fenêtre Debugger Command une couleur d’arrière-plan et de texte ; Le choix de l’une de ces options entraîne l’affichage du message dans les couleurs appropriées. La valeur par défaut consiste à afficher le texte sous la forme d’un message de niveau normal.

Les options suivantes sont disponibles.

Option Type de message Titre des couleurs dans la boîte de dialogue Options

/od

débogueur

Fenêtre de commande Debuggee level

/Od

invite de débogage

Fenêtre de commande au niveau de l’invite de débogage

/Oe

error

Fenêtre de commande niveau d’erreur

/on

normal

Fenêtre de commande de niveau normal

/op

prompt

Fenêtre de commande au niveau de l’invite

/Op

inscriptions d’invite

Fenêtre de commande d’invite au niveau des inscriptions

/os

symboles

Fenêtre de commande au niveau du message de symbole

/Ov

verbose

Fenêtre de commande de niveau détaillé

/Ow

warning

Fenêtre de commande de niveau d’avertissement

FormatString
Spécifie la chaîne de format, comme dans printf. En général, les caractères de conversion fonctionnent exactement comme dans C. Pour les caractères de conversion à virgule flottante, l’argument 64 bits est interprété comme un nombre à virgule flottante 32 bits, sauf si le modificateur l est utilisé.

Le modificateur « I64 » peut être ajouté pour indiquer qu’une valeur doit être interprétée comme 64 bits. Par instance, « %I64x » peut être utilisé pour imprimer un nombre hexadécimal 64 bits.

Le caractère de conversion %p est pris en charge, mais il représente un pointeur dans l’espace d’adressage virtuel de la cible. Il ne doit pas avoir de modificateurs et il utilise la mise en forme d’adresse interne du débogueur. En plus des spécificateurs de format printf standard, les caractères de conversion supplémentaires suivants sont pris en charge.

Caractère Type d’argument Argument Texte imprimé

%p

ULONG64

Pointeur dans l’espace d’adressage virtuel de la cible.

Valeur du pointeur.

%N

DWORD_PTR (32 ou 64 bits, selon l’architecture de l’hôte)

Pointeur dans l’espace d’adressage virtuel de l’hôte.

Valeur du pointeur. (Cela équivaut au caractère C %p standard.)

%ma

ULONG64

Adresse d’une chaîne ASCII terminée par NULL dans l’espace d’adressage virtuel de la cible.

Chaîne spécifiée.

%mu

ULONG64

Adresse d’une chaîne Unicode terminée par NULL dans l’espace d’adressage virtuel de la cible.

Chaîne spécifiée.

%msa

ULONG64

Adresse d’une structure de ANSI_STRING dans l’espace d’adressage virtuel de la cible.

Chaîne spécifiée.

%msu

ULONG64

Adresse d’une structure de UNICODE_STRING dans l’espace d’adressage virtuel de la cible.

Chaîne spécifiée.

%y

ULONG64

Adresse d’un symbole de débogueur dans l’espace d’adressage virtuel de la cible.

Chaîne contenant le nom du symbole spécifié (et le déplacement, le cas échéant).

%ly

ULONG64

Adresse d’un symbole de débogueur dans l’espace d’adressage virtuel de la cible.

Chaîne contenant le nom du symbole spécifié (et le déplacement, le cas échéant), ainsi que les informations de ligne source disponibles.

Arguments
Spécifie les arguments de la chaîne de format, comme dans printf. Le nombre d’arguments spécifiés doit correspondre au nombre de caractères de conversion dans FormatString. Chaque argument est une expression qui sera évaluée par l’évaluateur d’expression par défaut (MASM ou C++). Pour plus d’informations, consultez Syntaxe des expressions numériques.

Informations supplémentaires

Pour plus d’informations sur d’autres jetons de flux de contrôle et leur utilisation dans les programmes de commande du débogueur, consultez Utilisation de programmes de commandes de débogueur.

Remarques

Les paramètres de couleur que vous pouvez choisir à l’aide du paramètre Options sont par défaut tous définis sur le texte noir sur un arrière-plan blanc. Pour tirer le meilleur profit de ces options, vous devez d’abord utiliser Affichage | Options permettant d’ouvrir la boîte de dialogue Options et de modifier les paramètres de couleur des messages de la fenêtre Commande du débogueur.

L’exemple suivant montre comment inclure une balise DML dans la chaîne de format.

.printf /D "Click <link cmd=\".chain /D\">here</link> to see extensions DLLs."

Capture d’écran du lien DML dans la fenêtre du navigateur de commandes.

La sortie illustrée dans l’image précédente comporte un lien sur lequel vous pouvez cliquer pour exécuter la commande spécifiée dans la <link> balise. L’image suivante montre le résultat d’un clic sur le lien.

Capture d’écran de la sortie DML dans la fenêtre du navigateur de commandes.

Pour plus d’informations sur les balises DML, consultez dml.doc dans le dossier d’installation des outils de débogage pour Windows.