IDebugDataSpaces3::ReadDebuggerData-Methode (dbgeng.h)
Die ReadDebuggerData--Methode gibt Informationen zum Ziel zurück, das das Debuggermodul während der aktuellen Sitzung abgefragt oder bestimmt hat. Die verfügbaren Informationen umfassen die Speicherorte bestimmter Zielkernkernspeicherorte, bestimmte Statuswerte und eine Reihe anderer Dinge.
Syntax
HRESULT ReadDebuggerData(
[in] ULONG Index,
[out] PVOID Buffer,
[in] ULONG BufferSize,
[out, optional] PULONG DataSize
);
Parameter
[in] Index
Gibt den Index der abzurufenden Daten an. Die folgenden Werte sind gültig:
Wert | Rückgabetyp | Beschreibung |
---|---|---|
DEBUG_DATA_KernBase | ULONG64 | Gibt die Basisadresse des Kernelimages zurück. |
DEBUG_DATA_BreakpointWithStatusAddr | ULONG64 | Gibt die Adresse der Kernelfunktion BreakpointWithStatusInstructionzurück. |
DEBUG_DATA_SavedContextAddr | ULONG64 | Gibt die Adresse des gespeicherten Kontextdatensatzes während einer Fehlerüberprüfung zurück. Es ist nur gültig, nachdem ein Fehlercheck aufgetreten ist. |
DEBUG_DATA_KiCallUserModeAddr | ULONG64 | Gibt die Adresse der Kernelfunktion KiCallUserModezurück. |
DEBUG_DATA_KeUserCallbackDispatcherAddr | ULONG64 | Gibt die Kernelvariable KeUserCallbackDispatcherzurück. |
DEBUG_DATA_PsLoadedModuleListAddr | ULONG64 | Gibt die Adresse der Kernelvariable PsLoadedModuleListzurück. |
DEBUG_DATA_PsActiveProcessHeadAddr | ULONG64 | Gibt die Adresse der Kernelvariable PsActiveProcessHeadzurück. |
DEBUG_DATA_PspCidTableAddr | ULONG64 | Gibt die Adresse der Kernelvariable PspCidTable-zurück. |
DEBUG_DATA_ExpSystemResourcesListAddr | ULONG64 | Gibt die Adresse der Kernelvariable ExpSystemResourcesList-zurück. |
DEBUG_DATA_ExpPagedPoolDescriptorAddr | ULONG64 | Gibt die Adresse der Kernelvariable ExpPagedPoolDescriptorzurück. |
DEBUG_DATA_ExpNumberOfPagedPoolsAddr | ULONG64 | Gibt die Adresse der Kernelvariable ExpNumberOfPagedPoolszurück. |
DEBUG_DATA_KeTimeIncrementAddr | ULONG64 | Gibt die Adresse der Kernelvariable KeTimeIncrementzurück. |
DEBUG_DATA_KeBugCheckCallbackListHeadAddr | ULONG64 | Gibt die Adresse der Kernelvariable KeBugCheckCallbackListHeadzurück. |
DEBUG_DATA_KiBugcheckDataAddr | ULONG64 | Gibt die Kernelvariable KiBugCheckDatazurück. |
DEBUG_DATA_IopErrorLogListHeadAddr | ULONG64 | Gibt die Adresse der Kernelvariable IopErrorLogListHeadzurück. |
DEBUG_DATA_ObpRootDirectoryObjectAddr | ULONG64 | Gibt die Adresse der Kernelvariable ObpRootDirectoryObjectzurück. |
DEBUG_DATA_ObpTypeObjectTypeAddr | ULONG64 | Gibt die Adresse der Kernelvariable ObpTypeObjectTypezurück. |
DEBUG_DATA_MmSystemCacheStartAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmSystemCacheStartzurück. |
DEBUG_DATA_MmSystemCacheEndAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmSystemCacheEndzurück. |
DEBUG_DATA_MmSystemCacheWsAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmSystemCacheWszurück. |
DEBUG_DATA_MmPfnDatabaseAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmPfnDatabasezurück. |
DEBUG_DATA_MmSystemPtesStartAddr | ULONG64 | Gibt die Kernelvariable MmSystemPtesStartzurück. |
DEBUG_DATA_MmSystemPtesEndAddr | ULONG64 | Gibt die Kernelvariable MmSystemPtesEndzurück. |
DEBUG_DATA_MmSubsectionBaseAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmSubsectionBasezurück. |
DEBUG_DATA_MmNumberOfPagingFilesAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmNumberOfPagingFileszurück. |
DEBUG_DATA_MmLowestPhysicalPageAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmLowestPhysicalPagezurück. |
DEBUG_DATA_MmHighestPhysicalPageAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmHighestPhysicalPagezurück. |
DEBUG_DATA_MmNumberOfPhysicalPagesAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmNumberOfPhysicalPageszurück. |
DEBUG_DATA_MmMaximumNonPagedPoolInBytesAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmMaximumNonPagedPoolInByteszurück. |
DEBUG_DATA_MmNonPagedSystemStartAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmNonPagedSystemStartzurück. |
DEBUG_DATA_MmNonPagedPoolStartAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmNonPagedPoolStartzurück. |
DEBUG_DATA_MmNonPagedPoolEndAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmNonPagedPoolEndzurück. |
DEBUG_DATA_MmPagedPoolStartAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmPagedPoolStartzurück. |
DEBUG_DATA_MmPagedPoolEndAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmPagedPoolEndzurück. |
DEBUG_DATA_MmPagedPoolInformationAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmPagedPoolInfozurück. |
DEBUG_DATA_MmPageSize | ULONG64 | Gibt das Seitenformat zurück. |
DEBUG_DATA_MmSizeOfPagedPoolInBytesAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmSizeOfPagedPoolInByteszurück. |
DEBUG_DATA_MmTotalCommitLimitAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmTotalCommitLimitzurück. |
DEBUG_DATA_MmTotalCommittedPagesAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmTotalCommittedPageszurück. |
DEBUG_DATA_MmSharedCommitAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmSharedCommitzurück. |
DEBUG_DATA_MmDriverCommitAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmDriverCommitzurück. |
DEBUG_DATA_MmProcessCommitAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmProcessCommitzurück. |
DEBUG_DATA_MmPagedPoolCommitAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmPagedPoolCommitzurück. |
DEBUG_DATA_MmExtendedCommitAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmExtendedCommit.. |
DEBUG_DATA_MmZeroedPageListHeadAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmZeroedPageListHeadzurück. |
DEBUG_DATA_MmFreePageListHeadAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmFreePageListHeadzurück. |
DEBUG_DATA_MmStandbyPageListHeadAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmStandbyPageListHeadzurück. |
DEBUG_DATA_MmModifiedPageListHeadAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmModifiedPageListHeadzurück. |
DEBUG_DATA_MmModifiedNoWritePageListHeadAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmModifiedNoWritePageListHeadzurück. |
DEBUG_DATA_MmAvailablePagesAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmAvailablePageszurück. |
DEBUG_DATA_MmResidentAvailablePagesAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmResidentAvailablePageszurück. |
DEBUG_DATA_PoolTrackTableAddr | ULONG64 | Gibt die Adresse der Kernelvariable PoolTrackTable-zurück. |
DEBUG_DATA_NonPagedPoolDescriptorAddr | ULONG64 | Gibt die Adresse der Kernelvariable NonPagedPoolDescriptorzurück. |
DEBUG_DATA_MmHighestUserAddressAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmHighestUserAddresszurück. |
DEBUG_DATA_MmSystemRangeStartAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmSystemRangeStartzurück. |
DEBUG_DATA_MmUserProbeAddressAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmUserProbeAddresszurück. |
DEBUG_DATA_KdPrintCircularBufferAddr | ULONG64 | Gibt die Kernelvariable KdPrintDefaultCircularBufferzurück. |
DEBUG_DATA_KdPrintCircularBufferEndAddr | ULONG64 | Gibt die Adresse des Endes des Arrays KdPrintDefaultCircularBuffer zurück. |
DEBUG_DATA_KdPrintWritePointerAddr | ULONG64 | Gibt die Adresse der Kernelvariable KdPrintWritePointer-zurück. |
DEBUG_DATA_KdPrintRolloverCountAddr | ULONG64 | Gibt die Adresse der Kernelvariable KdPrintRolloverCountzurück. |
DEBUG_DATA_MmLoadedUserImageListAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmLoadedUserImageListzurück. |
DEBUG_DATA_PaeEnabled | BOOLESCH |
Gibt TRUE zurück, wenn das Zielsystem PAE aktiviert hat.
Gibt FALSE andernfalls zurück. |
DEBUG_DATA_SharedUserData | ULONG64 |
Gibt die Adresse im Ziel der freigegebenen Benutzermodusstruktur KUSER_SHARED_DATA zurück. Die KUSER_SHARED_DATA-Struktur wird in ntddk.h (im Windows Driver Kit) und ntexapi.h (im Windows SDK) definiert.
Einige der in dieser Struktur enthaltenen Informationen werden von der Debuggererweiterung !kuserangezeigt. |
DEBUG_DATA_ProductType | ULONG |
Gibt den Wert des felds NtProductType auf der Seite für den freigegebenen Benutzermodus zurück.
Dieser Wert sollte auf die gleiche Weise interpretiert werden wie das wProductType Feld der Struktur OSVERSIONINFOEX, das im Windows SDK dokumentiert ist. |
DEBUG_DATA_SuiteMask | ULONG |
Gibt den Wert des felds SuiteMask auf der Seite für den freigegebenen Benutzermodus zurück.
Dieser Wert sollte auf die gleiche Weise interpretiert werden wie das wSuiteMask Feld der Struktur OSVERSIONINFOEX, das im Windows SDK dokumentiert ist. |
DEBUG_DATA_DumpWriterStatus | ULONG | Gibt den Status des Writers der Dumpdatei zurück. Dieser Wert ist das Betriebssystem und der dateitypspezifische Speicherabbilddatei. |
Die folgenden Werte gelten für Windows XP und höhere Versionen von Windows:
Wert | Rückgabetyp | Beschreibung |
---|---|---|
DEBUG_DATA_NtBuildLabAddr | ULONG64 | Gibt die Adresse der Kernelvariable NtBuildLabzurück. |
DEBUG_DATA_KiNormalSystemCall | ULONG64 | (Nur Itanium) Gibt die Adresse der Kernelfunktion KiNormalSystemCallzurück. |
DEBUG_DATA_KiProcessorBlockAddr | ULONG64 | Gibt die Kernelvariable KiProcessorBlockzurück. |
DEBUG_DATA_MmUnloadedDriversAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmUnloadedDriverszurück. |
DEBUG_DATA_MmLastUnloadedDriverAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmLastUnloadedDriverzurück. |
DEBUG_DATA_MmTriageActionTakenAddr | ULONG64 | Gibt die Adresse der Kernelvariable VerifierTriageActionTakenzurück. |
DEBUG_DATA_MmSpecialPoolTagAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmSpecialPoolTagzurück. |
DEBUG_DATA_KernelVerifierAddr | ULONG64 | Gibt die Adresse der Kernelvariable KernelVerifierzurück. |
DEBUG_DATA_MmVerifierDataAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmVerifierData-zurück. |
DEBUG_DATA_MmAllocatedNonPagedPoolAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmAllocatedNonPagedPoolzurück. |
DEBUG_DATA_MmPeakCommitmentAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmPeakCommitmentzurück. |
DEBUG_DATA_MmTotalCommitLimitMaximumAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmTotalCommitLimitMaximumzurück. |
DEBUG_DATA_CmNtCSDVersionAddr | ULONG64 | Gibt die Adresse der Kernelvariable CmNtCSDVersionzurück. |
DEBUG_DATA_MmPhysicalMemoryBlockAddr | ULONG64 | Gibt die Adresse der Kernelvariable MmPhysicalMemoryBlockzurück. |
DEBUG_DATA_MmSessionBase | ULONG64 | Gibt die Adresse der Kernelvariable MmSessionBase-zurück. |
DEBUG_DATA_MmSessionSize | ULONG64 | Gibt die Adresse der Kernelvariable MmSessionSizezurück. |
DEBUG_DATA_MmSystemParentTablePage | ULONG64 | (Nur Itanium) Gibt die Adresse der Kernelvariable MmSystemParentTablePagezurück. |
Die folgenden Werte gelten für Windows Server 2003 und höhere Versionen von Windows:
Wert | Rückgabetyp | Beschreibung |
---|---|---|
DEBUG_DATA_MmVirtualTranslationBase | ULONG64 | Gibt die Adresse der Kernelvariable MmVirtualTranslationBasezurück. |
DEBUG_DATA_OffsetKThreadNextProcessor | USHORT | Gibt den Offset des NextProcessor- Felds in der KTHREAD-Struktur zurück. |
DEBUG_DATA_OffsetKThreadTeb | USHORT | Gibt den Offset des Teb Felds in der KTHREAD-Struktur zurück. |
DEBUG_DATA_OffsetKThreadKernelStack | USHORT | Gibt den Offset des KernelStack Felds in der KTHREAD-Struktur zurück. |
DEBUG_DATA_OffsetKThreadInitialStack | USHORT | Gibt den Offset des InitialStack Felds in der KTHREAD-Struktur zurück. |
DEBUG_DATA_OffsetKThreadApcProcess | USHORT | Gibt den Offset des Felds "ApcState.Process" in der KTHREAD-Struktur zurück. |
DEBUG_DATA_OffsetKThreadState | USHORT | Gibt den Offset des State Felds in der KTHREAD-Struktur zurück. |
DEBUG_DATA_OffsetKThreadBStore | USHORT | (Nur Itanium) Gibt den Offset des InitialBStore- Felds in der KTHREAD-Struktur zurück. |
DEBUG_DATA_OffsetKThreadBStoreLimit | USHORT | (Nur Itanium) Gibt den Offset des BStoreLimit- Felds in der KTHREAD-Struktur zurück. |
DEBUG_DATA_SizeEProcess | USHORT | Gibt die Größe der EPROCESS-Struktur zurück. |
DEBUG_DATA_OffsetEprocessPeb | USHORT | Gibt den Offset des Peb- Felds in der EPROCESS-Struktur zurück. |
DEBUG_DATA_OffsetEprocessParentCID | USHORT | Gibt den Offset des InheritedFromUniqueProcessId Feld in der EPROCESS-Struktur zurück. |
DEBUG_DATA_OffsetEprocessDirectoryTableBase | USHORT | Gibt den Offset des DirectoryTableBase- Felds in der EPROCESS-Struktur zurück. |
DEBUG_DATA_SizePrcb | USHORT | Gibt die Größe der KPRCB-Struktur zurück. |
DEBUG_DATA_OffsetPrcbDpcRoutine | USHORT | Gibt den Offset des DpcRoutineActive Felds in der KPRCB-Struktur zurück. |
DEBUG_DATA_OffsetPrcbCurrentThread | USHORT | Gibt den Offset des CurrentThread- Felds in der KPRCB-Struktur zurück. |
DEBUG_DATA_OffsetPrcbMhz | USHORT | Gibt den Offset des MHz Felds in der KPRCB-Struktur zurück. |
DEBUG_DATA_OffsetPrcbCpuType | USHORT |
Für Itanium-Prozessoren: Gibt den Offset des felds ProcessorModel in der KPRCB-Struktur zurück.
Für alle anderen Prozessoren: Gibt den Offset des CpuType Felds in der KPRCB-Struktur zurück. |
DEBUG_DATA_OffsetPrcbVendorString | USHORT |
Für Itanium-Prozessoren: Gibt den Offset des ProcessorVendorString Felds in der KPRCB-Struktur zurück.
Für alle anderen Prozessoren: Gibt den Offset des Felds VendorString in der KPRCB-Struktur zurück. |
DEBUG_DATA_OffsetPrcbProcessorState | USHORT | Gibt den Offset des ProcessorState.ContextFrame-Felds in der KPRCB-Struktur zurück. |
DEBUG_DATA_OffsetPrcbNumber | USHORT | Gibt den Offset des felds Number in der KPRCB-Struktur zurück. |
DEBUG_DATA_SizeEThread | USHORT | Gibt die Größe der ETHREAD-Struktur zurück. |
DEBUG_DATA_KdPrintCircularBufferPtrAddr | ULONG64 | Gibt die Adresse der Kernelvariable KdPrintCircularBufferzurück. |
DEBUG_DATA_KdPrintBufferSizeAddr | ULONG64 | Gibt die Adresse der Kernelvariable KdPrintBufferSizezurück. |
[out] Buffer
Empfängt den Wert der angegebenen Debuggerdaten. Die Spalte "Rückgabetyp" in der obigen Tabelle gibt den zurückgegebenen Datentyp an. Auf die Daten kann zugegriffen werden, indem sie Puffer in einen Zeiger auf diesen Typ umwandeln.
[in] BufferSize
Gibt die Größe in Byte des Puffers Puffer-an.
[out, optional] DataSize
Empfängt die Anzahl der im Puffer verwendeten Bytes Puffer-. Wenn DataSize-NULL-ist, werden diese Informationen nicht zurückgegeben.
Rückgabewert
Rückgabecode | Beschreibung |
---|---|
|
Die Methode war erfolgreich. |
Diese Methode kann auch Fehlerwerte zurückgeben. Weitere Informationen finden Sie unter Rückgabewerte.
Bemerkungen
Einige oder alle Werte sind in bestimmten Debugsitzungen möglicherweise nicht verfügbar. Einige der Werte sind beispielsweise nur für bestimmte Versionen des Betriebssystems verfügbar.
Ausführliche Informationen zu den verschiedenen Werten, die von ReadDebuggerDatazurückgegeben werden, finden Sie unter Microsoft Windows Internals von David Solomon und Mark Russinovich, dem Microsoft Windows SDK und dem Windows Driver Kit (WDK).
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | dbgeng.h (include Dbgeng.h) |