Udostępnij za pośrednictwem


AddInToken.Activate Metoda

Definicja

Aktywuje dodatek.

Przeciążenia

Activate<T>(AddInEnvironment)

Aktywuje dodatek w środowisku innego dodatku.

Activate<T>(AddInSecurityLevel)

Aktywuje dodatek z określonym poziomem zaufania w nowej domenie aplikacji.

Activate<T>(AppDomain)

Aktywuje dodatek w istniejącej domenie aplikacji.

Activate<T>(PermissionSet)

Aktywuje dodatek z określonym zestawem uprawnień w nowej domenie aplikacji.

Activate<T>(AddInProcess, AddInSecurityLevel)

Aktywuje dodatek w procesie zewnętrznym, w nowej domenie aplikacji i z określonym poziomem zaufania.

Activate<T>(AddInProcess, PermissionSet)

Aktywuje dodatek w procesie zewnętrznym, w nowej domenie aplikacji i z określonym zestawem uprawnień.

Activate<T>(AddInSecurityLevel, String)

Aktywuje dodatek w nowej domenie aplikacji z określoną nazwą i poziomem zaufania.

Activate<T>(AddInEnvironment)

Aktywuje dodatek w środowisku innego dodatku.

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

Parametry typu

T

Interfejs lub abstrakcyjny typ podstawowy reprezentujący widok hosta dodatku.

Parametry

environment
AddInEnvironment

Domena i proces aplikacji, który zawiera oryginalny dodatek.

Zwraca

T

Widok hosta dodatku.

Przykłady

Poniższy przykład aktywuje jeden dodatek w automatycznie wygenerowanej domenie aplikacji z określonym poziomem zabezpieczeń. Następnie aktywuje drugi dodatek w tej samej domenie aplikacji i przetwarza jako pierwszy przy użyciu obiektu pierwszego dodatku AddInEnvironment .

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

Uwagi

To przeciążenie metody aktywuje dodatek w tej samej domenie aplikacji i proces co dodatek, z którego environment uzyskano.

Zobacz też

Dotyczy

Activate<T>(AddInSecurityLevel)

Aktywuje dodatek z określonym poziomem zaufania w nowej domenie aplikacji.

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

Parametry typu

T

Interfejs lub abstrakcyjny typ podstawowy reprezentujący widok hosta dodatku.

Parametry

trustLevel
AddInSecurityLevel

Jedna z wartości wyliczenia, która określa poziom zaufania.

Zwraca

T

Widok hosta dodatku.

Przykłady

W poniższym przykładzie pokazano, jak aktywować dodatek zidentyfikowany przez wybrany token w automatycznie wygenerowanej domenie aplikacji z określonym poziomem zabezpieczeń.

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

Uwagi

To przeciążenie metody ładuje dodatek do automatycznie wygenerowanej domeny aplikacji. Jeśli chcesz określić nazwę nowej domeny aplikacji, użyj przeciążenia Activate<T>(AddInSecurityLevel, String) .

Ta metoda ustawia katalog podstawowy dla domeny aplikacji jako lokalizację zestawu dodatku. Wyszukuje również plik konfiguracji [addinassemblyname].dll.config i, jeśli zostanie znaleziony, ustawia go jako plik konfiguracji dla nowej domeny aplikacji.

Zobacz też

Dotyczy

Activate<T>(AppDomain)

Aktywuje dodatek w istniejącej domenie aplikacji.

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

Parametry typu

T

Interfejs lub abstrakcyjny typ podstawowy reprezentujący widok hosta dodatku.

Parametry

target
AppDomain

Domena aplikacji, w ramach którego należy aktywować dodatek.

Zwraca

T

Widok hosta dodatku.

Wyjątki

Wymagane jest uprawnienie Pełne zaufanie. Obiekt wywołujący w łańcuchu wywołań nie ma wystarczających uprawnień.

Przykłady

Poniższy przykład aktywuje dodatek w domenie aplikacji, który jest używany przez inny dodatek. Kod pierwszego dodatku jest udostępniany w AddInToken klasie .

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

Uwagi

