directDrawCreateEx 函式 (ddraw.h)
建立 DirectDraw 物件的實例,該物件支援 DirectX 7.0 中的一組 Direct3D 介面。 若要在 DirectX 7.0 中使用 Direct3D 的功能,請使用此函式建立 DirectDraw 物件。
語法
HRESULT DirectDrawCreateEx(
[in] GUID *lpGuid,
[out] LPVOID *lplpDD,
[in] REFIID iid,
[in] IUnknown *pUnkOuter
);
參數
[in] lpGuid
代表要建立之驅動程式的全域唯一識別碼指標 (GUID) 。 這可以是 Null 來指出作用中的顯示驅動程式,或者您可以傳遞下列其中一個旗標來限制作用中顯示驅動程式的行為以進行偵錯:
DDCREATE_EMULATIONONLY
DirectDraw 物件會針對所有功能使用模擬;它不會利用任何硬體支援的功能。
DDCREATE_HARDWAREONLY
DirectDraw 物件永遠不會模擬硬體不支援的功能。 嘗試呼叫需要不支援功能的方法失敗,並傳回DDERR_UNSUPPORTED。
[out] lplpDD
如果呼叫成功,要設定為有效 IDirectDraw7 介面指標的變數指標。
[in] iid
此參數必須設定為 IID_IDirectDraw7。 如果指定任何其他介面,此函式會失敗並傳回DDERR_INVALIDPARAMS。
[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 來存取 DirectDrawCreateEx 函 式。
需求
目標平台 | Windows |
標頭 | ddraw.h |
程式庫 | Ddraw.lib |
Dll | Ddraw.dll |