IDCompositionDevice2::CreateSurfaceFactory 方法 (dcomp.h)
建立 Microsoft DirectComposition Surface Factory 物件,可用來建立其他 DirectComposition 介面或虛擬介面物件
語法
HRESULT CreateSurfaceFactory(
[in] IUnknown *renderingDevice,
[out] IDCompositionSurfaceFactory **surfaceFactory
);
參數
[in] renderingDevice
用來建立 DirectComposition 介面物件的 DirectX 裝置指標。 必須是實作 IDXGIDevice 或 ID2D1Device 介面之物件的指標。 此參數不得為 NULL。
[out] surfaceFactory
新建立的 Surface Factory 物件。 此參數不得為 NULL。
傳回值
如果函式成功,它會傳回S_OK。 否則,它會傳回 HRESULT 錯誤碼。 如需錯誤碼的清單,請參閱 DirectComposition 錯誤 碼。
備註
Surface Factory 可讓應用程式搭配 DirectComposition 同時使用多個單一 DXGI 或 Direct2D 裝置。 每個表面處理站都有一個 DXGI 或 Direct2D 裝置的永久關聯,但 DirectComposition 裝置可能會有任意數目的 Surface Factory。
每個 Surface Factory 都會獨立管理資源。 特別是,DirectComposition 集區介面配置可減輕表面配置和解除分配成本。 此集區是以每個表面處理站為基礎來完成。
如果使用非 NULL 轉譯Device 參數呼叫 DCompositionCreateDevice2 函式,則傳回的 DirectComposition 裝置物件在與指定轉譯裝置相關聯的涵蓋下具有隱含的 Surface Factory。 此隱含 Surface Factory 可用來服務 IDCompositionDevice::CreateSurface、 IDCompositionDevice::CreateVirtualSurface、 IDCompositionDevice2::CreateSurface 和 IDCompositionDevice2::CreateVirtualSurface 方法。
只要它所建立的任何表面或虛擬表面都保持運作,表面物件就會保持運作,只要應用程式直接保存直接參考,或間接地因為一或多個這類表面與一或多個視覺對象相關聯。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8.1 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2012 R2 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | dcomp.h |
程式庫 | Dcomp.lib |
Dll | Dcomp.dll |