WTSVirtualChannelOpenEx 函式 (wtsapi32.h)
以類似 WTSVirtualChannelOpen 的方式建立虛擬通道。
此 API 支援靜態虛擬通道 (SVC) 和動態虛擬通道 (DVC) 建立。 如果 flags 參數為零,則其行為與 WTSVirtualChannelOpen 相同。 您可以藉由指定適當的旗標來開啟 DVC。 建立 DVC 之後,您可以針對用於 SVC 的讀取、寫入、查詢或 Close 使用相同的函式。
語法
HANDLE WTSVirtualChannelOpenEx(
[in] DWORD SessionId,
[in] LPSTR pVirtualName,
[in] DWORD flags
);
參數
[in] SessionId
遠端桌面服務會話標識碼。 若要指出目前的工作階段,請指定 WTS_CURRENT_SESSION。 您可以使用 WTSEnumerateSessions 函式來擷取指定 RD 工作階段主機伺服器上所有工作階段的識別碼。
若要能夠在其他使用者的會話上開啟虛擬通道,您必須擁有虛擬通道許可權。 如需詳細資訊,請參閱 遠端桌面服務許可權。 若要修改會話的許可權,請使用遠端桌面服務組態系統管理工具。
[in] pVirtualName
如果是 SVC,則指向包含虛擬通道名稱的 Null 終止字串。 SVC 名稱的長度限制為 CHANNEL_NAME_LEN 字元,不包括終止 Null。
在 DVC 的情況下,指向包含接聽程式端點名稱的 Null 終止字串。 DVC 名稱的長度限制為 MAX_PATH 個字元。
[in] flags
若要以 SVC 開啟通道,請為此參數指定零。 若要以 DVC 開啟通道,請指定 WTS_CHANNEL_OPTION_DYNAMIC。
開啟 DVC 時,您可以藉由指定其中一個與 WTS_CHANNEL_OPTION_DYNAMIC 值結合的 WTS_CHANNEL_OPTION_DYNAMIC_PRI_XXX 值,來指定所傳輸資料的優先順序設定。
WTS_CHANNEL_OPTION_DYNAMIC_NO_COMPRESS
停用此 DVC 的壓縮。 您必須使用 WTS_CHANNEL_OPTION_DYNAMIC 值來指定此值。
默認WTS_CHANNEL_OPTION_DYNAMIC_PRI_LOW ()
低優先順序。 數據會以低優先順序在兩端傳送。 針對所有大小的區塊傳輸使用此優先順序層級,其中傳送速率並不重要。 在幾乎所有 (95% ) 案例中,應該使用此旗標開啟通道。
WTS_CHANNEL_OPTION_DYNAMIC_PRI_MED
中優先順序。 使用此優先順序層級來傳送短控制訊息,這些訊息必須優先於低優先順序通道中的數據。
WTS_CHANNEL_OPTION_DYNAMIC_PRI_HIGH
高優先順序。 針對重要且直接影響使用者體驗的數據,請使用此優先順序層級。 傳輸大小可能會有所不同。 顯示數據屬於此類別。
WTS_CHANNEL_OPTION_DYNAMIC_PRI_REAL
實時優先順序。 只有在數據傳輸絕對重要的情況下,才使用此優先順序層級。 每個訊息的數據傳輸大小應限制為數百個字節。
傳回值
GetLastError 集合發生錯誤時為 NULL。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | wtsapi32.h |
程式庫 | Wtsapi32.lib |
Dll | Wtsapi32.dll |
API 集合 | ext-ms-win-session-wtsapi32-l1-1-0 (於 Windows 8) |