DD_GETDRIVERINFODATA結構 (ddrawint.h)

DD_GETDRIVERINFODATA 結構可用來將數據傳入 DdGetDriverInfo 回呼例程。

語法

typedef struct _DD_GETDRIVERINFODATA {
  VOID    *dhpdev;
  DWORD   dwSize;
  DWORD   dwFlags;
  GUID    guidInfo;
  DWORD   dwExpectedSize;
  PVOID   lpvData;
  DWORD   dwActualSize;
  HRESULT ddRVal;
} *PDD_GETDRIVERINFODATA, DD_GETDRIVERINFODATA;

成員

dhpdev

驅動程式 的 PDEV 句柄。 僅限 Microsoft Windows 2000 和更新版本。

dwSize

指定這個 DD_GETDRIVERINFODATA 結構位元組的大小。

dwFlags

目前未使用 且 設定為零。

guidInfo

指定要查詢驅動程式之 Microsoft DirectX 支援的 GUID。 在 Windows 2000 和更新版本的 Microsoft DirectDraw 驅動程式中,此成員可以是下列其中一個值 (字母順序) :

GUID 描述
GUID_ColorControlCallbacks 查詢驅動程式是否支援 DdControlColor。 如果驅動程序支援它,驅動程式應該初始化並傳回 lpvData 指向之緩衝區中的DD_COLORCONTROLCALLBACKS結構。
GUID_D3DCallbacks 查詢驅動程式是否支援透過 D3DHAL_CALLBACKS 結構所指定的任何功能。 如果驅動程式未提供任何此支援,它應該初始化並傳回 lpvData 指向之緩衝區中的D3DHAL_CALLBACKS結構。
GUID_D3DCallbacks2 已過時。
GUID_D3DCallbacks3 查詢驅動程式是否支援透過 D3DHAL_CALLBACKS3 結構所指定的任何功能。 如果驅動程式確實提供此支援的任何一項,它應該初始化並傳回 lpvData 指向之緩衝區中的D3DHAL_CALLBACKS3結構。
GUID_D3DCaps 已過時。
GUID_D3DExtendedCaps 查詢驅動程式是否支援透過 D3DHAL_D3DEXTENDEDCAPS 結構所指定的任何 Microsoft Direct3D 功能。 如果驅動程式提供此支援的任何一項,它應該初始化並傳回 lpvData 指向之緩衝區中的D3DHAL_D3DEXTENDEDCAPS結構。
GUID_D3DParseUnknownCommandCallback 提供驅動程式的 Direct3D 部分與 Direct3D 運行時間的 D3dParseUnknownCommandCallback。 驅動程式的 D3dDrawPrimitives2 回呼會呼叫 D3dParseUnknownCommandCallback ,從驅動程式不瞭解的命令緩衝區剖析命令。DirectDraw 會在 lpvData 指向的緩衝區中傳遞此函式的指標。 如果驅動程式支援 Direct3D 的這個層面,它應該儲存指標。
GUID_GetHeapAlignment 查詢驅動程式是否支援每個堆積上的表面對齊需求。 如果驅動程式確實提供此支援,它應該初始化並傳回 lpvData 指向之緩衝區中的DD_GETHEAPALIGNMENTDATA結構。
GUID_KernelCallbacks 查詢驅動程式是否支援透過 DD_KERNELCALLBACKS 結構所指定的任何功能。 如果驅動程式提供此支援的任何一項,它應該初始化並傳回 lpvData 指向之緩衝區中的DD_KERNELCALLBACKS結構。
GUID_KernelCaps 查詢驅動程式是否支援透過 DDKERNELCAPS 結構所指定的任何核心模式功能。 如果驅動程式確實提供任何此支援,它應該初始化並傳回 lpvData 指向之緩衝區中的 DDKERNELCAPS 結構。
GUID_MiscellaneousCallbacks 查詢驅動程式是否支援 DdGetAvailDriverMemory。 如果驅動程式支援該驅動程式,驅動程式應該初始化並傳回 lpvData 指向之緩衝區中的DD_MISCELLANEOUSCALLBACKS結構。
GUID_Miscellaneous2Callbacks 查詢驅動程式是否支援 DD_MISCELLANEOUS2CALLBACKS 結構中指定的其他功能。 如果驅動程式支援此支援的任何一項,驅動程式應該初始化並傳回 lpvData 指向之緩衝區中的DD_MISCELLANEOUS2CALLBACKS結構。
GUID_MotionCompCallbacks 查詢驅動程式是否支援透過 DD_MOTIONCOMPCALLBACKS 結構指定的動作補償功能。 如果驅動程式提供此支援的任何一項,應該初始化並傳回 lpvData 指向之緩衝區中的DD_MOTIONCOMPCALLBACKS結構。
GUID_NonLocalVidMemCaps 查詢驅動程式是否支援透過 DD_NONLOCALVIDMEMCAPS 結構所指定的任何非位置顯示記憶體功能。 如果驅動程式提供此支援的任何一項,它應該初始化並傳回 lpvData 指向之緩衝區中的DD_NONLOCALVIDMEMCAPS結構。
GUID_NTCallbacks 查詢驅動程式是否支援透過 DD_NTCALLBACKS 結構所指定的任何功能。 如果驅動程式提供此支援的任何一項,它應該初始化並傳回 lpvData 指向之緩衝區中的DD_NTCALLBACKS結構。
GUID_NTPrivateDriverCaps 查詢驅動程式是否支援透過 DD_NTPRIVATEDRIVERCAPS 結構指定的 Windows 98/Me 樣式表面建立技術。 如果驅動程式提供此支援的任何一項,它應該初始化並傳回 lpvData 指向之緩衝區中的DD_NTPRIVATEDRIVERCAPS結構。
GUID_UpdateNonLocalHeap 查詢驅動程式是否支援擷取每個非本機堆積的基位址。 如果驅動程式確實提供此支援,它應該初始化並傳回 lpvData 指向之緩衝區中的DD_UPDATENONLOCALHEAPDATA結構。
GUID_VideoPortCallbacks 查詢驅動程式是否支援 視訊埠延伸模組, (VPE) 。 如果驅動程序支援 VPE,它應該初始化並傳回 lpvData 指向之緩衝區中的DD_VIDEOPORTCALLBACKS結構。
GUID_VideoPortCaps 查詢驅動程式是否支援透過 DDVIDEOPORTCAPS 結構所指定的任何 VPE 物件功能。 如果驅動程式提供任何此支援,它應該初始化並傳回 lpvData 指向之緩衝區中的 DDVIDEOPORTCAPS 結構。
GUID_ZPixelFormats 查詢深度緩衝區所支援的像素格式。 如果驅動程式支援 Direct3D,它應該針對它支援的每個 z 緩衝區格式配置並初始化 DDPIXELFORMAT 結構的適當成員,並在 lpvData 指向的緩衝區中傳回這些專案。

