。Printf

.printf Token 的行為就像 C 中的printf語句一樣。

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

語法元素

/D
指定格式字串包含 偵錯工具標記語言 (DML) 。

選項
(WinDbg 僅) 指定 WinDbg 應該解譯 FormatString 為的文字訊息類型。 WinDbg 會指派每種類型的偵錯工具命令視窗訊息背景和文字色彩;選擇其中一個選項會導致訊息以適當的色彩顯示。 預設值是將文字顯示為一般層級的訊息。

可用選項如下。

選項 訊息類型 [選項] 對話方塊中的色彩標題

/Od

debuggee

偵錯層級命令視窗

/Od

debuggee 提示

偵錯提示層級命令視窗

/Oe

error

錯誤層級命令視窗

/on

正常

一般層級命令視窗

/op

Prompt

提示層級命令視窗

/oP

提示暫存器

提示暫存器層級命令視窗

/作業系統

符號

符號訊息層級命令視窗

/Ov

verbose

詳細資訊層級命令視窗

/ow

warning

警告層級命令視窗

FormatString
指定格式字串,如 printf所示。 一般而言,轉換字元的運作方式與 C 完全相同。如果是浮點轉換字元,除非使用 l 修飾詞,否則 64 位引數會解譯為 32 位浮點數。

您可以新增 「I64」 修飾詞,以指出值應該解譯為 64 位。 例如,「%I64x」 可用來列印 64 位十六進位數位。

支援 %p 轉換字元,但它代表目標虛擬位址空間中的指標。 它不得有任何修飾詞,而且會使用偵錯工具的內部位址格式。 除了標準 printf 樣式格式規範之外,還支援下列其他轉換字元。

字元 引數類型 引數 列印的文字

%p

ULONG64

目標虛擬位址空間中的指標。

指標的值。

%N

視主機的架構而定,DWORD_PTR (32 或 64 位)

主機虛擬位址空間中的指標。

指標的值。 (這相當於標準 C %p 字元。)

%ma

ULONG64

目標虛擬位址空間中 Null 終止的 ASCII 字串位址。

指定的字串。

%mu

ULONG64

目標虛擬位址空間中 Null 終止的 Unicode 字串位址。

指定的字串。

%msa

ULONG64

目標虛擬位址空間中ANSI_STRING結構的位址。

指定的字串。

%msu

ULONG64

目標虛擬位址空間中UNICODE_STRING結構的位址。

指定的字串。

%y

ULONG64

目標虛擬位址空間中的偵錯工具符號位址。

字串,如果有任何) ,則為包含指定符號的名稱 (和位移。

%ly

ULONG64

目標虛擬位址空間中的偵錯工具符號位址。

字串,包含指定符號的名稱 (和位移,如果有任何) ,以及任何可用的源行資訊。

參數
指定格式字串的引數,如 printf所示。 指定的引數數目應該符合 FormatString中的轉換字元數目。 每個引數都是預設運算式評估工具所評估的運算式, (MASM 或 C++) 。 如需詳細資訊,請參閱 數值運算式語法

其他資訊

如需其他控制流程權杖及其在偵錯工具命令程式中使用的資訊,請參閱 使用偵錯工具命令程式

備註

您可以使用 Options 參數選擇的色彩設定預設會設定為白色背景上的黑色文字。 若要充分利用這些選項,您必須先使用 檢視 | 開啟 [選項] 對話方塊的選項,並變更偵錯工具命令視窗訊息的色彩設定。

下列範例示範如何在格式字串中包含 DML 標記。

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

命令瀏覽器視窗中 DML 連結的螢幕擷取畫面。

上圖中顯示的輸出具有連結,您可以按一下以執行標記中指定的 <link> 命令。 下圖顯示按一下連結的結果。

命令瀏覽器視窗中 DML 輸出的螢幕擷取畫面。

如需 DML 標籤的相關資訊,請參閱 Windows 偵錯工具的安裝資料夾中 dml.doc。