共用方式為


.frame (設定本機內容)

.frame 命令會指定用來解譯局部變數或顯示目前本機內容的區域內容(範圍)。

.frame [/c] [/r] [FrameNumber] 
.frame [/c] [/r] = BasePtr [FrameIncrement] 
.frame [/c] [/r] = BasePtr StackPtr InstructionPtr 

參數

/c
將指定的框架設定為目前的本機覆寫內容。 此動作可讓使用者存取呼叫堆疊中任何函式的非volatile 緩存器。

/r
顯示有關指定之本機內容的緩存器和其他資訊。

FrameNumber
指定您想要其本機內容之框架的數目。 如果此參數為零,命令會指定目前的框架。 如果您省略此參數,此命令會顯示目前的本機內容。

BasePtr
指定堆疊追蹤的基底指標,以用來判斷框架,如果您在命令名稱 (.frame) 後面加入等號 (=)。 在以 x86 為基礎的處理器上,您會在 BasePtr 之後新增另一個自變數(其解譯為 FrameIncrement)或 BasePtr 之後再新增兩個自變數(這被解譯為 InstructionPtrStackPtr)。

FrameIncrement
(僅限 x86 處理器)

指定超過基底指標的額外框架數量。 例如,如果基底指標0x0012FF00是框架 3 的位址,則命令 .frame 12ff00 相當於 .frame 3,而 .frame 12ff00 2 相當於 .frame 5

StackPtr
(僅限 x86 處理器)指定用來判斷框架之堆疊追蹤的堆疊指標。 如果您省略 StackPtr 和 InstructionPtr,除錯程式會使用 esp 快取器指定的堆疊指標,以及 eip 快取器所指定的指令指標。

InstructionPtr
(僅限 x86 處理器)指定用來判斷框架之堆疊追蹤的指令指標。 如果您省略 StackPtr 和 InstructionPtr,除錯程式會使用 esp 快取器指定的堆疊指標,以及 eip 快取器所指定的指令指標。

Environment

項目 說明
模式 使用者模式、核心模式
目標 即時、損毀傾印
平台 全部

其他資訊

如需本機內容和其他內容設定的詳細資訊,請參閱 變更內容。 如需如何顯示局部變數和其他記憶體相關命令的詳細資訊,請參閱 讀取和寫入記憶體

備註

當應用程式執行時,局部變數的意義取決於程式計數器的位置,因為這類變數的範圍只會延伸到他們所定義的函式。 如果您不使用 .frame 命令,調試程式會使用目前函式的範圍(堆棧上的目前框架)作為 本機內容

若要變更本機內容,請使用 .frame 命令並指定您想要的框架編號。

框架編號是堆疊追蹤中堆疊框架的位置。 您可以使用 k (Display Stack Backtrace) 命令或 [呼叫] 視窗來檢視此堆疊追蹤。 第一行 (目前的框架) 是框架編號 0。 後續行代表框架數位 1、2、3 等等。

如果您使用 n 參數搭配 k 命令,k 命令會將框架編號與堆疊追蹤一起顯示。 這些框架編號一律以十六進位格式顯示。 另一方面, 除非您以 0x 之類的前置詞覆寫此設定,否則 .frame 命令會在預設基數中解譯其自變數。 若要變更預設的基數,請使用 n (Set Number Base) 命令。

您可以將本機內容設定為不同的堆疊框架,讓您能夠檢視新的局部變數資訊。 不過,可用的實際變數取決於正在執行的程序代碼。

如果發生任何應用程式執行,本機內容會重設為程式計數器的範圍。 如果快取器內容變更,本機內容會重設為頂端堆疊框架。