AddInController 类

定义

提供用于执行各种任务的外接程序的访问权限。

public ref class AddInController sealed
public sealed class AddInController
type AddInController = class
Public NotInheritable Class AddInController
继承
AddInController

示例

以下示例使用 AddInController 对象在与以前激活的外接程序相同的环境中激活外接程序。

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

注解

使用此类执行以下任务:

  • AddInEnvironment使用 属性获取AddInEnvironment外接程序的对象。 然后使用该对象激活与原始外接程序相同的应用程序域和进程中的其他加载项。

  • AppDomain使用 属性获取AppDomain外接程序的对象。 然后使用该对象激活与原始外接程序相同的应用程序域中的其他加载项。 请注意,由于跨进程远程处理的限制,此方案不适用于在单独的进程中激活的加载项。

  • Token使用 属性获取AddInToken表示外接程序的对象。

  • 使用 Shutdown 方法关闭加载项。

若要获取外接程序的控制器,请调用 GetAddInController 方法并将外接程序的实例作为其参数传递。

属性

AddInEnvironment

获取一个 AddInEnvironment 对象。

AppDomain

获取包含外接程序的应用程序域。

Token

获取表示外接程序的标记。

方法

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetAddInController(Object)

获取外接程序的控制器。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
Shutdown()

禁用外接程序。

ToString()

返回表示当前对象的字符串。

(继承自 Object)

适用于