Aby aktywować dodatek w automatycznie wygenerowanej domenie aplikacji, użyj Activate<T>(AddInSecurityLevel) przeciążenia, aby wygenerować nową domenę aplikacji z określonym poziomem zabezpieczeń lub Activate<T>(AddInSecurityLevel, String) przeciążenie, aby uwzględnić przyjazną nazwę domeny aplikacji.

Dotyczy

Activate<T>(PermissionSet)

Aktywuje dodatek z określonym zestawem uprawnień w nowej domenie aplikacji.

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

Parametry typu

T

Interfejs lub abstrakcyjny typ podstawowy reprezentujący widok hosta dodatku.

Parametry

permissions
PermissionSet

Uprawnienia przyznane dla dodatku.

Zwraca

T

Widok hosta dodatku.

Wyjątki

permissions to null.

Uwagi

To przeciążenie metody ładuje dodatek do automatycznie wygenerowanej domeny aplikacji. Ustawia katalog podstawowy dla domeny aplikacji jako lokalizację zestawu dodatku. Wyszukuje również plik [addinassemblyname].dll.config konfiguracji i, jeśli zostanie znaleziony, ustawia go jako plik konfiguracji dla nowej domeny aplikacji.

Dotyczy

Activate<T>(AddInProcess, AddInSecurityLevel)

Aktywuje dodatek w procesie zewnętrznym, w nowej domenie aplikacji i z określonym poziomem zaufania.

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

Parametry typu

T

Interfejs lub abstrakcyjny typ podstawowy reprezentujący widok hosta dodatku.

Parametry

process
AddInProcess

Proces zewnętrzny, w którym należy aktywować dodatek.

level
AddInSecurityLevel

Jedna z wartości wyliczenia, która określa poziom zaufania.

Zwraca

T

Widok hosta dodatku.

Przykłady

Poniższy przykład tworzy nowy proces i aktywuje dodatek w tym procesie z pełnym poziomem zabezpieczeń zaufania.

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

Uwagi

Ta metoda ustawia katalog podstawowy dla domeny aplikacji jako lokalizację zestawu dodatku. Wyszukuje również plik [addinassemblyname].dll.config konfiguracji i, jeśli zostanie znaleziony, ustawia go jako plik konfiguracji dla nowej domeny aplikacji.

Dotyczy

Activate<T>(AddInProcess, PermissionSet)

Aktywuje dodatek w procesie zewnętrznym, w nowej domenie aplikacji i z określonym zestawem uprawnień.

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

Parametry typu

T

Interfejs lub abstrakcyjny typ podstawowy reprezentujący widok hosta dodatku.

Parametry

process
AddInProcess

Proces zewnętrzny, w którym należy aktywować dodatek.

permissionSet
PermissionSet

Wymagany zestaw uprawnień udzielony dla dodatku.

Zwraca

T

Widok hosta dodatku.

Uwagi

Ta metoda ustawia katalog podstawowy dla domeny aplikacji jako lokalizację zestawu dodatku. Wyszukuje również plik [addinassemblyname].dll.config konfiguracji i, jeśli zostanie znaleziony, ustawia go jako plik konfiguracji dla nowej domeny aplikacji.

Dotyczy

Activate<T>(AddInSecurityLevel, String)

Aktywuje dodatek w nowej domenie aplikacji z określoną nazwą i poziomem zaufania.

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

Parametry typu

T

Interfejs lub abstrakcyjny typ podstawowy reprezentujący widok hosta dodatku.

Parametry

trustLevel
AddInSecurityLevel

Jedna z wartości wyliczenia, która określa poziom zaufania.

appDomainName
String

Przyjazna nazwa do przypisania do nowej domeny aplikacji.

Zwraca

T

Widok hosta dodatku.

Uwagi

Jeśli nie musisz określać nazwy domeny aplikacji, użyj przeciążenia Activate<T>(AddInSecurityLevel) .

Ta metoda ustawia katalog podstawowy dla domeny aplikacji jako lokalizację zestawu dodatku. Wyszukuje również plik [addinassemblyname].dll.config konfiguracji i, jeśli zostanie znaleziony, ustawia go jako plik konfiguracji dla nowej domeny aplikacji.

Dotyczy