本主題提供如何使用 WdbgExts API 執行記憶體存取的簡要概觀。 如需偵錯工具引擎中記憶體存取的概觀,請參閱本檔偵錯工具引擎概觀一節中的記憶體。
虛擬記憶體
可以使用 ReadMemory 函式讀取目標的虛擬記憶體,並使用 WriteMemory 函式寫入。 您可以使用 ReadPointer、 ReadPtr 和 WritePointer 函式來讀取和寫入目標記憶體中的指標。
若要在虛擬記憶體中搜尋位元組模式,請使用 SearchMemory 函式。
TranslateVirtualToPhysical 函式可用來將虛擬記憶體位址轉換成實體記憶體位址。
Disasm 函數可用來反組譯目標上的單一組合指令。
若要在使用實體位址延伸 (PAE) 時檢查低 4 GB 記憶體是否損毀,請使用 Ioctl 作業 IG_LOWMEM_CHECK。
實體記憶體
實體記憶體只能在核心模式偵錯中直接存取。
您可以使用 ReadPhysical 和 ReadPhysicalWithFlags 函式讀取目標上的實體記憶體,並使用 WritePhysical 和 WritePhysicalWithFlags 函式來寫入。
若要在實體記憶體中搜尋指定範圍內位置的指標,請使用 Ioctl 作業 IG_POINTER_SEARCH_PHYSICAL。
其他資料空間
在核心模式偵錯中,除了主記憶體之外,還可以讀取和寫入各種資料空間。 可以存取下列資料空間:
Control-Space 記憶體
函式 ReadControlSpace、 ReadControlSpace64、 ReadTypedControlSpace32 和 ReadTypedControlSpace64 會從控制空間讀取數據。
WriteControlSpace 函式會將資料寫入控制空間。
I/O 記憶體
函數 ReadIoSpace、ReadIoSpace64、ReadIoSpace64、ReadIoSpaceEx64 將從系統 I/O 記憶體和匯流排 I/O 記憶體讀取資料。 函式 WriteIoSpace、WriteIoSpace64、WriteIoSpaceEx 和 WriteIoSpaceEx64 會將資料寫入系統 I/O 記憶體和匯流排 I/O 記憶體。
型號特定暫存器 (MSR)
函式 ReadMsr 和 WriteMsr 讀取和寫入 MSR。
系統匯流排
Ioctl 作業使用IG_GET_BUS_DATA 和 IG_SET_BUS_DATA 來讀取和寫入系統匯流排資料。
其他資訊
如需更強大的記憶體存取 API,請參閱本檔使用偵錯工具引擎 API 一節中的記憶體存取。