Freigeben über


PWINDBG_IOCTL_ROUTINE Rückruffunktion (wdbgexts.h)

Die funktion PWINDBG_IOCTL_ROUTINE (Ioctl) führt eine Vielzahl verschiedener Vorgänge aus. Ein Großteil der Funktionalität spiegelt die Funktionalität anderer Funktionen in wdbgexts.h.

Syntax

PWINDBG_IOCTL_ROUTINE PwindbgIoctlRoutine;

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

Parameter

IoctlType

Gibt an, welcher Ioctl-Vorgang ausgeführt werden soll. Eine Liste der möglichen IoctlType-Werte finden Sie im Abschnitt "Hinweise".

lpvData

Verweist auf die Adresse einer Datenstruktur. Der erforderliche Strukturtyp hängt vom Wert von IoctlType ab.

cbSize

Gibt die Größe der Struktur an, auf die lpvData verweist.

Rückgabewert

Die Bedeutung des Rückgabewerts hängt von IoctlType ab. Die Bedeutung des Rückgabewerts finden Sie auf der Seite für den entsprechenden Ioctl-Vorgang .

Hinweise

Die Ioctl-Funktion ist der Einstiegspunkt für viele der Funktionen, die für WdbgExts-Erweiterungen bereitgestellt werden. Viele der anderen Funktionen in wdbgexts.h sind einfach Wrapper für Aufrufe von Ioctl.

In der folgenden Tabelle sind die möglichen IoctlType-Werte aufgeführt. Wenn der IoctlType einer anderen Funktion entspricht, wird diese Funktion bereitgestellt. Andernfalls wird ein Link zu der Seite bereitgestellt, die den Ioctl-Vorgang beschreibt.

IoctlType-Konstante Äquivalente Funktion lpData-Struktur
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

Siehe Hinweise.
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
 

Der IG_LOWMEM_CHECK Ioctl-Vorgang sucht nach Speicherbeschädigungen in den niedrigen 4 GB Arbeitsspeicher.

Dieser Ioctl-Vorgang nimmt keine Parameter an, und die Parameter lpvData und cbSizeOfContext sollten auf NULL bzw. null festgelegt werden.

Rückgabewert

Wenn kein beschädigter Arbeitsspeicher gefunden wurde, lautet der Rückgabewert TRUE. Andernfalls ist es FALSE.

Dieser Vorgang ist nur im Kernelmodus verfügbar und nur nützlich, wenn der Kernel mit der Option /nolowmem gestartet wurde.

Wenn der Kernel mit der Option /nolowmem gestartet wird, werden Kernel, Treiber, Betriebssystem und Anwendungen in Arbeitsspeicher über 4 GB geladen, während die geringen 4 GB Arbeitsspeicher mit einem eindeutigen Muster gefüllt sind. Der IG_LOWMEM_CHECK Ioctl-Vorgang überprüft dieses Muster auf Beschädigung.

Dies kann verwendet werden, um zu überprüfen, ob ein Treiber ordnungsgemäß funktioniert, wenn physische Adressen mit einer Länge von mehr als 32 Bits verwendet werden. Weitere Informationen finden Sie unter Physical Address Extension (PAE),/pae und /nolowmem im Windows Driver Kit.

Anforderungen

Anforderung Wert
Zielplattform Desktop
Kopfzeile wdbgexts.h (einschließlich Wdbgexts.h, Dbgeng.h)