AddInToken.Activate Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Активирует надстройку.
Перегрузки
| Имя | Описание |
|---|---|
| Activate<T>(AddInEnvironment) |
Активирует надстройку в среде другой надстройки. |
| Activate<T>(AddInSecurityLevel) |
Активирует надстройку с указанным уровнем доверия в новом домене приложения. |
| Activate<T>(AppDomain) |
Активирует надстройку в существующем домене приложения. |
| Activate<T>(PermissionSet) |
Активирует надстройку с указанным набором разрешений в новом домене приложения. |
| Activate<T>(AddInProcess, AddInSecurityLevel) |
Активирует надстройку во внешнем процессе в новом домене приложения и с указанным уровнем доверия. |
| Activate<T>(AddInProcess, PermissionSet) |
Активирует надстройку во внешнем процессе в новом домене приложения и с указанным набором разрешений. |
| Activate<T>(AddInSecurityLevel, String) |
Активирует надстройку в новом домене приложения с указанным именем и уровнем доверия. |
Activate<T>(AddInEnvironment)
Активирует надстройку в среде другой надстройки.
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
Параметры типа
- T
Интерфейс или абстрактный базовый тип, представляющий представление узла надстройки.
Параметры
- environment
- AddInEnvironment
Домен приложения и процесс, содержащий исходную надстройку.
Возвращаемое значение
Представление узла надстройки.
Примеры
В следующем примере активируется одна надстройка в автоматически созданном домене приложения с указанным уровнем безопасности. Затем она активирует вторую надстройку в том же домене приложения и обрабатывает ее как первую с помощью объекта первой надстройки 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))
Комментарии
Эта перегрузка метода активирует надстройку в том же домене приложения и обрабатывается как надстройка, из которой environment была получена.
Применяется к
Activate<T>(AddInSecurityLevel)
Активирует надстройку с указанным уровнем доверия в новом домене приложения.
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
Параметры типа
- T
Интерфейс или абстрактный базовый тип, представляющий представление узла надстройки.
Параметры
- trustLevel
- AddInSecurityLevel
Одно из значений перечисления, указывающее уровень доверия.
Возвращаемое значение
Представление узла надстройки.
Примеры
В следующем примере показано, как активировать надстройку, определяемую выбранным маркером, в автоматически созданном домене приложения с указанным уровнем безопасности.
//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)
Комментарии
Эта перегрузка метода загружает надстройку в автоматически созданный домен приложения. Если вы хотите указать имя нового домена приложения, используйте перегрузку Activate<T>(AddInSecurityLevel, String) .
Этот метод задает базовый каталог для домена приложения в расположении сборки надстройки. Он также ищет файл конфигурации [addinassemblyname].dll.config и, если он найден, задает для него файл конфигурации для нового домена приложения.
Применяется к
Activate<T>(AppDomain)
Активирует надстройку в существующем домене приложения.
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
Параметры типа
- T
Интерфейс или абстрактный базовый тип, представляющий представление узла надстройки.
Параметры
- target
- AppDomain
Домен приложения, в который должна быть активирована надстройка.
Возвращаемое значение
Представление узла надстройки.
Исключения
Требуется разрешение полного доверия. Вызывающий объект в цепочке вызовов не имеет достаточного разрешения.
Примеры
В следующем примере надстройка активируется в домене приложения, который используется другой надстройкой. Код для первой надстройки предоставляется в AddInToken классе.
// 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))
Комментарии
Чтобы активировать надстройку в автоматически созданном домене приложения, используйте Activate<T>(AddInSecurityLevel) перегрузку для создания нового домена приложения с указанным уровнем безопасности или Activate<T>(AddInSecurityLevel, String) перегрузкой, чтобы включить понятное имя домена приложения.
Применяется к
Activate<T>(PermissionSet)
Активирует надстройку с указанным набором разрешений в новом домене приложения.
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
Параметры типа
- T
Интерфейс или абстрактный базовый тип, представляющий представление узла надстройки.
Параметры
- permissions
- PermissionSet
Разрешения, предоставленные для надстройки.
Возвращаемое значение
Представление узла надстройки.
Исключения
permissions равно null.
Комментарии
Эта перегрузка метода загружает надстройку в автоматически созданный домен приложения. Он задает базовый каталог для домена приложения, который будет расположением сборки надстройки. Он также ищет файл [addinassemblyname].dll.config конфигурации и, если он найден, задает для него файл конфигурации для нового домена приложения.
Применяется к
Activate<T>(AddInProcess, AddInSecurityLevel)
Активирует надстройку во внешнем процессе в новом домене приложения и с указанным уровнем доверия.
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
Параметры типа
- T
Интерфейс или абстрактный базовый тип, представляющий представление узла надстройки.
Параметры
- process
- AddInProcess
Внешний процесс, в котором активируется надстройка.
- level
- AddInSecurityLevel
Одно из значений перечисления, указывающее уровень доверия.
Возвращаемое значение
Представление узла надстройки.
Примеры
В следующем примере создается новый процесс и активируется надстройка в этом процессе с полным уровнем безопасности доверия.
// 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)
Комментарии
Этот метод задает базовый каталог для домена приложения в расположении сборки надстройки. Он также ищет файл [addinassemblyname].dll.config конфигурации и, если он найден, задает для него файл конфигурации для нового домена приложения.
Применяется к
Activate<T>(AddInProcess, PermissionSet)
Активирует надстройку во внешнем процессе в новом домене приложения и с указанным набором разрешений.
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
Параметры типа
- T
Интерфейс или абстрактный базовый тип, представляющий представление узла надстройки.
Параметры
- process
- AddInProcess
Внешний процесс, в котором активируется надстройка.
- permissionSet
- PermissionSet
Необходимый набор разрешений, предоставленный для надстройки.
Возвращаемое значение
Представление узла надстройки.
Комментарии
Этот метод задает базовый каталог для домена приложения в расположении сборки надстройки. Он также ищет файл [addinassemblyname].dll.config конфигурации и, если он найден, задает для него файл конфигурации для нового домена приложения.
Применяется к
Activate<T>(AddInSecurityLevel, String)
Активирует надстройку в новом домене приложения с указанным именем и уровнем доверия.
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
Параметры типа
- T
Интерфейс или абстрактный базовый тип, представляющий представление узла надстройки.
Параметры
- trustLevel
- AddInSecurityLevel
Одно из значений перечисления, указывающее уровень доверия.
- appDomainName
- String
Понятное имя для назначения новому домену приложения.
Возвращаемое значение
Представление узла надстройки.
Комментарии
Если вам не нужно указывать доменное имя приложения, используйте перегрузку Activate<T>(AddInSecurityLevel) .
Этот метод задает базовый каталог для домена приложения в расположении сборки надстройки. Он также ищет файл [addinassemblyname].dll.config конфигурации и, если он найден, задает для него файл конфигурации для нового домена приложения.