Freigeben über


RemoteSystemSessionInfo Klasse

Definition

Enthält identifizierende Informationen zu einer Remotesitzung.

public ref class RemoteSystemSessionInfo 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 RemoteSystemSessionInfo final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 262144)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class RemoteSystemSessionInfo 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 RemoteSystemSessionInfo
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 262144)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class RemoteSystemSessionInfo
Public NotInheritable Class RemoteSystemSessionInfo
Vererbung
Object Platform::Object IInspectable RemoteSystemSessionInfo
Attribute

Windows-Anforderungen

Gerätefamilie
Windows 10 Creators Update (eingeführt in 10.0.15063.0)
API contract
Windows.Foundation.UniversalApiContract (eingeführt in v4.0)
App-Funktionen
remoteSystem

Beispiele

Im folgenden Codebeispiel erfahren Sie, wie Sie eine Remotesitzung vollständig ermitteln (einschließlich des Abrufens eines Verweises auf eine RemoteSystemSessionInfo-instance).

// 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();
}

Nachdem ein RemoteSystemSessionInfo-Verweis abgerufen wurde, kann er verwendet werden, um eine Joinanforderung ausstellen zu können. Im folgenden Codebeispiel erfahren Sie, wie Sie einer Remotesitzung beitreten.

public async void JoinExistingSession() {

    // request to join. sessionInfo has already been selected by user.
    RemoteSystemSessionJoinResult joinResult = await sessionInfo.JoinAsync();

    // process the result
    if (joinResult.Status == RemoteSystemSessionJoinStatus.Success) {

        // if the join was successful, acquire a reference to the session
        currentSession = joinResult.Session;

        // optionally handle the disconnected event
        currentSession.Disconnected += async (sender, args) => {
            // update the UI, using args.Reason
        };

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

    } else {
        // join request failed. optionally update UI
    }
}

Hinweise

Eine verknüpfte Sitzung wird durch ein RemoteSystemSession-Objekt dargestellt. Eine Sitzung, die bekannt ist, aber nicht verknüpft wurde, wird durch ein RemoteSystemSessionInfo-Objekt dargestellt.

Eigenschaften

ControllerDisplayName

Ruft den Computernamen des Geräts ab, das der Controller der Remotesitzung ist.

DisplayName

Ruft den öffentlich zugänglichen Namen für die Remotesitzung ab, der vom Controller der Sitzung angegeben wird.

Methoden

JoinAsync()

Gibt eine Anforderung vom aufrufenden Gerät aus, um der angegebenen Remotesitzung beizutreten.

Gilt für: