RemoteSystemSessionWatcher 类

定义

监视与发现远程会话相关的活动,并引发相应的事件。

public ref class RemoteSystemSessionWatcher sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 262144)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class RemoteSystemSessionWatcher final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 262144)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class RemoteSystemSessionWatcher final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 262144)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class RemoteSystemSessionWatcher
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 262144)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class RemoteSystemSessionWatcher
Public NotInheritable Class RemoteSystemSessionWatcher
继承
Object Platform::Object IInspectable RemoteSystemSessionWatcher
属性

Windows 要求

设备系列
Windows 10 Creators Update (在 10.0.15063.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v4.0 中引入)
应用功能
remoteSystem

示例

有关发现远程会话的过程,请参阅下面的代码示例。

// Discover an existing shared experience.
public void DiscoverExistingSessions() {

    // create a watcher for remote system sessions
    RemoteSystemSessionWatcher sessionWatcher = RemoteSystemSession.CreateWatcher();

    // register a handler for the "added" event
    sessionWatcher.Added += async (sender, args) => {

        // get a reference to the info about the discovered session
        RemoteSystemSessionInfo sessionInfo = args.RemoteSystemSessionInfo;

        // update the UI with the sessionInfo.DisplayName and 
        // sessionInfo.ControllerDisplayName strings. Save a reference to 
        // this RemoteSystemSessionInfo, to use when the user selects
        // this session from the UI

        //...
    };

    // Begin watching
    sessionWatcher.Start();
}

注解

调用 RemoteSystemSession.CreateWatcher 方法时,将实例化此类。

重要

在实例化此类之前,必须通过调用 RemoteSystem.RequestAccessAsync 来确认对远程系统平台的访问。

重要

必须满足以下条件才能使远程会话发现按预期工作:

  1. 客户端和主机设备都必须启用蓝牙。 会话发现可能通过 LAN 发现工作,但不能保证 (它取决于网络配置) 。
  2. 在主机设备上的“设置”应用中,必须将“系统 -> 共享体验”下的“跨设备共享”设置设置为“附近的所有人”。
  3. 客户端和主机应用必须具有相同的 PackageFamilyName。

属性

Status

获取此远程会话观察程序的操作状态。

方法

Start()

开始监视可发现的远程会话。 发现过程一直运行,直到调用 Stop 方法。 RemoteSystemSessionWatcher 对象以后可以再次调用其 Start 方法。

Stop()

停止监视可发现的远程会话。

事件

Added

RemoteSystemSessionWatcher 发现新的远程会话时引发。

Removed

在以前发现的远程会话消失时引发。

Updated

在以前发现的远程会话更新了其部分信息时引发。

适用于