Compartir a través de


AddInToken.Activate Método

Definición

Activa un complemento.

Sobrecargas

Activate<T>(AddInEnvironment)

Activa un complemento en el entorno de otro complemento.

Activate<T>(AddInSecurityLevel)

Activa un complemento con el nivel de confianza especificado en un dominio de aplicación nuevo.

Activate<T>(AppDomain)

Activa un complemento en un dominio de aplicación existente.

Activate<T>(PermissionSet)

Activa un complemento con el conjunto de permisos especificado en un nuevo dominio de aplicación.

Activate<T>(AddInProcess, AddInSecurityLevel)

Activa un complemento en un proceso externo, en un nuevo dominio de aplicación y con el nivel de confianza especificado.

Activate<T>(AddInProcess, PermissionSet)

Activa un complemento en un proceso externo, en un nuevo dominio de aplicación y con el conjunto de permisos especificado.

Activate<T>(AddInSecurityLevel, String)

Activa un complemento en un nuevo dominio de aplicación con el nombre y el nivel de confianza especificados.

Activate<T>(AddInEnvironment)

Activa un complemento en el entorno de otro complemento.

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

Parámetros de tipo

T

Interfaz o tipo base abstracto que representa la vista de host del complemento.

Parámetros

environment
AddInEnvironment

Dominio de aplicación y proceso que contiene el complemento original.

Devoluciones

T

Vista del host del complemento.

Ejemplos

En el ejemplo siguiente se activa un complemento en un dominio de aplicación generado automáticamente con un nivel de seguridad especificado. A continuación, activa un segundo complemento en el mismo dominio de aplicación y proceso que el primero mediante el primer objeto del AddInEnvironment complemento.

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

Comentarios

Esta sobrecarga de método activa el complemento en el mismo dominio de aplicación y proceso que el complemento desde el que environment se obtuvo.

Consulte también

Se aplica a

Activate<T>(AddInSecurityLevel)

Activa un complemento con el nivel de confianza especificado en un dominio de aplicación nuevo.

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

Parámetros de tipo

T

Interfaz o tipo base abstracto que representa la vista de host del complemento.

Parámetros

trustLevel
AddInSecurityLevel

Uno de los valores de la enumeración que especifica el nivel de confianza.

Devoluciones

T

Vista del host del complemento.

Ejemplos

En el ejemplo siguiente se muestra cómo activar un complemento, identificado por el token elegido, en un dominio de aplicación generado automáticamente con un nivel de seguridad especificado.

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

Comentarios

Esta sobrecarga de método carga el complemento en un dominio de aplicación generado automáticamente. Si desea especificar un nombre para el nuevo dominio de aplicación, use la Activate<T>(AddInSecurityLevel, String) sobrecarga.

Este método establece el directorio base para que el dominio de aplicación sea la ubicación del ensamblado del complemento. También busca el archivo de configuración [addinassemblyname].dll.config y, si se encuentra, establece que sea el archivo de configuración del nuevo dominio de aplicación.

Consulte también

Se aplica a

Activate<T>(AppDomain)

Activa un complemento en un dominio de aplicación existente.

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

Parámetros de tipo

T

Interfaz o tipo base abstracto que representa la vista de host del complemento.

Parámetros

target
AppDomain

Dominio de aplicación en el que debe activarse el complemento.

Devoluciones

T

Vista del host del complemento.

Excepciones

Se exigen permisos Full Trust. Un llamador de la cadena de llamadas no tiene suficientes permisos.

Ejemplos

En el ejemplo siguiente se activa un complemento en un dominio de aplicación que otro complemento está usando. El código del primer complemento se proporciona en la AddInToken clase .

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

Comentarios

Para activar un complemento en un dominio de aplicación generado automáticamente, use la Activate<T>(AddInSecurityLevel) sobrecarga para generar un nuevo dominio de aplicación con un nivel de seguridad especificado o la Activate<T>(AddInSecurityLevel, String) sobrecarga para incluir un nombre descriptivo para el dominio de aplicación.

Se aplica a

Activate<T>(PermissionSet)

Activa un complemento con el conjunto de permisos especificado en un nuevo dominio de aplicación.

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

Parámetros de tipo

T

Interfaz o tipo base abstracto que representa la vista de host del complemento.

Parámetros

permissions
PermissionSet

Permisos concedidos para el complemento.

Devoluciones

T

Vista del host del complemento.

Excepciones

permissions es null.

Comentarios

Esta sobrecarga de método carga el complemento en un dominio de aplicación generado automáticamente. Establece el directorio base para que el dominio de aplicación sea la ubicación del ensamblado del complemento. También busca el archivo [addinassemblyname].dll.config de configuración y, si se encuentra, establece que sea el archivo de configuración del nuevo dominio de aplicación.

Se aplica a

Activate<T>(AddInProcess, AddInSecurityLevel)

Activa un complemento en un proceso externo, en un nuevo dominio de aplicación y con el nivel de confianza especificado.

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

Parámetros de tipo

T

Interfaz o tipo base abstracto que representa la vista de host del complemento.

Parámetros

process
AddInProcess

El proceso externo en el que se va a activar el complemento.

level
AddInSecurityLevel

Uno de los valores de la enumeración que especifica el nivel de confianza.

Devoluciones

T

Vista del host del complemento.

Ejemplos

En el ejemplo siguiente se crea un nuevo proceso y se activa un complemento en ese proceso con un nivel de seguridad de plena confianza.

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

Comentarios

Este método establece el directorio base para que el dominio de aplicación sea la ubicación del ensamblado del complemento. También busca el archivo [addinassemblyname].dll.config de configuración y, si se encuentra, establece que sea el archivo de configuración del nuevo dominio de aplicación.

Se aplica a

Activate<T>(AddInProcess, PermissionSet)

Activa un complemento en un proceso externo, en un nuevo dominio de aplicación y con el conjunto de permisos especificado.

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

Parámetros de tipo

T

Interfaz o tipo base abstracto que representa la vista de host del complemento.

Parámetros

process
AddInProcess

El proceso externo en el que se va a activar el complemento.

permissionSet
PermissionSet

Conjunto de permisos necesario que se concede para el complemento.

Devoluciones

T

Vista del host del complemento.

Comentarios

Este método establece el directorio base para que el dominio de aplicación sea la ubicación del ensamblado del complemento. También busca el archivo [addinassemblyname].dll.config de configuración y, si se encuentra, establece que sea el archivo de configuración del nuevo dominio de aplicación.

Se aplica a

Activate<T>(AddInSecurityLevel, String)

Activa un complemento en un nuevo dominio de aplicación con el nombre y el nivel de confianza especificados.

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

Parámetros de tipo

T

Interfaz o tipo base abstracto que representa la vista de host del complemento.

Parámetros

trustLevel
AddInSecurityLevel

Uno de los valores de la enumeración que especifica el nivel de confianza.

appDomainName
String

Nombre descriptivo que va a asignarse al nuevo dominio de aplicación.

Devoluciones

T

Vista del host del complemento.

Comentarios

Si no necesita especificar un nombre de dominio de aplicación, use la Activate<T>(AddInSecurityLevel) sobrecarga.

Este método establece el directorio base para que el dominio de aplicación sea la ubicación del ensamblado del complemento. También busca el archivo [addinassemblyname].dll.config de configuración y, si se encuentra, establece que sea el archivo de configuración del nuevo dominio de aplicación.

Se aplica a