DXGKDDI_SYSTEM_DISPLAY_WRITE Rückruffunktion (dispmprt.h)
Vom Betriebssystem aufgerufen, um den Miniporttreiber zum Schreiben eines Bildblocks auf das Anzeigegerät anzufordern.
Ab Windows 8 ruft das Betriebssystem diese Funktion während eines Fehlerüberprüfungsvorgangs nach einem Systemstoppfehler auf. Das Betriebssystem ruft diese Funktion nur auf, wenn das Anzeigegerät zuvor über einen Aufruf von DxgkDdiSystemDisplayEnablezurückgesetzt wurde.
Syntax
DXGKDDI_SYSTEM_DISPLAY_WRITE DxgkddiSystemDisplayWrite;
void DxgkddiSystemDisplayWrite(
[in] PVOID MiniportDeviceContext,
[in] PVOID Source,
[in] UINT SourceWidth,
[in] UINT SourceHeight,
[in] UINT SourceStride,
[in] UINT PositionX,
[in] UINT PositionY
)
{...}
Parameter
[in] MiniportDeviceContext
Ein Handle zu einem Kontextblock, der einem Anzeigeadapter zugeordnet ist. Die DxgkDdiAddDevice-Funktion des Display-Miniporttreibers stellt dieses Handle zuvor für das Microsoft DirectX-Grafik-Kernel-Subsystem bereit.
[in] Source
Ein Zeiger auf die Startadresse des Quellbilds, das in den Fehlerprüfungsbildschirm geschrieben werden soll, der Informationen zum Systemstoppfehler anzeigt.
[in] SourceWidth
Ein UINT-Wert, der die Breite des angegebenen Quellbilds in Pixeleinheiten angibt.
[in] SourceHeight
Ein UINT-Wert, der die Höhe des angegebenen Quellbilds in Pixeleinheiten angibt.
[in] SourceStride
Ein UINT-Wert, der die Anzahl der Bytes für jede Zeile des angegebenen Quellbilds angibt.
[in] PositionX
Ein UINT-Wert, der die X-Startkoordinate angibt, in die das angegebene Quellbild auf dem Anzeigegerät geschrieben werden soll.
[in] PositionY
Ein UINT-Wert, der die Anfangs-Y-Koordinate angibt, in die das angegebene Quellbild auf dem Anzeigegerät geschrieben werden soll.
Rückgabewert
Nichts
Bemerkungen
einschränkungen für Quellbild
Der Miniporttreiber der Anzeige muss diese Richtlinien einhalten, wenn die DxgkDdiSystemDisplayWrite-Funktion aufgerufen wird:- Das Farbformat des Quellbilds befindet sich immer in den D3DDDIFMT_R8G8B8 (24 Bit pro Pixel) oder D3DDDIFMT_A8R8G8B8 (32 bpp) der D3DDDIFORMAT Enumeration. Der Anzeigeminiporttreiber hatte zuvor den Anzeigemodus festgelegt, um Schreibvorgänge in diesem Format zu aktivieren, als die DxgkDdiSystemDisplayEnable aufgerufen wurde.
- Das Quellbild befindet sich im nicht ausgelagerten Speicher. Der Miniporttreiber für die Anzeige sollte dieses Quellbild in den aktuellen Framepuffer schreiben, beginnend an den positionen, die durch die PostionX- und PositionY Parameter angegeben werden.
-
Der Anzeigeminiporttreiber sollte die CPU verwenden, um den Bildblock in den Framepuffer zu schreiben. Wenn ein Stoppfehler auftritt, wurde es möglicherweise durch eine kontinuierliche Timeouterkennung und -wiederherstellung (TDR) auf dem Anzeigegerät verursacht. In diesem Fall befindet sich die Grafikverarbeitungseinheit (GPU) möglicherweise in einem unbekannten Zustand.
Weitere Informationen zu TDR finden Sie unter Timeout Detection and Recovery (TDR).
Nicht ausgelagerten Speicher verwenden
Windows-Kernelmodusfunktionen sind möglicherweise nicht verfügbar, während diese Funktion aufgerufen wird.DxgkDdiSystemDisplayWrite- kann bei jedem IRQL aufgerufen werden, daher muss es sich im nicht seitenfähigen Speicher befinden. DxgkDdiSystemDisplayWrite darf keinen Code aufrufen, der sich im auslagerungsfähigen Speicher befindet, und darf keine Daten bearbeiten, die sich im ausgelagerten Speicher befinden.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 8 |
mindestens unterstützte Server- | Windows Server 2012 |
Zielplattform- | Desktop |
Header- | dispmprt.h |
IRQL- | Beliebige Ebene (siehe Abschnitt "Hinweise") |
Siehe auch
DxgkCbAcquirePostDisplayOwnership