IMsTscAxEvents 接口

包括从服务器接收与客户端控制事件相关的信息的方法。 事件包括连接和断开连接、全屏模式请求、成功登录和错误条件。

成员

IMsTscAxEvents 接口继承自 IDispatch 接口。 IMsTscAxEvents 还具有以下类型的成员:

方法

IMsTscAxEvents 接口具有以下方法。

方法 说明
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 在显示“Windows 登录”对话框后,在客户端控件成功登录到 RD 会话主机服务器时调用。
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 客户端控件对象 (MsRdpClientMsRdpClientNonScriptable 及其派生) 是可连接对象。 若要从远程桌面 ActiveX 控件接收有关远程会话的事件,应用程序可以实现 IMstscAxEvents 并执行以下步骤。

  1. 在 RDP 客户端控件对象上调用 IUnknown::QueryInterface 以获取指向 IConnectionPointContainer 接口的指针。
  2. 调用 IConnectionPointContainer::FindConnectionPoint,指定 __uuidof(IMsTscAxEvents)riid 参数,以获取指向客户端控件事件的 IConnectionPoint 接口的指针。
  3. 调用 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::SendLocation2DIMsRdpClientNonScriptable6::SendLocation3D 到服务器的位置,以便客户端的地理位置可以反映在远程会话中。

要求

要求
最低受支持的客户端
Windows Vista
最低受支持的服务器
Windows Server 2008
类型库
MsTscAx.dll
DLL
MsTscAx.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

另请参阅

IDispatch

远程桌面 Web 连接参考