共用方式為


WdbgExts 記憶體存取

本主題提供如何使用 WdbgExts API 執行記憶體存取的簡要概觀。 如需偵錯工具引擎中記憶體存取的概觀,請參閱本檔偵錯工具引擎概觀一節中的記憶體

虛擬記憶體

可以使用 ReadMemory 函式讀取目標的虛擬記憶體,並使用 WriteMemory 函式寫入。 您可以使用 ReadPointerReadPtrWritePointer 函式來讀取和寫入目標記憶體中的指標。

若要在虛擬記憶體中搜尋位元組模式,請使用 SearchMemory 函式。

TranslateVirtualToPhysical 函式可用來將虛擬記憶體位址轉換成實體記憶體位址。

Disasm 函數可用來反組譯目標上的單一組合指令。

若要在使用實體位址延伸 (PAE) 時檢查低 4 GB 記憶體是否損毀,請使用 Ioctl 作業 IG_LOWMEM_CHECK

實體記憶體

實體記憶體只能在核心模式偵錯中直接存取。

您可以使用 ReadPhysicalReadPhysicalWithFlags 函式讀取目標上的實體記憶體,並使用 WritePhysicalWritePhysicalWithFlags 函式來寫入。

若要在實體記憶體中搜尋指定範圍內位置的指標,請使用 Ioctl 作業 IG_POINTER_SEARCH_PHYSICAL

其他資料空間

在核心模式偵錯中,除了主記憶體之外,還可以讀取和寫入各種資料空間。 可以存取下列資料空間:

Control-Space 記憶體
函式 ReadControlSpaceReadControlSpace64ReadTypedControlSpace32ReadTypedControlSpace64 會從控制空間讀取數據。 WriteControlSpace 函式會將資料寫入控制空間。

I/O 記憶體
函數 ReadIoSpace、ReadIoSpace64ReadIoSpace64ReadIoSpaceEx64 將從系統 I/O 記憶體和匯流排 I/O 記憶體讀取資料。 函式 WriteIoSpace、WriteIoSpace64WriteIoSpaceExWriteIoSpaceEx64 會將資料寫入系統 I/O 記憶體和匯流排 I/O 記憶體。

型號特定暫存器 (MSR)
函式 ReadMsrWriteMsr 讀取和寫入 MSR。

系統匯流排
Ioctl 作業使用IG_GET_BUS_DATAIG_SET_BUS_DATA 來讀取和寫入系統匯流排資料。

其他資訊

如需更強大的記憶體存取 API,請參閱本檔使用偵錯工具引擎 API 一節中的記憶體存取