DXGKDDI_SYSTEM_DISPLAY_WRITE Rückruffunktion (dispmprt.h)
Wird vom Betriebssystem aufgerufen, um den Anzeige-Miniporttreiber anzufordern, einen Bildblock auf das Anzeigegerät zu schreiben.
Ab Windows 8 ruft das Betriebssystem diese Funktion während eines Fehlers zur Fehlerüberprüfung auf, der auf einen Systemstoppfehler folgt. Das Betriebssystem ruft diese Funktion nur auf, wenn das Anzeigegerät zuvor über einen Aufruf von DxgkDdiSystemDisplayEnable zurü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 für einen Kontextblock, der einer Grafikkarte zugeordnet ist. Die DxgkDdiAddDevice-Funktion des Display-Miniporttreibers hat dieses Handle zuvor für das Microsoft DirectX-Grafikkernsystem bereitgestellt.
[in] Source
Ein Zeiger auf die Startadresse des Quellbilds, das in den Fehlerprüfungsbildschirm geschrieben werden soll, auf dem Informationen zum Systemstoppfehler angezeigt werden.
[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 Quellimages 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 Y-Startkoordinate angibt, in die das angegebene Quellbild auf dem Anzeigegerät geschrieben werden soll.
Rückgabewert
Keine
Bemerkungen
Einschränkungen für Quellimages
Der Anzeige-Miniporttreiber muss diese Richtlinien befolgen, wenn seine DxgkDdiSystemDisplayWrite-Funktion aufgerufen wird:- Das Farbformat des Quellbilds befindet sich immer im format D3DDDIFMT_R8G8B8 (24 Bit pro Pixel) oder D3DDDIFMT_A8R8G8B8 (32 bpp) der D3DDDIFORMAT-Enumeration . Der Anzeige-Miniporttreiber hatte zuvor den Anzeigemodus so festgelegt, dass Schreibvorgänge in diesem Format aktiviert werden, wenn dxgkDdiSystemDisplayEnable aufgerufen wurde.
- Das Quellimage befindet sich im Nicht-Auslagerungsspeicher. Der Anzeigeminiporttreiber sollte dieses Quellbild ab den durch die Parameter PostionX und PositionY angegebenen Positionen in den aktuellen Framepuffer schreiben.
-
Der Anzeige-Miniporttreiber sollte die CPU verwenden, um den Imageblock in den Framepuffer zu schreiben. Wenn beim System ein Stoppfehler auftritt, wurde dies möglicherweise durch eine kontinuierliche Timeouterkennung und -wiederherstellung (TDR) auf dem Anzeigegerät verursacht. In diesem Fall befindet sich die Grafikverarbeitungseinheit (GRAPHICS Processing Unit, GPU) möglicherweise in einem unbekannten Zustand.
Weitere Informationen zu TDR finden Sie unter Timeouterkennung und -wiederherstellung (TDR).
Verwenden von nicht ausgelagerten Arbeitsspeicher
Windows-Kernelmodusfunktionen sind möglicherweise nicht verfügbar, während diese Funktion aufgerufen wird.DxgkDdiSystemDisplayWrite kann in jedem IRQL aufgerufen werden, sodass es sich im nicht ausstellbaren Arbeitsspeicher befinden muss. DxgkDdiSystemDisplayWrite darf keinen Code aufrufen, der sich im ausgelagerten Speicher befindet, und darf keine Daten bearbeiten, die sich im ausgelagerten Speicher befinden.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 8 |
Unterstützte Mindestversion (Server) | Windows Server 2012 |
Zielplattform | Desktop |
Kopfzeile | dispmprt.h |
IRQL | Beliebige Ebene (siehe Abschnitt "Hinweise") |
Weitere Informationen
DxgkCbAcquirePostDisplayOwnership