共用方式為


PWINDBG_IOCTL_ROUTINE回呼函式 (wdbgexts.h)

PWINDBG_IOCTL_ROUTINEIoctl) 函式會執行各種不同的作業。 其大部分功能都反映了 wdbgexts.h 中其他函式的功能。

語法

PWINDBG_IOCTL_ROUTINE PwindbgIoctlRoutine;

ULONG PwindbgIoctlRoutine(
  USHORT IoctlType,
  PVOID lpvData,
  ULONG cbSize
)
{...}

參數

IoctlType

指定要執行的 Ioctl 作業。 如需可能 IoctlType 值的清單,請參閱一節。

lpvData

指向數據結構的位址。 所需的結構類型取決於 IoctlType的值。

cbSize

指定 lpvData 指向的結構大小。

傳回值

傳回值的意義取決於IoctlType 。 如需傳回值的意義,請參閱對應 Ioctl 作業的頁面。

言論

Ioctl 函式是 WdbgExts 延伸模組所提供之許多功能的進入點。 wdbgexts.h 中的許多其他函式只是呼叫 Ioctl的包裝函式。

下表列出可能 IoctlType 值。 如果 IoctlType 對應至另一個函式,則會提供該函式;否則,會提供描述 Ioctl 作業的頁面連結。

IoctlType 常數 對等函式 lpData 結構
IG_KD_CONTEXT

GetKdContext

IG_READ_CONTROL_SPACE

ReadControlSpace

ReadControlSpace64

IG_WRITE_CONTROL_SPACE WriteControlSpace
IG_READ_IO_SPACE

ReadIoSpace

ReadIoSpace64

IG_WRITE_IO_SPACE

WriteIoSpace

WriteIoSpace64

IG_READ_PHYSICAL

ReadPhysical

IG_WRITE_PHYSICAL

WritePhysical

IG_READ_IO_SPACE_EX

ReadIoSpaceEx

ReadIoSpaceEx64

IG_WRITE_IO_SPACE_EX

WriteIoSpaceEx

WriteIoSpaceEx64

IG_SET_THREAD

SetThreadForOperation

SetThreadForOperation64

IG_READ_MSR

ReadMsr

IG_WRITE_MSR

WriteMsr

IG_GET_DEBUGGER_DATA

GetDebuggerData

IG_GET_KERNEL_VERSION

DBGKD_GET_VERSION64

IG_RELOAD_SYMBOLS ReloadSymbols
IG_GET_SET_SYMPATH

GetSetSympath

IG_GET_EXCEPTION_RECORD
IG_IS_PTR64 IsPtr64

IG_GET_BUS_DATA

GETSETBUSDATA

IG_SET_BUS_DATA

GETSETBUSDATA

IG_DUMP_SYMBOL_INFO

SYM_DUMP_PARAM

IG_LOWMEM_CHECK

請參閱。
IG_SEARCH_MEMORY SearchMemory
IG_GET_CURRENT_THREAD GetCurrentThreadAddr
IG_GET_CURRENT_PROCESS GetCurrentProcessAddr
IG_GET_TYPE_SIZE GetTypeSize
IG_GET_CURRENT_PROCESS_HANDLE GetCurrentProcessHandle
IG_GET_INPUT_LINE GetInputLine
IG_GET_EXPRESSION_EX GetExpressionEx
IG_TRANSLATE_VIRTUAL_TO_PHYSICAL TranslateVirtualToPhysical
IG_GET_CACHE_SIZE GetDebuggerCacheSize
IG_READ_PHYSICAL_WITH_FLAGS ReadPhysicalWithFlags
IG_WRITE_PHYSICAL_WITH_FLAGS WritePhysicalWithFlags

IG_POINTER_SEARCH_PHYSICAL

POINTER_SEARCH_PHYSICAL

IG_GET_THREAD_OS_INFO

WDBGEXTS_THREAD_OS_INFO

IG_GET_CLR_DATA_INTERFACE
IG_GET_TEB_ADDRESS GetTebAddress
IG_GET_PEB_ADDRESS GetPebAddress
 

IG_LOWMEM_CHECK Ioctl 作業會在記憶體不足 4 GB 時尋找記憶體損毀。

Ioctl 作業不會採用任何參數,lpvDatacbSizeOfContext 參數應該分別設定為 NULL 和零。

傳回值

如果找不到損毀的記憶體,則傳回值會 TRUE;否則,它會 FALSE

這項作業只能在內核模式偵錯中使用,而且只有在使用 /nolowmem 選項啟動核心時才有用。

當核心以 /nolowmem 選項啟動時,核心、驅動程式、作系統和應用程式會以超過 4 GB 的記憶體載入,而低 4 GB 的記憶體會填入唯一模式。 IG_LOWMEM_CHECK Ioctl 作業會檢查此模式是否有損毀。

這可用來確認驅動程式在使用長度大於32位的實體位址時正常運作。 請參閱 Windows 驅動程式套件中的 實體位址延伸模組 (PAE)/pae/nolowmem

要求

要求 價值
目標平臺 桌面
標頭 wdbgexts.h (include Wdbgexts.h, Dbgeng.h)