AddInToken.Activate Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Aktiviert ein Add-In.
Überlädt
Activate<T>(AddInEnvironment) |
Aktiviert ein Add-In in der Umgebung eines anderen Add-Ins. |
Activate<T>(AddInSecurityLevel) |
Aktiviert ein Add-In mit einer angegebenen Vertrauensebene in einer neuen Anwendungsdomäne. |
Activate<T>(AppDomain) |
Aktiviert ein Add-In in einer vorhandenen Anwendungsdomäne. |
Activate<T>(PermissionSet) |
Aktiviert ein Add-In mit einem angegebenen Berechtigungssatz in einer neuen Anwendungsdomäne. |
Activate<T>(AddInProcess, AddInSecurityLevel) |
Aktiviert ein Add-In mit einer angegebenen Vertrauensebene in einem externen Prozess in einer neuen Anwendungsdomäne. |
Activate<T>(AddInProcess, PermissionSet) |
Aktiviert ein Add-In mit einem angegebenen Berechtigungssatz in einem externen Prozess in einer neuen Anwendungsdomäne. |
Activate<T>(AddInSecurityLevel, String) |
Aktiviert ein Add-In mit einem angegebenen Namen und einer angegebenen Vertrauensebene in einer neuen Anwendungsdomäne. |
Activate<T>(AddInEnvironment)
Aktiviert ein Add-In in der Umgebung eines anderen Add-Ins.
public:
generic <typename T>
T Activate(System::AddIn::Hosting::AddInEnvironment ^ environment);
public T Activate<T> (System.AddIn.Hosting.AddInEnvironment environment);
member this.Activate : System.AddIn.Hosting.AddInEnvironment -> 'T
Public Function Activate(Of T) (environment As AddInEnvironment) As T
Typparameter
- T
Die Schnittstelle oder der abstrakte Basistyp, der die Hostansicht des Add-Ins darstellt.
Parameter
- environment
- AddInEnvironment
Die Anwendungsdomäne und der Prozess, die das ursprüngliche Add-In enthalten.
Gibt zurück
Die Hostansicht des Add-Ins.
Beispiele
Im folgenden Beispiel wird ein Add-In in einer automatisch generierten Anwendungsdomäne mit einer angegebenen Sicherheitsstufe aktiviert. Anschließend aktiviert es ein zweites Add-In in derselben Anwendungsdomäne und demselben Prozess wie das erste, indem das Objekt des ersten Add-Ins AddInEnvironment verwendet wird.
// Get the AddInController of a
// currently actived add-in (CalcAddIn).
AddInController aiController = AddInController.GetAddInController(CalcAddIn);
// Select another token.
AddInToken selectedToken2 = ChooseAddIn(tokens);
// Activate a second add-in, CalcAddIn2, in the same
// appliation domain and process as the first add-in by passing
// the first add-in's AddInEnvironment object to the Activate method.
AddInEnvironment aiEnvironment = aiController.AddInEnvironment;
Calculator CalcAddIn2 =
selectedToken2.Activate<Calculator>(aiEnvironment);
// Get the AddInController for the second add-in to compare environments.
AddInController aiController2 = AddInController.GetAddInController(CalcAddIn2);
Console.WriteLine("Add-ins in same application domain: {0}", aiController.AppDomain.Equals(aiController2.AppDomain));
Console.WriteLine("Add-ins in same process: {0}", aiEnvironment.Process.Equals(aiController2.AddInEnvironment.Process));
' Get the AddInController of a
' currently activated add-in (CalcAddIn).
Dim aiController As AddInController = AddInController.GetAddInController(CalcAddIn)
' Select another token.
Dim selectedToken2 As AddInToken = ChooseAddIn(tokens)
' Activate a second add-in, CalcAddIn2, in the same
' appliation domain and process as the first add-in by passing
' the first add-in's AddInEnvironment object to the Activate method.
Dim aiEnvironment As AddInEnvironment = aiController.AddInEnvironment
Dim CalcAddIn2 As Calculator = _
selectedToken2.Activate(Of Calculator)(aiEnvironment)
' Get the AddInController for the second add-in to compare environments.
Dim aiController2 As AddInController = AddInController.GetAddInController(CalcAddIn2)
Console.WriteLine("Add-ins in same application domain: {0}", _
aiController.AppDomain.Equals(aiController2.AppDomain))
Console.WriteLine("Add-ins in same process: {0}", _
aiEnvironment.Process.Equals(aiController2.AddInEnvironment.Process))
Hinweise
Diese Methodenüberladung aktiviert das Add-In in derselben Anwendungsdomäne und demselben Prozess wie das Add-In, von dem environment
abgerufen wurde.
Weitere Informationen
Gilt für:
Activate<T>(AddInSecurityLevel)
Aktiviert ein Add-In mit einer angegebenen Vertrauensebene in einer neuen Anwendungsdomäne.
public:
generic <typename T>
T Activate(System::AddIn::Hosting::AddInSecurityLevel trustLevel);
public T Activate<T> (System.AddIn.Hosting.AddInSecurityLevel trustLevel);
member this.Activate : System.AddIn.Hosting.AddInSecurityLevel -> 'T
Public Function Activate(Of T) (trustLevel As AddInSecurityLevel) As T
Typparameter
- T
Die Schnittstelle oder der abstrakte Basistyp, der die Hostansicht des Add-Ins darstellt.
Parameter
- trustLevel
- AddInSecurityLevel
Einer der Enumerationswerte, der die Vertrauensebene angibt.
Gibt zurück
Die Hostansicht des Add-Ins.
Beispiele
Das folgende Beispiel zeigt, wie Sie ein durch das ausgewählte Token identifiziertes Add-In in einer automatisch generierten Anwendungsdomäne mit einer angegebenen Sicherheitsstufe aktivieren.
//Ask the user which add-in they would like to use.
AddInToken selectedToken = ChooseAddIn(tokens);
//Activate the selected AddInToken in a new
//application domain with the Internet trust level.
Calculator CalcAddIn = selectedToken.Activate<Calculator>(AddInSecurityLevel.Internet);
//Run the add-in using a custom method.
RunCalculator(CalcAddIn);
'Ask the user which add-in they would like to use.
Dim selectedToken As AddInToken = ChooseAddIn(tokens)
'Activate the selected AddInToken in a new
'application domain with the Internet trust level.
Dim CalcAddIn As Calculator = selectedToken.Activate(Of Calculator)(AddInSecurityLevel.Internet)
'Run the add-in using a custom method.
RunCalculator(CalcAddIn)
Hinweise
Diese Methode lädt das Add-In in eine automatisch generierte Anwendungsdomäne. Wenn Sie einen Namen für die neue Anwendungsdomäne angeben möchten, verwenden Sie die Activate<T>(AddInSecurityLevel, String) Überladung.
Mit dieser Methode wird das Basisverzeichnis für die Anwendungsdomäne als Speicherort der Add-In-Assembly festgelegt. Außerdem sucht sie nach der Konfigurationsdatei [addinassemblyname].dll.config und legt sie, falls gefunden, als Konfigurationsdatei für die neue Anwendungsdomäne fest.
Weitere Informationen
Gilt für:
Activate<T>(AppDomain)
Aktiviert ein Add-In in einer vorhandenen Anwendungsdomäne.
public:
generic <typename T>
T Activate(AppDomain ^ target);
public T Activate<T> (AppDomain target);
member this.Activate : AppDomain -> 'T
Public Function Activate(Of T) (target As AppDomain) As T
Typparameter
- T
Die Schnittstelle oder der abstrakte Basistyp, der die Hostansicht des Add-Ins darstellt.
Parameter
- target
- AppDomain
Die Anwendungsdomäne, in der das Add-In aktiviert werden soll.
Gibt zurück
Die Hostansicht des Add-Ins.
Ausnahmen
Es wird eine Berechtigung mit vollständiger Vertrauenswürdigkeit gefordert. Ein Aufrufer in der Kette von Aufrufen verfügt nicht über ausreichende Berechtigungen.
Beispiele
Im folgenden Beispiel wird ein Add-In in einer Anwendungsdomäne aktiviert, die von einem anderen Add-In verwendet wird. Der Code für das erste Add-In wird in der AddInToken -Klasse bereitgestellt.
// Get the application domain
// of an existing add-in (CalcAddIn).
AddInController aiCtrl = AddInController.GetAddInController(CalcAddIn);
AppDomain AddInAppDom = aiCtrl.AppDomain;
// Activate another add-in in the same application domain.
Calculator CalcAddIn3 =
selectedToken2.Activate<Calculator>(AddInAppDom);
// Show that CalcAddIn3 was loaded
// into CalcAddIn's application domain.
AddInController aic = AddInController.GetAddInController(CalcAddIn3);
Console.WriteLine("Add-in loaded into existing application domain: {0}",
aic.AppDomain.Equals(AddInAppDom));
' Get the application domain
' of an existing add-in (CalcAddIn).
Dim aiCtrl As AddInController = AddInController.GetAddInController(CalcAddIn)
Dim AddInAppDom As AppDomain = aiCtrl.AppDomain
' Activate another add-in in the same appliation domain.
Dim CalcAddIn3 As Calculator = selectedToken2.Activate(Of Calculator)(AddInAppDom)
' Show that the CalcAddIn3 was loaded
' into CalcCaddIn's application domain.
Dim aic As AddInController = AddInController.GetAddInController(CalcAddIn3)
Console.WriteLine("Add-in loaded into existing application domain: {0}", _
aic.AppDomain.Equals(AddInAppDom))
Hinweise
Um ein Add-In in einer automatisch generierten Anwendungsdomäne zu aktivieren, verwenden Sie die Activate<T>(AddInSecurityLevel) Überladung, um eine neue Anwendungsdomäne mit einer angegebenen Sicherheitsstufe zu generieren, oder die Activate<T>(AddInSecurityLevel, String) Überladung, um einen Anzeigenamen für die Anwendungsdomäne hinzuzufügen.
Gilt für:
Activate<T>(PermissionSet)
Aktiviert ein Add-In mit einem angegebenen Berechtigungssatz in einer neuen Anwendungsdomäne.
public:
generic <typename T>
T Activate(System::Security::PermissionSet ^ permissions);
public T Activate<T> (System.Security.PermissionSet permissions);
member this.Activate : System.Security.PermissionSet -> 'T
Public Function Activate(Of T) (permissions As PermissionSet) As T
Typparameter
- T
Die Schnittstelle oder der abstrakte Basistyp, der die Hostansicht des Add-Ins darstellt.
Parameter
- permissions
- PermissionSet
Die für das Add-In gewährten Berechtigungen.
Gibt zurück
Die Hostansicht des Add-Ins.
Ausnahmen
permissions
ist null
Hinweise
Diese Methode lädt das Add-In in eine automatisch generierte Anwendungsdomäne. Es legt das Basisverzeichnis für die Anwendungsdomäne als Speicherort der Add-In-Assembly fest. Außerdem wird nach der Konfigurationsdatei [addinassemblyname].dll.config
gesucht und, falls gefunden, die Konfigurationsdatei für die neue Anwendungsdomäne festgelegt.
Gilt für:
Activate<T>(AddInProcess, AddInSecurityLevel)
Aktiviert ein Add-In mit einer angegebenen Vertrauensebene in einem externen Prozess in einer neuen Anwendungsdomäne.
public:
generic <typename T>
T Activate(System::AddIn::Hosting::AddInProcess ^ process, System::AddIn::Hosting::AddInSecurityLevel level);
public T Activate<T> (System.AddIn.Hosting.AddInProcess process, System.AddIn.Hosting.AddInSecurityLevel level);
member this.Activate : System.AddIn.Hosting.AddInProcess * System.AddIn.Hosting.AddInSecurityLevel -> 'T
Public Function Activate(Of T) (process As AddInProcess, level As AddInSecurityLevel) As T
Typparameter
- T
Die Schnittstelle oder der abstrakte Basistyp, der die Hostansicht des Add-Ins darstellt.
Parameter
- process
- AddInProcess
Den externen Prozess, in dem das Add-In aktiviert werden soll.
- level
- AddInSecurityLevel
Einer der Enumerationswerte, der die Vertrauensebene angibt.
Gibt zurück
Die Hostansicht des Add-Ins.
Beispiele
Im folgenden Beispiel wird ein neuer Prozess erstellt und ein Add-In in diesem Prozess mit einer voll vertrauenswürdigen Sicherheitsstufe aktiviert.
// Create an external process.
AddInProcess pExternal = new AddInProcess();
// Activate an add-in in the external process
// with a full trust security level.
Calculator CalcAddIn4 =
selectedToken.Activate<Calculator>(pExternal,
AddInSecurityLevel.FullTrust);
// Show that the add-in is an external process
// by verifying that it is not in the current (host's) process.
AddInController AddinCtl = AddInController.GetAddInController(CalcAddIn4);
Console.WriteLine("Add-in in host's process: {0}",
AddinCtl.AddInEnvironment.Process.IsCurrentProcess);
' Create an external process.
Dim pExternal As New AddInProcess()
' Activate an add-in in the external process
' with a full trust security level.
Dim CalcAddIn4 As Calculator = _
selectedToken.Activate(Of Calculator)(pExternal, _
AddInSecurityLevel.FullTrust)
' Show that the add-in is an external process
' by verifying that it is not in the current (host's) process.
Dim AddinCtl As AddInController = AddInController.GetAddInController(CalcAddIn4)
Console.WriteLine("Add-in in host's process: {0}", _
AddinCtl.AddInEnvironment.Process.IsCurrentProcess)
Hinweise
Mit dieser Methode wird das Basisverzeichnis für die Anwendungsdomäne als Speicherort der Add-In-Assembly festgelegt. Außerdem wird nach der Konfigurationsdatei [addinassemblyname].dll.config
gesucht und, falls gefunden, die Konfigurationsdatei für die neue Anwendungsdomäne festgelegt.
Gilt für:
Activate<T>(AddInProcess, PermissionSet)
Aktiviert ein Add-In mit einem angegebenen Berechtigungssatz in einem externen Prozess in einer neuen Anwendungsdomäne.
public:
generic <typename T>
T Activate(System::AddIn::Hosting::AddInProcess ^ process, System::Security::PermissionSet ^ permissionSet);
public T Activate<T> (System.AddIn.Hosting.AddInProcess process, System.Security.PermissionSet permissionSet);
member this.Activate : System.AddIn.Hosting.AddInProcess * System.Security.PermissionSet -> 'T
Public Function Activate(Of T) (process As AddInProcess, permissionSet As PermissionSet) As T
Typparameter
- T
Die Schnittstelle oder der abstrakte Basistyp, der die Hostansicht des Add-Ins darstellt.
Parameter
- process
- AddInProcess
Den externen Prozess, in dem das Add-In aktiviert werden soll.
- permissionSet
- PermissionSet
Der für das Add-In erforderliche gewährte Berechtigungssatz.
Gibt zurück
Die Hostansicht des Add-Ins.
Hinweise
Mit dieser Methode wird das Basisverzeichnis für die Anwendungsdomäne als Speicherort der Add-In-Assembly festgelegt. Außerdem wird nach der Konfigurationsdatei [addinassemblyname].dll.config
gesucht und, falls gefunden, die Konfigurationsdatei für die neue Anwendungsdomäne festgelegt.
Gilt für:
Activate<T>(AddInSecurityLevel, String)
Aktiviert ein Add-In mit einem angegebenen Namen und einer angegebenen Vertrauensebene in einer neuen Anwendungsdomäne.
public:
generic <typename T>
T Activate(System::AddIn::Hosting::AddInSecurityLevel trustLevel, System::String ^ appDomainName);
public T Activate<T> (System.AddIn.Hosting.AddInSecurityLevel trustLevel, string appDomainName);
member this.Activate : System.AddIn.Hosting.AddInSecurityLevel * string -> 'T
Public Function Activate(Of T) (trustLevel As AddInSecurityLevel, appDomainName As String) As T
Typparameter
- T
Die Schnittstelle oder der abstrakte Basistyp, der die Hostansicht des Add-Ins darstellt.
Parameter
- trustLevel
- AddInSecurityLevel
Einer der Enumerationswerte, der die Vertrauensebene angibt.
- appDomainName
- String
Der angezeigte Name, der der neuen Anwendungsdomäne zugewiesen werden soll.
Gibt zurück
Die Hostansicht des Add-Ins.
Hinweise
Wenn Sie keinen Anwendungsdomänennamen angeben müssen, verwenden Sie die Activate<T>(AddInSecurityLevel) Überladung.
Mit dieser Methode wird das Basisverzeichnis für die Anwendungsdomäne als Speicherort der Add-In-Assembly festgelegt. Außerdem wird nach der Konfigurationsdatei [addinassemblyname].dll.config
gesucht und, falls gefunden, die Konfigurationsdatei für die neue Anwendungsdomäne festgelegt.