PeerCollaboration.RegisterApplication Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zaregistruje zadaný PeerApplication objekt pro relaci spolupráce s volajícím peerem.
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)
Parametry
- application
- PeerApplication
Pro PeerApplication který se má volající partner zaregistrovat v rámci přidruženého oboru (globální, místní a místní propojení).
Typ registrace, která se má provést. Aplikace může být zaregistrovaná jenom pro volající partnerský uzel nebo pro všechny partnerské vztahy používající počítač.
- Atributy
Výjimky
Vlastnost Path objektu předaného PeerApplication do
application
jenull
.Zadaná instance partnerské aplikace má stejnou globálně jedinečnou Id hodnotu jako aplikace, která je už zaregistrovaná. Aby bylo možné zaregistrovat novou aplikaci pomocí zadaného identifikátoru, musí být registrace stávající registrace zrušena.
Parametry application
a type
nesmí být null
. Je nutné zadat oba parametry.
Parametr typu není ve výčtu nastaven na známou PeerApplicationRegistrationType hodnotu.
Operaci RegisterApplication(PeerApplication, PeerApplicationRegistrationType) nelze dokončit, dokud se volající přihlásí k infrastruktuře.
Příklady
Následující příklad kódu ukazuje, jak zaregistrovat aplikaci s infrastrukturou pro spolupráci:
// 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;
}
Poznámky
Volající partner se před voláním této metody musí přihlásit k infrastruktuře partnerské spolupráce pomocí SignIn metody .
Přístup k této metodě vyžaduje .PermissionStateUnrestricted Tento stav se vytvoří při Peer zahájení relace spolupráce.