dwExpectedSize

指定 DirectDraw 預期驅動程式在 lpvData 指向的緩衝區中傳回的數據位元組數目。

lpvData

指向驅動程式複製要求數據的 DirectDraw 配置緩衝區。 此緩衝區通常是 dwExpectedSize 位元元組大小。 驅動程式不能寫入超過 dwExpectedSize 數據中的位元組。 驅動程式會指定寫入 dwActualSize 成員中這個緩衝區的位元組數目。

dwActualSize

指定驅動程式傳回它在 lpvData 中寫入之數據位元組數目的位置。

ddRVal

指定驅動程式寫入 DdGetDriverInfo 回呼傳回值的位置。 DD_OK的傳回碼表示成功。 如需詳細資訊,請參閱 DirectDraw 的傳回值

備註

傳遞至 DdGetDriverInfo 呼叫之驅動程式的數據結構在 Windows 98/Me 和 Windows 2000 和更新版本之間有微差異。 在 Windows 2000 和更新版本上,數據結構稱為DD_GETDRIVERINFODATA,在 Windows 98/Me 上,數據結構稱為DDHAL_GETDRIVERINFODATA。 這兩個數據結構都包含驅動程式特定內容資訊的欄位。 在 Windows 2000 和更新版本上,DD_GETDRIVERINFODATA包含欄位 dhpdev ,可儲存所呼叫驅動程式的 DHPDEV。 只有在 Windows 98/Me 上,DDHAL_GETDRIVERINFODATA包含針對 DirectDraw 全域物件之驅動程式保留 dwReserved3 欄位複製的欄位 dwContext

規格需求

需求
標頭 ddrawint.h (包括 Winddi.h)

另請參閱

DdGetDriverInfo