PeerCollaboration.RegisterApplication Methode

Definition

Registriert die angegebene PeerApplication für eine Zusammenarbeit mit dem aufrufenden Peer.

public:
 static void RegisterApplication(System::Net::PeerToPeer::Collaboration::PeerApplication ^ application, System::Net::PeerToPeer::Collaboration::PeerApplicationRegistrationType type);
[System.Security.SecurityCritical]
public static void RegisterApplication (System.Net.PeerToPeer.Collaboration.PeerApplication application, System.Net.PeerToPeer.Collaboration.PeerApplicationRegistrationType type);
[<System.Security.SecurityCritical>]
static member RegisterApplication : System.Net.PeerToPeer.Collaboration.PeerApplication * System.Net.PeerToPeer.Collaboration.PeerApplicationRegistrationType -> unit
Public Shared Sub RegisterApplication (application As PeerApplication, type As PeerApplicationRegistrationType)

Parameter

application
PeerApplication

Die PeerApplication, für die der aufrufende Peer im zugeordneten Bereich (global, lokal und verbindungslokal) registriert werden soll.

type
PeerApplicationRegistrationType

Der Typ der auszuführenden Registrierung. Die Anwendung kann nur für den aufrufenden Peer oder für alle Peers, die den Computer verwenden, registriert werden.

Attribute

Ausnahmen

  • Die Path -Eigenschaft des -Objekts, das PeerApplication an application übergeben wird, ist null.

  • Die bereitgestellte Peeranwendungsinstanz verfügt über die gleiche global eindeutige Id wie eine Anwendung, die bereits registriert ist. Die vorhandene Registrierung muss aufgehoben werden, bevor eine neue Anwendung mit dem bereitgestellten Bezeichner registriert werden kann.

Die Parameter application und type dürfen nicht gleich null sein. Beide Parameter müssen angegeben werden.

Der Typparameter ist in der PeerApplicationRegistrationType-Enumeration nicht auf einen bekannten Wert festgelegt.

Der RegisterApplication(PeerApplication, PeerApplicationRegistrationType)-Vorgang kann nicht abgeschlossen werden, solange der Aufrufer sich nicht bei der Infrastruktur angemeldet hat.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie Sie eine Anwendung bei der Infrastruktur für die Zusammenarbeit registrieren:

// Registering Notepad.exe as a collab application with a fixed GUID.
// Note: If you're using the application to send invitations,
// the same application with the same GUID must be registered on the remote peer machine.
private static PeerApplication RegisterCollabApp()
{
    PeerApplication application = null;
    string pathToApp = "%SystemRoot%\\notepad.exe";
    Guid appGuid = new Guid(0xAAAAAAAA, 0xFADE, 0xDEAF, 0xBE, 0xEF, 0xFF, 0xEE, 0xDD, 0xCC, 0xBB, 0xAE);

    application = new PeerApplication();
    application.Id = appGuid;
    application.Path = pathToApp;
    application.Description = "Peer Collaboration Sample -- notepad.exe";
    application.PeerScope = PeerScope.All;
    application.CommandLineArgs = "n";
    application.Data = ASCIIEncoding.ASCII.GetBytes("Test");

    Console.WriteLine("Attempting to register the application \"notepad.exe\"...");
    try
    {

        PeerApplicationCollection pac = PeerCollaboration.GetLocalRegisteredApplications(PeerApplicationRegistrationType.AllUsers);
        if (pac.Contains(application))
        {
            Console.WriteLine("The application is already registered on the peer.");
        }
        else
        {
            PeerCollaboration.RegisterApplication(application, PeerApplicationRegistrationType.AllUsers);
            Console.WriteLine("Application registration succeeded!");
        }
    }
    catch (ArgumentException argEx)
    {
        Console.WriteLine("The application was previously registered with the Peer Collaboration Infrastructure: {0}.", argEx.Message);
    }
    catch (PeerToPeerException p2pEx)
    {
        Console.WriteLine("The application failed to register with the Peer Collaboration Infrastructure: {0}", p2pEx.Message);
    }
    catch (Exception ex)
    {
        Console.WriteLine("An unexpected exception occurred when trying to register the application: {0}.", ex.Message);
    }
    return application;
}

Hinweise

Der aufrufende Peer muss sich vor dem Aufrufen dieser Methode bei der Peerzusammenarbeitsinfrastruktur mit der SignIn -Methode anmelden.

Für den Zugriff auf diese Methode ist eine PermissionState von Unrestrictederforderlich. Dieser Zustand wird erstellt, wenn die Peer Zusammenarbeitssitzung beginnt.

Gilt für: