DdQueryDirectDrawObject 函式 (ddrawgdi.h)
[此函式可能會隨著每個作業系統修訂而變更。 請改用 Microsoft DirectDraw 和 Microsoft Direct3DAPIs;這些 API 會隔離應用程式與這類操作系統變更,並隱藏與顯示驅動程式直接互動所涉及的許多其他困難。
NtGdiDdQueryDirectDrawObject 函式的包裝函式,並查詢先前為功能建立的核心模式表示法。
GdiEntry2 定義為此函式的別名。
語法
BOOL DdQueryDirectDrawObject(
LPDDRAWI_DIRECTDRAW_GBL pDirectDrawGlobal,
LPDDHALINFO pHalInfo,
LPDDHAL_DDCALLBACKS pDDCallbacks,
LPDDHAL_DDSURFACECALLBACKS pDDSurfaceCallbacks,
LPDDHAL_DDPALETTECALLBACKS pDDPaletteCallbacks,
LPD3DHAL_CALLBACKS pD3dCallbacks,
LPD3DHAL_GLOBALDRIVERDATA pD3dDriverData,
LPDDHAL_DDEXEBUFCALLBACKS pD3dBufferCallbacks,
LPDDSURFACEDESC pD3dTextureFormats,
LPDWORD pdwFourCC,
LPVIDMEM pvmList
);
參數
pDirectDrawGlobal
先前使用 DdCreateDirectDrawObject 建立核心端對象的使用者模式 DirectDraw 物件的指標。
pHalInfo
將填入裝置功能的 DDHALINFO 結構的指標。 如需詳細資訊,請參閱 DDK 檔。
pDDCallbacks
回呼指標數據表的指標。 數據表會填入 Gdi32.dll 內模擬 DirectDraw 顯示驅動程式之函式的指標。 此回呼數據表與DDHAL_DDCALLBACKS結構相同,對應至 DDK 檔中討論 的DD_CALLBACKS 結構。
pDDSurfaceCallbacks
介面回呼指標數據表的指標。 數據表會填入 Gdi32.dll 內模擬 DirectDraw 顯示驅動程式之函式的指標。 此回呼數據表與DDHAL_DDSURFACECALLBACKS結構相同,對應至 DDK 檔中討論 的DD_SURFACECALLBACKS 結構。
pDDPaletteCallbacks
調色盤回呼指標的數據表指標。 數據表會填入 Gdi32.dll 內模擬 DirectDraw 顯示驅動程式之函式的指標。 此回呼數據表與DDHAL_DDPALETTECALLBACKS結構相同,對應至 DDK 檔中討論 的DD_PALETTECALLBACKS 結構。
pD3dCallbacks
Direct3D 回呼指標的數據表指標。 數據表會填入 Gdi32.dll 內模擬 Direct3D 顯示器驅動程式之函式的指標。 此回呼數據表與 DDK 檔中討論 的D3DHAL_CALLBACKS 結構相同。
pD3dDriverData
D3DHAL_GLOBALDRIVERDATA數據的指標,如 DDK 檔中所述。
pD3dBufferCallbacks
回呼指標數據表的指標。 數據表會填入 Gdi32.dll 內模擬 Direct3D 顯示器驅動程式之函式的指標。 此回呼數據表與DDHAL_DDEXEBUFCALLBACKS結構相同,其對應至 DDK 檔中討論的 DD_D3DBUFCALLBACKS 結構,不同之處在於 DD_D3DBUFCALLBACKS 中的成員 XxxD3DBuffer 會取代為 DDHAL_DDEXEBUFCALLBACKS 中的 XxxExecuteBuffer。
pD3dTextureFormats
定義允許紋理格式集合之 DDSURFACEDESC 結構的數位指標。
pdwFourCC
支援的 四個字元代碼清單指標, (FOURCC) 介面格式。 可以是 NULL。
pvmList
影片記憶體堆積描述項清單的指標。 可以是 NULL。 不會使用此參數,因為視訊記憶體管理會在核心模式中完全處理。
傳回值
如果成功,此函式會傳回 TRUE;否則會傳回 FALSE。
備註
此函式的呼叫是設計成在雙步驟程式中進行。 在第一個步驟中, pdwFourCC、 pvmList 和 pD3dTextureFormats 應該是 NULL,而 DdQueryDirectDrawObject 將會填入 DDHALINFO。ddCaps。dwNumFourCCCodes, DDHALINFO.vmiData。dwNumHeaps 和 D3DHAL_GLOBALDRIVERDATA。dwNumTextureFormats ,其中包含要傳回的項目數。 第二次呼叫時,呼叫端應該配置指定大小的陣列,並傳遞這些指標,而不是 pdwFourCC、pvmList 和 pD3dTextureFormats 參數中的 NULL 值。 數位接著會填入適當的數據。
建議您使用 DirectDraw 和 Direct3D API 來建立和管理圖形裝置物件。 這些建構會以簡化且與操作系統無關的方式抽象化裝置建立程式。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | ddrawgdi.h |