IMsTscAxEvents 介面
包含從與用戶端控制事件相關的伺服器接收資訊的方法。 事件包括連線和中斷連線、全螢幕模式要求、成功登入和錯誤狀況。
成員
IMsTscAxEvents介面繼承自IDispatch介面。 IMsTscAxEvents 也有下列類型的成員:
方法
IMsTscAxEvents介面具有這些方法。
方法 | Description |
---|---|
OnAuthenticationWarningDismissed | 在 ActiveX 控制項顯示驗證對話方塊之後呼叫,例如憑證錯誤對話方塊) (。 |
OnAuthenticationWarningDisplayed | 例如,在 ActiveX 控制項顯示驗證對話方塊 (之前呼叫,例如憑證錯誤對話方塊) 。 |
OnAutoReconnected | 當用戶端控制項自動重新連線到遠端會話時呼叫。 |
OnAutoReconnecting | 當用戶端正在自動與 RD 工作階段主機伺服器重新連線會話時呼叫。 |
OnAutoReconnecting2 | 當用戶端正在自動與 RD 工作階段主機伺服器重新連線會話時呼叫。 |
OnChannelReceivedData | 當用戶端在可編寫腳本的虛擬通道上收到資料時呼叫。 |
OnConfirmClose | 當用戶端呼叫 IMsRdpClient::RequestClose 方法時呼叫。 |
OnConnected | 當用戶端控制項正在與 RD 工作階段主機伺服器建立連線時呼叫。 |
OnConnecting | 當用戶端控制項開始連線到伺服器以回應 對 IMsTscAx::Connect的呼叫時呼叫。 |
OnConnectionBarPullDown | 當使用者在連接列上拖曳時呼叫。 |
OnDevicesButtonPressed | 按下連線列中的 [裝置] 按鈕時呼叫。 |
OnDisconnected | 當用戶端控制項與 RD 工作階段主機伺服器中斷連線時呼叫。 |
OnEnterFullScreenMode | 當用戶端進入全螢幕模式時呼叫。 例如,當使用者按下全螢幕模式 快速鍵 組合時,會呼叫此事件, (CTRL+ALT+BREAK) 。 |
OnFatalError | 當用戶端控制項遇到嚴重錯誤時呼叫。 |
OnFocusReleased | 按下放開焦點按鍵組合時呼叫。 例如,當使用者按下 CTRL+ALT+向左鍵或 CTRL+ALT+向右鍵組合時,就會呼叫此事件。 |
OnIdleTimeoutNotification | 當使用者在 IMsRdpClientAdvancedSettings::p ut_MinutesToIdleTimeout 方法所設定的時間期間內沒有滑鼠或鍵盤輸入時呼叫。 |
OnLeaveFullScreenMode | 用戶端離開全螢幕模式時呼叫。 例如,當使用者按下全螢幕模式 快速鍵 組合時,會呼叫此事件, (CTRL+ALT+BREAK) 。 |
OnLoginComplete | 當用戶端控制項成功登入 RD 工作階段主機伺服器時呼叫,並遵循 [Windows 登入] 對話方塊的顯示。 |
OnLogonError | 發生登入錯誤或其他登入事件時呼叫。 |
OnMouseInputModeChanged | 當滑鼠輸入模式變更時呼叫。 |
OnNetworkStatusChanged | 當網路狀態變更時呼叫。 |
OnReceivedTSPublicKey | 當用戶端從伺服器擷取公開金鑰時,于連接順序期間呼叫。 只有在 NotifyTSPublicKey 屬性 VARIANT_TRUE時,才會呼叫此事件。 |
OnRemoteDesktopSizeChange | 呼叫 以指出遠端桌面上的用戶端控制項大小已變更,以回應用戶端控制作業。 |
OnRemoteProgramDisplayed | 在顯示 RemoteApp 程式時呼叫。 |
OnRemoteProgramResult | 當 RemoteApp 程式將結果傳回給用戶端控制項時呼叫。 |
OnRemoteWindowDisplayed | 在顯示 RemoteApp 視窗時呼叫。 |
OnRequestContainerMinimize | 當使用者以全螢幕模式按下連線列上的 [最小化 ] 按鈕時呼叫。 引發此事件是容器應用程式將本身最小化的要求。 |
OnRequestGoFullScreen | 當用戶端要求切換到全螢幕模式,並呼叫 IMsTscAdvancedSettings::p ut_ContainerHandledFullScreen 方法以將 ContainerHandledFullScreen 屬性設定為非零值時呼叫。 |
OnRequestLeaveFullScreen | 當用戶端要求離開全螢幕模式且 IMsTscAdvancedSettings::p ut_ContainerHandledFullScreen 屬性已設定為非零值時呼叫。 |
OnServiceMessageReceived | 當用戶端收到系統訊息時呼叫。 |
OnUserNameAcquired | 由 控制項取得使用者名稱時呼叫。 |
OnWarning | 當用戶端控制項遇到非嚴重錯誤狀況時呼叫。 |
備註
如需遠端桌面 Web 連線的詳細資訊,請參閱 遠端桌面 Web 連線的需求。
RDP 用戶端控制物件 (MsRdpClient、 MsRdpClientNonScriptable 及其衍生專案) 是可連線的物件。 若要從遠端桌面 ActiveX 控制項接收遠端會話的相關事件,應用程式可以實作 IMstscAxEvents ,並執行下列步驟。
- 在 RDP 用戶端控制項物件上呼叫 IUnknown::QueryInterface ,以取得 IConnectionPointContainer 介面的指標。
- 呼叫 IConnectionPointContainer::FindConnectionPoint,並將
__uuidof(IMsTscAxEvents)
指定為 riid 參數,以取得用戶端控制項事件的 IConnectionPoint 介面指標。 - 呼叫 IConnectionPoint::Advise 以指定要分派事件的 IMsTscAxEvents 呼叫應用程式本身實作。
實作 IDispatch::Invoke時,應用程式可以使用下列 DISPID。
dispIdMember | 分派至方法 |
---|---|
DISPID_CONNECTING = 1 | OnConnecting |
DISPID_CONNECTED = 2 | OnConnected |
DISPID_LOGINCOMPLETE = 3 | OnLoginComplete |
DISPID_DISCONNECTED = 4 | OnDisconnected |
DISPID_ENTERFULLSCREENMODE = 5 | OnEnterFullScreenMode |
DISPID_LEAVEFULLSCREENMODE = 6 | OnLeaveFullScreenMode |
DISPID_CHANNELRECEIVEDDATA = 7 | OnChannelReceivedData |
DISPID_REQUESTGOFULLSCREEN = 8 | OnRequestGoFullScreen |
DISPID_REQUESTLEAVEFULLSCREEN = 9 | OnRequestLeaveFullScreen |
DISPID_FATALERROR = 10 | OnFatalError |
DISPID_WARNING = 11 | OnWarning |
DISPID_REMOTEDESKTOPSIZECHANGE = 12 | OnRemoteDesktopSizeChange |
DISPID_IDLETIMEOUTNOTIFICATION = 13 | OnIdleTimeoutNotification |
DISPID_REQUESTCONTAINERMINIMIZE = 14 | OnRequestContainerMinimize |
DISPID_CONFIRMCLOSE = 15 | OnConfirmClose |
DISPID_RECEIVEDTSPUBLICKEY = 16 | OnReceivedTSPublicKey |
DISPID_AUTORECONNECTING = 17 | OnAutoReconnecting |
DISPID_INTERNALDIALOGDISPLAYED = 18 | OnAuthenticationWarningDisplayed |
DISPID_INTERNALDIALOGDISMISSED = 19 | OnAuthenticationWarningDismissed |
DISPID_ONREMOTEPROGRAMRESULT = 20 | OnRemoteProgramResult |
DISPID_ONREMOTEPROGRAMDISPLAYED = 21 | OnRemoteProgramDisplayed |
DISPID_LOGONERROR = 22 | OnLogonError |
DISPID_FOCUSRELEASED = 23 | OnFocusReleased |
DISPID_USERNAMEACQUIRED = 24 | OnUserNameAcquired |
DISPID_MOUSEINPUTMODECHANGED = 26 | OnMouseInputModeChanged |
DISPID_ONSTATUSINFO = 27 | 無。 提供應用程式的VT_UI4狀態碼。 應用程式可以將 'pDispParams-rgvarg > [0].ulVal'' 中包含的狀態碼傳遞至 IMsRdpClient7::GetStatusText 以取得相關聯的狀態文字。 |
DISPID_SERVICEMESSAGERECEIVED = 28 | OnServiceMessageReceived |
DISPID_ONREMOTEWINDOWDISPLAYED = 29 | OnRemoteWindowDisplayed |
DISPID_CONNECTIONBARPULLDOWN = 30 | OnConnectionBarPullDown |
DISPID_ONNETWORKSTATUSCHANGED = 32 | OnNetworkStatusChanged |
DISPID_AUTORECONNECTED = 33 | OnAutoReconnected |
DISPID_AUTORECONNECTING2 = 34 | OnAutoReconnecting2 |
DISPID_CONNECTIONBARDEVICES = 35 | OnDevicesButtonPressed |
DISPID_HVSINOTIFICATION = 36 | 無。 提供VT_UI4事件程式碼。 此事件會在Microsoft Defender 應用程式防護案例中發出。 它不應該在正常作業期間發出。 |
DISPID_ONWOKEUPANDRECONNECTING = 37 | 無。 遠端桌面 ActiveX 控制項不再發出此事件。 |
DISPID_ONLOCATIONREDIRECTIONENABLEDRECEIVED = 39 | 無。 此事件會通知應用程式可以使用 IMsRdpClientNonScriptable6::SendLocation2D 或 IMsRdpClientNonScriptable6::SendLocation3D 其位置至伺服器,讓用戶端的地理位置可以反映在遠端會話中。 |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows Vista |
最低支援的伺服器 |
Windows Server 2008 |
類型程式庫 |
|
DLL |
|
CLSID |
CLSID_MsRdpClient定義為 791fa017-2de3-492e-acc5-53c67a2b94d0 CLSID_MsRdpClient10定義為 C0EFA91A-EEB7-41C7-97FA-F0ED645EFB24 CLSID_MsRdpClient10NotSafeForScripting定義為 A0C63C30-F08D-4AB4-907C-34905D770C7D CLSID_MsRdpClient2定義為 9059F30F-4EB1-4BD2-9FDC-36F43A218F4A CLSID_MsRdpClient2a定義為 971127BB-259F-48C2-BD75-5F97A3331551 CLSID_MsRdpClient2NotSafeForScripting定義為 3523C2FB-4031-44E4-9A3B-F1E94986EE7F CLSID_MsRdpClient3定義為 7584C670-2274-4EFB-B00B-D6AABA6D3850 CLSID_MsRdpClient3a定義為 6A6F4B83-45C5-4CA9-BDD9-0D81C12295E4 CLSID_MsRdpClient3NotSafeForScripting定義為 ACE575FD-1FCF-4074-9401-EBAB990FA9DE CLSID_MsRdpClient4定義為 4EDCB26C-D24C-4E72-AF07-B576699AC0DE CLSID_MsRdpClient4a定義為 54CE37E0-9834-41AE-9896-4DAB69DC022B CLSID_MsRdpClient4NotSafeForScripting定義為 6AE29350-321B-42BE-BBE5-12FB5270C0DE CLSID_MsRdpClient5定義為 4EB89FF4-7F78-4A0F-8B8D-2BF02E94E4B2 CLSID_MsRdpClient5NotSafeForScripting定義為 4EB2F086-C818-447E-B32C-C51CE2B30D31 CLSID_MsRdpClient6定義為 7390F3D8-0439-4C05-91E3-CF5CB290C3D0 CLSID_MsRdpClient6NotSafeForScripting定義為 D2EA46A7-C2BF-426B-AF24-E19C44456399 CLSID_MsRdpClient7定義為 A9D7038D-B5ED-472E-9C47-94BEA90A5910 CLSID_MsRdpClient7NotSafeForScripting定義為 54D38BF7-B1EF-4479-9674-1BD6EA465258 CLSID_MsRdpClient8定義為 5F681803-2900-4C43-A1CC-CF405404A676 CLSID_MsRdpClient8NotSafeForScripting定義為 A3BC03A0-041D-42E3-AD22-882B7865C9C5 CLSID_MsRdpClient9定義為 301B94BA-5D25-4A12-BFFE-3B6E7A616585 CLSID_MsRdpClient9NotSafeForScripting定義為 8B918B82-7985-4C24-89DF-C33AD2BBFBCD CLSID_MsRdpClientNotSafeForScripting定義為 7CACBD7B-0D99-468F-AC33-22E495C0AFE5 CLSID_MsTscAx定義為 1FB464C8-09BB-4017-A2F5-EB742F04392F CLSID_MsTscAxNotSafeForScripting定義為 A41A4187-5A86-4E26-B40A-856F9035D9CB |
IID |
IID_IMsTscAxEvents定義為 336d5562-efa8-482e-8cb3-c5c0fc7a7db6 |