directDrawCreate 函式 (ddraw.h)
建立 DirectDraw 物件的實例。 使用此函式建立的 DirectDraw 物件不支援 DirectX 7.0 中完整的 Direct3D 介面集。 若要建立能夠公開 DirectX 7.0 中 Direct3D 所有功能的 DirectDraw 物件,請使用 DirectDrawCreateEx 函 式。
語法
HRESULT DirectDrawCreate(
[in] GUID *lpGUID,
[out] LPDIRECTDRAW *lplpDD,
[in] IUnknown *pUnkOuter
);
參數
[in] lpGUID
代表要建立之驅動程式的全域唯一標識符指標 (GUID) 。 這可以是 NULL 來指出作用中的顯示驅動程式,或者您可以傳遞下列其中一個旗標來限制作用中顯示驅動程式的行為以進行偵錯:
DDCREATE_EMULATIONONLY
DirectDraw 物件會針對所有功能使用模擬;它不會利用任何硬體支援的功能。
DDCREATE_HARDWAREONLY
DirectDraw 物件永遠不會模擬硬體不支援的功能。 嘗試呼叫需要不支援功能的方法失敗,並傳回DDERR_UNSUPPORTED。
[out] lplpDD
如果呼叫成功,要設定為有效 IDirectDraw 介面指標的變數指標。
[in] pUnkOuter
允許未來與 COM 匯總功能相容。 不過,如果此參數不是 NULL,則此函式會傳回錯誤。
傳回值
如果函式成功,傳回值會DD_OK。
如果失敗,函式可以傳回下列其中一個錯誤值:
- DDERR_DIRECTDRAWALREADYCREATED
- DDERR_GENERIC
- DDERR_INVALIDDIRECTDRAWGUID
- DDERR_INVALIDPARAMS
- DDERR_NODIRECTDRAWHW
- DDERR_OUTOFMEMORY
備註
此函式會嘗試初始化 DirectDraw 物件,然後在呼叫成功時設定物件的指標。
在具有多個監視器的計算機上,如果您為 lpGUID 指定 NULL,DirectDraw 物件會在設定正常合作層級時以模擬模式執行。 若要在這些電腦上使用硬體加速,請指定裝置的 GUID。
您必須使用 LoadLibrary 明確地連結至 Ddraw.dll,然後使用 GetProcAddress 來存取 DirectDrawCreate 函式。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | ddraw.h |
程式庫 | Ddraw.lib |
Dll | Ddraw.dll |