共用方式為


初始化與 Direct3D User-Mode顯示驅動程式的通訊

若要初始化與 Microsoft Direct3D 使用者模式顯示驅動程式 DLL 版本 11 DDI 的通訊,Direct3D 執行時間會先載入 DLL。 Direct3D 執行時間接著會透過 DLL 的匯出資料表呼叫使用者模式顯示驅動程式的 OpenAdapter 函式,以開啟圖形配接器的實例。 OpenAdapter函式是 DLL 唯一匯出的函式。

在呼叫驅動程式的OpenAdapter函式中,執行時間會在D3DDDIARG_OPENADAPTER結構的pAdapterCallbacks成員中提供pfnQueryAdapterInfoCb配接器回呼函式。 執行時間也會在 D3DDDIARG_OPENADAPTER 的 InterfaceVersion 成員中提供其版本。 使用者模式顯示驅動程式必須確認它可以使用這個版本的執行時間。 使用者模式顯示驅動程式會在 D3DDDIARG_OPENADAPTER 的 pAdapterFuncs 成員中傳回其配接器特定函式的資料表。

使用者模式顯示驅動程式應該呼叫 pfnQueryAdapterInfoCb 配接器回呼函式,以從顯示迷你埠驅動程式查詢圖形硬體功能。

執行時間會呼叫使用者模式顯示驅動程式的 CreateDevice 函式 (其中一個驅動程式的配接器特定函式) ,以建立用來處理轉譯狀態集合的顯示裝置,以及完成初始化。 初始化完成時,Direct3D 執行時間可以呼叫 顯示驅動程式提供的函式,而使用者模式顯示驅動程式可以呼叫 執行時間提供的函式。

使用者模式顯示驅動程式的 CreateDevice 函式是以下列方式設定成員的 D3DDDIARG_CREATEDEVICE 結構來呼叫,以初始化使用者模式顯示驅動程式介面:

  • 執行時間會將 介面 設定為執行時間需要使用者模式顯示驅動程式的介面版本。

  • 執行時間會將 Version 設定為驅動程式可用來識別執行時間建置時間的數位。 例如,驅動程式可以使用版本號碼來區分以 Windows Vista 發行的執行時間,以及使用後續 Service Pack 發行的執行時間,其中可能包含驅動程式所需的修正程式。

  • 執行時間會設定 hDevice ,以指定驅動程式在驅動程式回呼回到執行時間時應該使用的控制碼。 驅動程式會產生唯一的控制碼,並將它傳回 hDevice中的執行時間。 執行時間應該會在後續的驅動程式呼叫中使用傳回 的 hDevice 控制碼。

  • 執行時間會在pCallbacks指向的D3DDDI_DEVICECALLBACKS結構中,提供其裝置特定回呼函式的資料表。 使用者模式顯示驅動程式會呼叫執行時間提供的回呼函式,以存取顯示迷你埠驅動程式中的核心模式服務。

  • 使用者模式顯示驅動程式會在pDeviceFuncs指向的 D3DDDI_DEVICEFUNCS結構中傳回其裝置特定函式的資料表。

注意

(可同時存在的圖形內容) 顯示裝置數目只會受限於可用的系統記憶體。