CHANNEL_INIT_EVENT_FN回呼函式 (cchannel.h)
遠端桌面服務呼叫的應用程式定義回呼函式,以通知用戶端 DLL 的虛擬通道事件。
PCHANNEL_INIT_EVENT_FN類型會定義這個回呼函式的指標。 VirtualChannelInitEvent 是應用程式定義或連結庫定義函數名稱的佔位符。
語法
CHANNEL_INIT_EVENT_FN ChannelInitEventFn;
VOID VCAPITYPE ChannelInitEventFn(
[in] LPVOID pInitHandle,
[in] UINT event,
[in] LPVOID pData,
[in] UINT dataLength
)
{...}
參數
[in] pInitHandle
用戶端連線的句柄。 這是 VirtualChannelInit 函式的 ppInitHandle 參數中所傳回的句柄。
[in] event
指出造成通知的事件。 此參數可以是下列其中一個值。
CHANNEL_EVENT_INITIALIZED (0)
遠端桌面連線 (RDC) 用戶端初始化已完成。 pData 參數為 NULL。
CHANNEL_EVENT_CONNECTED (1)
已使用支持虛擬通道的 RD 工作階段主機伺服器建立連線。 pData 參數是具有伺服器名稱之 Null 終止字串的指標。
CHANNEL_EVENT_V1_CONNECTED (2)
已與不支持虛擬通道的 RD 工作階段主機伺服器建立連線。 pData 參數為 NULL。
CHANNEL_EVENT_DISCONNECTED (3)
RD 會話主機伺服器的連線已中斷連線。 pData 參數為 NULL。
CHANNEL_EVENT_TERMINATED (4)
用戶端已終止。 pData 參數為 NULL。
CHANNEL_EVENT_REMOTE_CONTROL_START (5)
遠端控制作業已啟動。 pData 參數為 NULL。
CHANNEL_EVENT_REMOTE_CONTROL_STOP (6)
遠端控制作業已終止。 pData 參數是包含伺服器名稱之 Null 終止字串的指標。
[in] pData
事件之其他數據的指標。 數據類型取決於事件,如先前在事件描述中所述。
[in] dataLength
指定 pData 緩衝區中數據的大小,以位元組為單位。
傳回值
此函式不會傳回值。
備註
用戶端 DLL 會使用 VirtualChannelInit 函式向遠端桌面服務註冊其 VirtualChannelInitEvent 函式。
此函式會根據每個句柄重新進入。 函式在執行時可能會呼叫,但不在同一個句柄上多次呼叫。
只有在 VirtualChannelEntry 完成之後,才會呼叫此函式。
如果 連線傳送至另一個會話,則不會傳送CHANNEL_EVENT_CONNECTED和 CHANNEL_EVENT_DISCONNECTED 事件通知。 不過,管理連線所傳送之會話的伺服器端外掛程式將會收到重新連線通知。 Tscon.exe 之類的伺服器端工具可用來傳輸連線。 如需重新連線通知的詳細資訊,請參閱監視會話 Connections 和中斷連線。
例如,如果使用者模式外掛程式必須收到已重新連線 (的通知,例如,如果必須重設其狀態) ,伺服器端外掛程式應該將通知訊息傳送給用戶端。 此通知應該使用外掛程式用來彼此通訊的通訊協定。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista |
最低支援的伺服器 | Windows Server 2008 |
目標平台 | Windows |
標頭 | cchannel.h |