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) |