適用於IddCx 1.7版和更新版本的 匯報
此頁面描述在IddCx 1.7中所做的變更。 針對IddCx 1.7建置的單一間接顯示驅動程式 (IDD) 二進位檔可以在 Windows 10 1803 版和更新版本上執行,並使用運行時間檢查來驗證該系統上是否有 DDI 變更。 如需詳細資訊,請參閱 建置適用於多個 Windows 版本的 WDF 驅動程式 。
IddCx 1.7 變更分為下列類別:
- IddCxGetVersion 版本已更新 (主控台和遠端) 。 如需 IddCx 相關版本資訊的完整清單,請參閱IddCx版本。
- 已新增改良的滑鼠游標 DDI, (可用於控制台和遠端,但僅適用於遠端) 。
- IDDCX_ADAPTER_FLAGS_CAN_USE_MOVE_REGIONS配接器旗標已被取代 (主控台和遠端) 。
更新了IddCxGetVersion版本
在 Windows Server 2022 上 由 IddCxGetVersion 傳回的 IddCx 版本已更新為IDDCX_VERSION_IRON (0x1700) 。
已更新遠程驅動程式的滑鼠游標
1.7 之前的 IddCx 版本中的遠端識別元只會接收 程式 數據指標移動的滑鼠更新。 程序數據指標移動是由來自應用程式或伺服器上的OS的API呼叫所造成的位置變更,而不是由從遠端用戶端插入遠端會話的滑鼠輸入所造成。 這會導致遠程會話特有的一些問題。 例如:
- 在IddCx 1.6和更早版本中,遠端驅動程式無法分辨 API 呼叫是否將滑鼠位置設定為相同的位置兩次。
- 數據指標圖形或可見度中的變更無法在沒有有效位置的情況下觸發。 這不是主控台標識碼的問題。 不過,對於遠端驅動程式,當沒有任何有效的程式性位置變更時,DDI 必須提供位置值,這會導致游標在用戶端中跳躍。
若要解決這些問題,請從IddCx 1.7開始進行下列變更。
已新增IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION旗標
IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION配接器旗標已新增至 IDDCX_ADAPTER_FLAGS,以允許遠端驅動程式接收所有滑鼠位置更新。 此旗標可讓遠端驅動程序根據適配卡指出它想要接收所有游標位置變更,而不只是程式性移動。 只有在與 IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVER結合時,此旗標才有效。 如果未 IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVER設定 IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION,則 IddCxAdapterInitAsync 將會失敗。
已針對數據指標位置新增IddCxMonitorQueryHardwareCursor2 DDI
IddCxMonitorQueryHardwareCursor2 DDI 提供數據指標位置資訊。 這個 DDI 會傳回 IDARG_OUT_QUERY_HWCURSOR2 結構。 遠端和控制台驅動程式都可以呼叫此 DDI,但 IDARG_OUT_QUERY_HWCURSOR2 結構中的資訊與控制台驅動程序無關。
IDARG_OUT_QUERY_HWCURSOR2 結構會傳回下列其他資料指標資訊:
position ID (PositionId)
在IddCx 1.7之前, 游標 DDI 會使用 圖形標識碼 ,讓驅動程式知道圖形自上次更新後是否已變更。 從IddCx 1.7開始,已新增位置標識碼。 如果報告新的數據指標位置,則位置標識符值會變更,即使新位置的 X 和 Y 座標與舊位置相同也一樣。
PositionValid (位置有效旗標)
PositionValid 會向驅動程式指出數據指標信息結構中的游標位置是否有效。 此有效旗標涵蓋 X、 Y 和 PositionId 欄位。 如果未設定此旗標,則無法使用 X、 Y 和 PositionId 字段。
IDDCX_ADAPTER_FLAGS_CAN_USE_MOVE_REGIONS主控台和遠端) (旗標已被取代
由於桌面轉譯方式的變更,從IddCx 1.7移動區域開始,將不再在取得時間範圍內提供。 相反地,取得時間範圍時間所提供的已變更重新取值清單會包含影像的所有變更區域,並 IDDCX_METADATA。MoveRegionCount 一律為零。
驅動程式仍然可以設定 IddCx 1.7 和更新版本 IDDCX_ADAPTER_FLAGS_CAN_USE_MOVE_REGIONS 旗標,但不會有任何作用。 如果驅動程序的設計目的是在IddCx 1.7之前執行並設定旗標,該驅動程式必須有邏輯來處理移動;否則,使用者在IddCx 1.7系統上執行時,會看到視覺問題。