共用方式為


D3DKMTGetDisplayModeList 函式 (d3dkmthk.h)

D3DKMTGetDisplayModeList 函式會擷取可用顯示模式的清單,包括具有擴充格式的模式。

語法

NTSTATUS D3DKMTGetDisplayModeList(
  D3DKMT_GETDISPLAYMODELIST *unnamedParam1
);

參數

unnamedParam1

[in/out] pData 是包含此函式自變數之 D3DKMT_GETDISPLAYMODELIST 結構的指標。

傳回值

D3DKMTGetDisplayModeList 會傳回 NTSTATUS 值,例如下列其中一項。

傳回碼 描述
STATUS_SUCCESS 已成功擷取可用的顯示模式清單,或如果 pData-pModeList 為 NULL,pData-Mode Count 為零,則會傳回 pData-ModeCount 中的顯示模式數目。
STATUS_DEVICE_REMOVED 圖形配接器已停止。
STATUS_BUFFER_TOO_SMALL pData->pModeList 中提供的用戶端驅動程式緩衝區不夠大,無法包含要求的顯示模式清單。
STATUS_GRAPHICS_NO_AVAILABLE_VIDPN_TARGET pData->VidPnSourceId所識別的視訊簡訊沒有可用的視訊簡訊。 因此,此來源沒有可用的顯示模式。
STATUS_INVALID_PARAMETER** 已驗證參數,並判斷為不正確。

言論

若要在圖形適配卡上取得指定 VidPn 來源的顯示模式數目(pData->VidPnSourceId),用戶端驅動程式可以pData->hAdapter), 呼叫 D3DKMTGetDisplayModeList,並將 pData->pModeList 設為 NULL,並將 pData->ModeCount 設為 0。 如果此呼叫傳回STATUS_SUCCESS,則傳回 pData->ModeCount 是顯示模式的總數。 然後,用戶端驅動程式可以配置一個 ModeCountD3DKMT_DISPLAYMODE 結構的數位、將 pModeList 設定為指向此陣列,然後再次呼叫 D3DKMTGetDisplayModeList 來擷取顯示模式清單。

指定的 VidPn 來源上的顯示屬性可以在這兩個呼叫之間變更,導致顯示模式清單變更。 在此情況下,如果呼叫端提供的 D3DKMT_DISPLAYMODE 陣列不夠大,無法容納新的顯示模式清單,則此函式會傳回STATUS_BUFFER_TOO_SMALL,且傳回 ModeCount傳回的新顯示模式數目。 呼叫端可以釋放先前的 D3DKMT_DISPLAYMODE 數位列、根據新的傳回號碼配置新的 D3DKMT_DISPLAYMODE 陣列,並使用新的數位和新 D3DKMT_DISPLAYMODE 陣列再次呼叫此函式,以取得新的顯示模式清單。

要求

要求 價值
最低支援的用戶端 Windows Vista
目標平臺 普遍
標頭 d3dkmthk.h (包括 D3dkmthk.h)
連結庫 Gdi32.lib
DLL Gdi32.dll

另請參閱

D3DKMT_DISPLAYMODE

D3DKMT_GETDISPLAYMODELIST