DD_GETDRIVERINFODATA-Struktur (ddrawint.h)
Die DD_GETDRIVERINFODATA-Struktur wird verwendet, um Daten an und von der Rückrufroutine DdGetDriverInfo zu übergeben.
Syntax
typedef struct _DD_GETDRIVERINFODATA {
VOID *dhpdev;
DWORD dwSize;
DWORD dwFlags;
GUID guidInfo;
DWORD dwExpectedSize;
PVOID lpvData;
DWORD dwActualSize;
HRESULT ddRVal;
} *PDD_GETDRIVERINFODATA, DD_GETDRIVERINFODATA;
Member
dhpdev
Handle mit dem PDEV des Treibers. Nur Microsoft Windows 2000 und höher.
dwSize
Gibt die Größe dieser DD_GETDRIVERINFODATA-Struktur in Bytes an.
dwFlags
Derzeit nicht verwendet und ist auf 0 festgelegt.
guidInfo
Gibt die GUID der Microsoft DirectX-Unterstützung an, für die der Treiber abgefragt wird. In einem Microsoft DirectDraw-Treiber unter Windows 2000 und höher kann es sich um einen der folgenden Werte (in alphabetischer Reihenfolge) handeln:
GUID | Beschreibung |
---|---|
GUID_ColorControlCallbacks | Fragt ab, ob der Treiber DdControlColor unterstützt. Wenn der Treiber dies unterstützt, sollte der Treiber eine DD_COLORCONTROLCALLBACKS Struktur im Puffer zurückgeben, auf die lpvData verweist. |
GUID_D3DCallbacks | Fragt ab, ob der Treiber eine der Funktionen unterstützt, die über die D3DHAL_CALLBACKS-Struktur angegeben sind. Wenn der Treiber diese Unterstützung nicht bereitstellt, sollte er eine D3DHAL_CALLBACKS Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_D3DCallbacks2 | Veraltet. |
GUID_D3DCallbacks3 | Fragt ab, ob der Treiber eine der Funktionen unterstützt, die über die D3DHAL_CALLBACKS3-Struktur angegeben sind. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine D3DHAL_CALLBACKS3 Struktur im Puffer, auf die lpvData verweist, initialisieren und zurückgeben. |
GUID_D3DCaps | Veraltet. |
GUID_D3DExtendedCaps | Fragt ab, ob der Treiber eine der Über die D3DHAL_D3DEXTENDEDCAPS-Struktur angegebenen Microsoft Direct3D-Funktionen unterstützt. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine D3DHAL_D3DEXTENDEDCAPS Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_D3DParseUnknownCommandCallback | Stellt den Direct3D-Teil des Treibers mit dem D3dParseUnknownCommandCallback der Direct3D-Runtime bereit. Der D3dDrawPrimitives2-Rückruf des Treibers ruft D3dParseUnknownCommandCallback auf, um Befehle aus dem Befehlspuffer zu analysieren, die der Treiber nicht versteht. DirectDraw übergibt einen Zeiger an diese Funktion im Puffer, auf den lpvData verweist. Wenn der Treiber diesen Aspekt von Direct3D unterstützt, sollte er den Zeiger speichern. |
GUID_GetHeapAlignment | Fragt ab, ob der Treiber Oberflächenausrichtungsanforderungen pro Heap unterstützt. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine DD_GETHEAPALIGNMENTDATA Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_KernelCallbacks | Fragt ab, ob der Treiber eine der Funktionen unterstützt, die über die DD_KERNELCALLBACKS-Struktur angegeben sind. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine DD_KERNELCALLBACKS Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_KernelCaps | Fragt ab, ob der Treiber eine der Kernelmodusfunktionen unterstützt, die über die DDKERNELCAPS-Struktur angegeben sind. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine DDKERNELCAPS-Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_MiscellaneousCallbacks | Fragt ab, ob der Treiber DdGetAvailDriverMemory unterstützt. Wenn der Treiber dies unterstützt, sollte der Treiber eine DD_MISCELLANEOUSCALLBACKS Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_Miscellaneous2Callbacks | Fragt ab, ob der Treiber die zusätzlichen verschiedenen Funktionen unterstützt, die in der DD_MISCELLANEOUS2CALLBACKS-Struktur angegeben sind. Wenn der Treiber diese Unterstützung unterstützt, sollte der Treiber eine DD_MISCELLANEOUS2CALLBACKS Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_MotionCompCallbacks | Fragt ab, ob der Treiber die Bewegungskompensationsfunktionalität unterstützt, die über die DD_MOTIONCOMPCALLBACKS-Struktur angegeben wird. Wenn der Treiber diese Unterstützung bereitstellt, sollte eine DD_MOTIONCOMPCALLBACKS Struktur im Puffer, auf die lpvData verweist, initialisieren und zurückgeben. |
GUID_NonLocalVidMemCaps | Fragt ab, ob der Treiber eine der nichtlokalen Anzeigespeicherfunktionen unterstützt, die über die DD_NONLOCALVIDMEMCAPS-Struktur angegeben sind. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine DD_NONLOCALVIDMEMCAPS Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_NTCallbacks | Fragt ab, ob der Treiber eine der Funktionen unterstützt, die über die DD_NTCALLBACKS-Struktur angegeben sind. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine DD_NTCALLBACKS Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_NTPrivateDriverCaps | Fragt ab, ob der Treiber die Oberflächenerstellungstechniken im Windows 98/Me-Stil unterstützt, die über die DD_NTPRIVATEDRIVERCAPS-Struktur angegeben werden. Wenn der Treiber diese Unterstützung bereitstellt, sollte er initialisieren und eine DD_NTPRIVATEDRIVERCAPS Struktur im Puffer zurückgeben, auf die lpvData verweist. |
GUID_UpdateNonLocalHeap | Fragt ab, ob der Treiber den Abruf der Basisadressen jedes nichtlokalen Heaps nacheinander unterstützt. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine DD_UPDATENONLOCALHEAPDATA Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_VideoPortCallbacks | Fragt ab, ob der Treiber die Videoporterweiterungen (VPE) unterstützt. Wenn der Treiber VPE unterstützt, sollte er eine DD_VIDEOPORTCALLBACKS Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_VideoPortCaps | Fragt ab, ob der Treiber eine der VPE-Objektfunktionen unterstützt, die über die DDVIDEOPORTCAPS-Struktur angegeben sind. Wenn der Treiber diese Unterstützung bereitstellt, sollte er eine DDVIDEOPORTCAPS-Struktur im Puffer initialisieren und zurückgeben, auf die lpvData verweist. |
GUID_ZPixelFormats | Fragt die vom Tiefenpuffer unterstützten Pixelformate ab. Wenn der Treiber Direct3D unterstützt, sollte er die entsprechenden Member einer DDPIXELFORMAT-Struktur für jedes unterstützte z-Pufferformat zuordnen und initialisieren und diese im Puffer zurückgeben, auf den lpvData verweist. |
dwExpectedSize
Gibt die Anzahl der Datenbytes an, die DirectDraw erwartet, dass der Treiber in den Puffer zurückübergibt, auf den lpvData verweist.
lpvData
Verweist auf einen mit DirectDraw zugewiesenen Puffer, in den der Treiber die angeforderten Daten kopiert. Dieser Puffer ist in der Regel dwExpectedSize bytes in der Größe. Der Treiber darf nicht mehr als dwExpectedSize-Datenbytes schreiben. Der Treiber gibt die Anzahl der Bytes an, die er in diesen Puffer im dwActualSize-Element schreibt.
dwActualSize
Gibt den Speicherort an, an dem der Treiber die Anzahl der Bytes von Daten zurückgibt, die er in lpvData schreibt.
ddRVal
Gibt den Speicherort an, an dem der Treiber den Rückgabewert des DdGetDriverInfo-Rückrufs schreibt. Ein Rückgabecode von DD_OK zeigt den Erfolg an. Weitere Informationen finden Sie unter Rückgabewerte für DirectDraw.
Hinweise
Die Datenstruktur, die für einen DdGetDriverInfo-Aufruf an den Treiber übergeben wird, weist geringfügige Unterschiede zwischen Windows 98/Me und Windows 2000 und höher auf. Unter Windows 2000 und höher heißt die Datenstruktur DD_GETDRIVERINFODATA und unter Windows 98/Me wird die Datenstruktur als DDHAL_GETDRIVERINFODATA bezeichnet. Beide Datenstrukturen enthalten ein Feld für treiberspezifische Kontextinformationen. Unter Windows 2000 und höher enthält DD_GETDRIVERINFODATA ein Feld dhpdev , in dem die DHPDEV des aufgerufenen Treibers gespeichert wird. Nur unter Windows 98/Me enthält DDHAL_GETDRIVERINFODATA ein Feld dwContext , das für das vom Treiber reservierte dwReserved3-Feld des globalen DirectDraw-Objekts kopiert wird.
Anforderungen
Anforderung | Wert |
---|---|
Header | ddrawint.h (include Winddi.h) |