建置IddCx 1.4驅動程式
由於針對 Windows 10 1809 版在 IddCx 1.3 中所做的變更,針對 IddCx v1.4 所建置的間接顯示驅動程式 (IDD) 可以在 Windows 10 1809 版上執行,以驗證該系統上是否有 DDI 變更。 如需詳細資訊,請參閱 建置多個 Windows 版本的 WDF 驅動程式 。
從IddCx 1.4開始,您可以執行下列動作,在Windows 10 1803版和更新版本上安裝IddCx驅動程式。 注意:此驅動程式不會載入 Windows 10 1607 到 1709 版。
- 使用 來自 Windows 驅動程式套件 的 IddCx 1.4 標頭和連結庫, (WDK) 來建置並鏈接驅動程式。
- 在建置環境中將IDDCX_MINIMUM_VERSION_REQUIRED設定為 3。 這會告訴 OS 最低 IddCx 版本,在此案例中是針對 1.3 建置驅動程式。
- 初始化 IddCx 結構時,請使用對應的 XXX_INIT 宏。 例如,使用 IDD_CX_CLIENT_CONFIG_INIT () 宏來初始化IDD_CX_CLIENT_CONFIG結構。 宏會使用運行時間程式代碼,將 [大小] 字段設定為驅動程序執行所在的 IddCx 版本正確大小。
- 使用 IDD_IS_FIELD_AVAILABLE () 宏來判斷從IddCx傳遞至驅動程序的結構是否已定義該欄位。 注意:IddCx 1.4 未將任何從 IddCx 傳遞的現有結構延伸至驅動程式,因此此宏不需要用於 IddCx 1.4。
- 使用 IDD_IS_FUNCTION_AVAILABLE () 宏來判斷驅動程序執行所在的OS上是否可使用指定的IddCx函式。 例如,請使用 IDD_IS_FUNCTION_AVAILABLE (IddCxAdapterSetRenderAdapter) 來判斷此 OS 是否支援 IddCxAdapterSetRenderAdapter () 。
下表摘要說明不同OS版本支援的IddCx版本。
作業系統版本 | OS 隨附的 IddCx 版本 | 可執行之驅動程式的 IddCx 版本 |
---|---|---|
1607 (RS1) | 1.0 | 1.0 |
1703 (RS2) | 1.0 | 1.0 |
1709 (RS3) | 1.2 | 1.0 和 1.2 |
1803 (RS4) | 1.3 | 1.0-1.3 和 1.4 以上 (*) |
1809 (RS5) | 1.3 | 1.0-1.3 和 1.4 以上 (*) |
1903 (19H1) | 1.4 | 1.0-1.3 和 1.4 以上 (*) |
1909 (19H2) | 1.4 | 1.0-1.3 和 1.4 以上 (*) |
2004 (20H1) | 1.4 | 1.0-1.3 和 1.4 以上 (*) |
N/A | 1.6 | 1.0-1.3 和 1.4 以上 (*) |
* IddCx 1.4 和更新版本 IDD 需要使用動態宏,例如 IDD_IS_FUNCTION_AVAILABLE () ,才能在運行時間決定它可以呼叫的 OS 功能。 這些動態宏定義於 iddcx.h中。
若要支援所有可能的 Windows 版本:
- 撰寫適用於 Windows 10 1607 到 1709 版的 IddCx 1.0 驅動程式。
- 為 Windows 10 1803 版和更新版本撰寫單一 IddCx 1.4 或更新版本驅動程式。