DXGKDDI_COLLECTDIAGNOSTICINFO Rückruffunktion (dispmprt.h)
Die DxgkDdiCollectDiagnosticInfo-Rückrufroutine sammelt die privaten Treiberinformationen aus Gründen, die von DXGK_DIAGNOSTICINFO_TYPEangegeben werden.
In Windows 10, Version 1903, wird der Treiber aufgerufen, um private Informationen zu sammeln, wenn die Funktion aufruft, um DxgkDdiAddDevice oder DxgkDdiStartDevice fehlgeschlagen.
Syntax
DXGKDDI_COLLECTDIAGNOSTICINFO DxgkddiCollectdiagnosticinfo;
NTSTATUS DxgkddiCollectdiagnosticinfo(
[in] IN_CONST_PDEVICE_OBJECT PhysicalDeviceObject,
[in, out] INOUT_PDXGKARG_COLLECTDIAGNOSTICINFO pCollectDiagnosticInfo
)
{...}
Parameter
[in] PhysicalDeviceObject
Ein Zeiger auf ein physisches Geräteobjekt (PDO), das einen Anzeigeadapter identifiziert.
[in, out] pCollectDiagnosticInfo
Ein Zeiger auf eine DXGKARG_COLLECTDIAGNOSTICINFO Struktur, die vom Treiber gesammelte Informationen beschreibt.
Rückgabewert
Gibt STATUS_SUCCESS zurück, wenn die privaten Dateninformationen erfolgreich erfasst wurden. Andernfalls wird ein Fehlercode zurückgegeben, z. B. einer der folgenden.
Fehlercode | Bedeutung |
---|---|
STATUS_DRIVER_INTERNAL_ERROR | Im Treiber ist ein generischer SW-Fehler aufgetreten. |
STATUS_ACCESS_DENIED | Die Hardware wird derzeit von anderen Threads verwendet, und dieser DDI kann nicht darauf zugreifen. |
STATUS_DEVICE_HARDWARE_ERROR | Ein allgemeiner HW-Fehler ist aufgetreten. |
STATUS_DEVICE_POWERED_OFF | Das Gerät ist ausgeschaltet. |
Bemerkungen
Diese Funktion wird jederzeit auf passiver Ebene zwischen den Aufrufen von DxgkDdiAddDevice und DxgkDdiStartDeviceaufgerufen und sollte Synchronisierung null ebeneunterstützen. Die gesammelten Daten sollten keine privaten Benutzerinformationen enthalten.
WDDM 2.7- und höher-Treiber sind erforderlich, um den DXGK_DI_BLACKSCREENDXGK_DIAGNOSTICINFO_TYPE Enumerationstyp für die Blackscreen-Datensammlung mit schwarzen Bildschirmen zu unterstützen.
Für Szenarien mit schwarzem Bildschirm sammelt das Betriebssystem zunächst die White box-Daten vom Treiber, indem DxgkDdiGetDisplayStateNonIntrusive und DxgkDdiGetDisplayStateIntrusive aufgerufen wird, bevor dieser DDI aufgerufen wird, um Informationen zu schwarzen Boxen zu sammeln.
Es wird empfohlen, pCollectDiagnosticInfo->BucketingString- zu verwenden, um die Black box-Daten nach Möglichkeit zu bucketisieren. Wenn die Größe des BufferSizeIn Eingabepuffer nicht für alle Black Box-Daten ausreichend ist, sollten Treiber ihre eigenen Kompromisse machen, um die Daten zu verlassen, die in den meisten Schwarzen Bildschirmstamm-Ursachenanalysen am wenigsten wichtig sind.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 10, Version 1903 |
Header- | dispmprt.h |
IRQL- | PASSIVE_LEVEL |