AddInToken.Activate Méthode

Définition

Active un complément.

Surcharges

Activate<T>(AddInEnvironment)

Active un complément dans l'environnement d'un autre complément.

Activate<T>(AddInSecurityLevel)

Active un complément avec un niveau de confiance spécifié dans un nouveau domaine d'application.

Activate<T>(AppDomain)

Active un complément dans un domaine d'application existant.

Activate<T>(PermissionSet)

Active un complément avec un jeu d'autorisations spécifié dans un nouveau domaine d'application.

Activate<T>(AddInProcess, AddInSecurityLevel)

Active un complément dans un processus externe, dans un nouveau domaine d'application, et avec un niveau de confiance spécifié.

Activate<T>(AddInProcess, PermissionSet)

Active un complément dans un processus externe, dans un nouveau domaine d'application, et avec un jeu d'autorisations spécifié.

Activate<T>(AddInSecurityLevel, String)

Active un complément dans un nouveau domaine d'application avec un nom et un niveau de confiance spécifiés.

Activate<T>(AddInEnvironment)

Active un complément dans l'environnement d'un autre complément.

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

Paramètres de type

T

Interface ou type de base abstrait qui représente la vue hôte du complément.

Paramètres

environment
AddInEnvironment

Domaine d'application et processus contenant le complément d'origine.

Retours

T

Vue de l'hôte du complément.

Exemples

L’exemple suivant active un complément dans un domaine d’application généré automatiquement avec un niveau de sécurité spécifié. Il active ensuite un deuxième complément dans le même domaine d’application et le même processus que le premier en utilisant l’objet du AddInEnvironment premier complément.

// 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))

Remarques

Cette surcharge de méthode active le complément dans le même domaine d’application et processus que le complément à partir duquel environment a été obtenu.

Voir aussi

S’applique à

Activate<T>(AddInSecurityLevel)

Active un complément avec un niveau de confiance spécifié dans un nouveau domaine d'application.

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

Paramètres de type

T

Interface ou type de base abstrait qui représente la vue hôte du complément.

Paramètres

trustLevel
AddInSecurityLevel

Une des valeurs d'énumération qui spécifie le niveau de confiance.

Retours

T

Vue de l'hôte du complément.

Exemples

L’exemple suivant montre comment activer un complément, identifié par le jeton choisi, dans un domaine d’application généré automatiquement avec un niveau de sécurité spécifié.

//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)

Remarques

Cette surcharge de méthode charge le complément dans un domaine d’application généré automatiquement. Si vous souhaitez spécifier un nom pour le nouveau domaine d’application, utilisez la Activate<T>(AddInSecurityLevel, String) surcharge.

Cette méthode définit le répertoire de base du domaine d’application comme emplacement de l’assembly de complément. Il recherche également le fichier de configuration [addinassemblyname].dll.config et, s’il est trouvé, le définit comme fichier de configuration pour le nouveau domaine d’application.

Voir aussi

S’applique à

Activate<T>(AppDomain)

Active un complément dans un domaine d'application existant.

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

Paramètres de type

T

Interface ou type de base abstrait qui représente la vue hôte du complément.

Paramètres

target
AppDomain

Domaine d'application dans lequel le complément doit être activé.

Retours

T

Vue de l'hôte du complément.

Exceptions

Une autorisation de confiance totale est requise. Un appelant dans la chaîne d'appel ne dispose pas de l'autorisation suffisante.

Exemples

L’exemple suivant active un complément dans un domaine d’application utilisé par un autre complément. Le code du premier complément est fourni dans la AddInToken classe .

// 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))

Remarques

Pour activer un complément dans un domaine d’application généré automatiquement, utilisez la Activate<T>(AddInSecurityLevel) surcharge pour générer un nouveau domaine d’application avec un niveau de sécurité spécifié ou la Activate<T>(AddInSecurityLevel, String) surcharge pour inclure un nom convivial pour le domaine d’application.

S’applique à

Activate<T>(PermissionSet)

Active un complément avec un jeu d'autorisations spécifié dans un nouveau domaine d'application.

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

Paramètres de type

T

Interface ou type de base abstrait qui représente la vue hôte du complément.

Paramètres

permissions
PermissionSet

Autorisations accordées pour le complément.

Retours

T

Vue de l'hôte du complément.

Exceptions

permissions a la valeur null.

Remarques

Cette surcharge de méthode charge le complément dans un domaine d’application généré automatiquement. Il définit le répertoire de base du domaine d’application comme emplacement de l’assembly de complément. Il recherche également le fichier [addinassemblyname].dll.config de configuration et, s’il est trouvé, le définit comme fichier de configuration pour le nouveau domaine d’application.

S’applique à

Activate<T>(AddInProcess, AddInSecurityLevel)

Active un complément dans un processus externe, dans un nouveau domaine d'application, et avec un niveau de confiance spécifié.

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

Paramètres de type

T

Interface ou type de base abstrait qui représente la vue hôte du complément.

Paramètres

process
AddInProcess

le processus externe dans lequel activer le complément.

level
AddInSecurityLevel

Une des valeurs d'énumération qui spécifie le niveau de confiance.

Retours

T

Vue de l'hôte du complément.

Exemples

L’exemple suivant crée un processus et active un complément dans ce processus avec un niveau de sécurité de confiance totale.

// 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)

Remarques

Cette méthode définit le répertoire de base du domaine d’application comme emplacement de l’assembly de complément. Il recherche également le fichier [addinassemblyname].dll.config de configuration et, s’il est trouvé, le définit comme fichier de configuration pour le nouveau domaine d’application.

S’applique à

Activate<T>(AddInProcess, PermissionSet)

Active un complément dans un processus externe, dans un nouveau domaine d'application, et avec un jeu d'autorisations spécifié.

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

Paramètres de type

T

Interface ou type de base abstrait qui représente la vue hôte du complément.

Paramètres

process
AddInProcess

le processus externe dans lequel activer le complément.

permissionSet
PermissionSet

Jeu d'autorisations requis accordé pour le complément.

Retours

T

Vue de l'hôte du complément.

Remarques

Cette méthode définit le répertoire de base du domaine d’application comme emplacement de l’assembly de complément. Il recherche également le fichier [addinassemblyname].dll.config de configuration et, s’il est trouvé, le définit comme fichier de configuration pour le nouveau domaine d’application.

S’applique à

Activate<T>(AddInSecurityLevel, String)

Active un complément dans un nouveau domaine d'application avec un nom et un niveau de confiance spécifiés.

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

Paramètres de type

T

Interface ou type de base abstrait qui représente la vue hôte du complément.

Paramètres

trustLevel
AddInSecurityLevel

Une des valeurs d'énumération qui spécifie le niveau de confiance.

appDomainName
String

Nom convivial à assigner au nouveau domaine d'application.

Retours

T

Vue de l'hôte du complément.

Remarques

Si vous n’avez pas besoin de spécifier un nom de domaine d’application, utilisez la Activate<T>(AddInSecurityLevel) surcharge.

Cette méthode définit le répertoire de base du domaine d’application comme emplacement de l’assembly de complément. Il recherche également le fichier [addinassemblyname].dll.config de configuration et, s’il est trouvé, le définit comme fichier de configuration pour le nouveau domaine d’application.

S’applique à