如何:为窗口提供自动化

可以提供自动为文档和工具窗口。 提供自动化可行,每当您在窗口中使用自动化对象可用,因此,该环境已不提供一个现成的自动化对象,,因为它执行与任务列表。

工具窗口的自动化

环境将处于工具窗口提供自动化通过返回标准 Window 对象遵循以下过程声明:

为工具窗口提供自动化

  1. 通过使用 VSFPROPID_ExtWindowObject 环境称为 GetProperty 方法作为 VSFPROPID 参数来获取 Window 对象。

  2. 当调用方请求的 VSPackage 特定的自动化对象的工具窗口通过 Object时,环境调用 IExtensibleObjectIVsExtensibleObjectIDispatch 接口的 QueryInterfaceIExtensibleObjectIVsExtensibleObject 提供一个 GetAutomationObject 方法。

  3. 当环境然后调用通过 NULL时的 GetAutomationObject 方法,请通过将一些特定对象响应。

  4. 如果调用 IExtensibleObjectIVsExtensibleObjectQueryInterface 失败,则环境调用 IDispatchQueryInterface

自动为文档窗口

标准 Document 对象从该环境还可用,不过,可编辑通过实现 IExtensibleObject 接口和响应其 T:EnvDTE.Document 对象的实现 GetAutomationObject

此外,可编辑提供了一些特定的自动化对象,检索通过 Object 方法,通过实现 IVsExtensibleObjectIExtensibleObject 接口。 Visual Studio 扩展性示例 提供 RTF 文档特定的自动化对象。

请参见

参考

IVsExtensibleObject