Package 类

提供所需的接口的托管实现创建功能齐全 VSPackage。

继承层次结构

System.Object
  Microsoft.VisualStudio.Shell.Package
    Microsoft.VisualStudio.Shell.ExtensionPointPackage

命名空间:  Microsoft.VisualStudio.Shell
程序集:  Microsoft.VisualStudio.Shell.11.0(在 Microsoft.VisualStudio.Shell.11.0.dll 中)

语法

声明
<ComVisibleAttribute(True)> _
<PackageRegistrationAttribute> _
Public MustInherit Class Package _
    Implements IVsPackage, IServiceProvider, IOleCommandTarget, IVsPersistSolutionOpts,  _
    IServiceContainer, IServiceProvider, IVsUserSettings, IVsUserSettingsMigration, IVsUserSettingsQuery,  _
    IVsToolWindowFactory, IVsToolboxItemProvider
[ComVisibleAttribute(true)]
[PackageRegistrationAttribute]
public abstract class Package : IVsPackage, 
    IServiceProvider, IOleCommandTarget, IVsPersistSolutionOpts, IServiceContainer, IServiceProvider, 
    IVsUserSettings, IVsUserSettingsMigration, IVsUserSettingsQuery, IVsToolWindowFactory, IVsToolboxItemProvider

Package 类型公开以下成员。

构造函数

  名称 说明
受保护的方法 Package 初始化 Package 的新实例。

页首

属性

  名称 说明
公共属性 ApplicationRegistryRoot 获取当前 Visual Studio 注册表项的根注册表项。
公共属性 UserDataPath 包含路径 Visual Studio的用户数据存储。
公共属性 UserLocalDataPath 包含路径 Visual Studio的本地用户数据存储。
公共属性 UserRegistryRoot 获取可用于存储用户数据的注册表项。
公共属性 Zombied 是否的获取一个值包在关闭过程中。

页首

方法

  名称 说明
受保护的方法 AddOptionKey 添加一个用户可选关键字名称添加到选项键的列表。
公共方法 CreateInstance 使用 vsprvs 的本地注册表 CLSID 对象,创建指定的 COM 对象。
公共方法 CreateTool 如果需要,提供实现的操作派生类。
受保护的方法 CreateToolWindow 使用指定的 ID. 创建指定类型的一个工具窗口
受保护的方法 Dispose 释放由 Package 对象使用的资源。
公共方法 Equals 确定指定的对象是否等于当前对象。 (继承自 Object。)
受保护的方法 Finalize 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法 FindToolWindow 获取工具窗口使用指定的类型和 ID. 相应
公共方法 FindWindowPane 获取窗口窗格与指定的类型和 ID 对应,并且如果该类型的窗口窗格不存在创建一个,如果调用这样做。
受保护的方法 GetAutomationObject 获取 VSPackage 的自动化对象。
受保护的方法 GetDialogPage 获取请求的对话框页。
公共方法静态成员 GetGlobalService 获取服务全局由提供其包 Visual Studio 或之一。 这与调用在不提供服务包的实例的 GetService()。
公共方法 GetHashCode 用作特定类型的哈希函数。 (继承自 Object。)
公共方法 GetOutputPane 获取请求的 " 输出 " 窗口中。
公共方法 GetProviderLocale 返回区域设置与此服务提供程序。
受保护的方法 GetService gets 类型根据 VSPackage 服务容器的服务。
受保护的方法 GetToolboxItemData 获取数据格式的目录中指定的工具箱项 ID 和数据格式的。
公共方法 GetType 获取当前实例的 Type。 (继承自 Object。)
受保护的方法 Initialize 调用,在 VSPackage 由 Visual Studio加载。
受保护的方法 MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
受保护的方法 OnLoadOptions 调用由包类,当有要读取的选项在解决方案文件外部。
受保护的方法 OnSaveOptions 调用由 Package 类,在具有要保存的选项对解决方案文件。
受保护的方法 ParseToolboxResource(TextReader, Guid) 分析有关的信息应添加到 工具箱项目适当的格式嵌入文本资源。
受保护的方法 ParseToolboxResource(TextReader, ResourceManager) 分析有关的信息应添加到 工具箱项目适当的格式嵌入文本资源。
受保护的方法 QueryClose 调用需要包,如果 shell 来关闭的。
受保护的方法 RegisterEditorFactory 注册了 Visual Studio的版本工厂。
受保护的方法 RegisterProjectFactory 注册了 Visual Studio 的项目工厂。
公共方法 ShowOptionPage 显示指定的 " 工具选项 " 页。
公共方法 ToString 返回表示当前对象的字符串。 (继承自 Object。)

页首

事件

  名称 说明
受保护的事件 ToolboxInitialized 生成的事件,只要 Visual Studio 初始化其 工具箱
受保护的事件 ToolboxUpgraded 生成的事件,只要 Visual Studio 升级其 工具箱

页首

显式接口实现

  名称 说明
显式接口实现私有方法 IServiceContainer.AddService(Type, ServiceCreatorCallback) 基础结构。添加特定服务到 VSPackage 的服务容器。
显式接口实现私有方法 IServiceContainer.AddService(Type, Object) 基础结构。添加特定服务到 VSPackage 的服务容器。
显式接口实现私有方法 IServiceContainer.AddService(Type, ServiceCreatorCallback, Boolean) 添加特定服务为服务容器通过指定的 ServiceCreatorCallback
显式接口实现私有方法 IServiceContainer.AddService(Type, Object, Boolean) 基础结构。添加特定服务到 VSPackage 的服务容器。
显式接口实现私有方法 IServiceProvider.GetService 获取指定类型的服务。
显式接口实现私有方法 IServiceContainer.RemoveService(Type) 基础结构。从服务容器移除特定服务类型。
显式接口实现私有方法 IServiceContainer.RemoveService(Type, Boolean) 基础结构。从服务容器移除特定服务类型和选择性地提升服务的删除父服务容器。
显式接口实现私有方法 IOleCommandTarget.Exec 执行一个指定的命令或显示为命令帮助。
显式接口实现私有方法 IOleCommandTarget.QueryStatus 查询该对象以获得由用户界面事件生成的一个或多个命令的状态。
显式接口实现私有方法 IServiceProvider.QueryService 基础结构。内部 IServiceProvider 实现。
显式接口实现私有方法 IVsPackage.Close 基础结构。关闭并配置包。
显式接口实现私有方法 IVsPackage.GetAutomationObject 基础结构。获取此包的自动化友好的对象。
显式接口实现私有方法 IVsPackage.GetPropertyPage 基础结构。为 工具 菜单 选项自定义工具箱 对话框的属性页的主张访问。
显式接口实现私有方法 IVsPackage.QueryClose 基础结构。调用需要 VSPackage,如果 Visual Studio shell 来关闭的。
显式接口实现私有方法 IVsPackage.ResetDefaults 基础结构。重置 工具箱 默认值。
显式接口实现私有方法 IVsPackage.SetSite 基础结构。在 Visual Studio 环境中初始化 VSPackage。
显式接口实现私有方法 IVsPersistSolutionOpts.LoadUserOptions 基础结构。加载特定解决方案的用户选项。
显式接口实现私有方法 IVsPersistSolutionOpts.ReadUserOptions 基础结构。读取特定解决方案的用户选项。
显式接口实现私有方法 IVsPersistSolutionOpts.SaveUserOptions 基础结构。保存特定解决方案的用户选项。
显式接口实现私有方法 IVsPersistSolutionOpts.WriteUserOptions 基础结构。编写特定解决方案的用户选项。
显式接口实现私有方法 IVsToolboxItemProvider.GetItemContent 获取项目。
显式接口实现私有方法 IVsToolWindowFactory.CreateToolWindow 基础结构。使用指定的 ID. 创建指定类型的一个工具窗口
显式接口实现私有方法 IVsUserSettings.ExportSettings 此方法实现用于的 IVsUserSettings 接口管理配置文件和导入/导出设置 XML 文件。
显式接口实现私有方法 IVsUserSettings.ImportSettings ,当用户选择 导入/导出设置 功能的导入选项在 IDE 的 " 工具 " 菜单时,检索的 VSPackage 中配置使用 Visual Studio 设置结构。此方法是 IVsUserSettings 接口的实现的一部分用于管理配置文件和导入/导出设置 XML 文件。
显式接口实现私有方法 IVsUserSettingsMigration.MigrateSettings 迁移来自早期版本的设置。
显式接口实现私有方法 IVsUserSettingsQuery.NeedExport

页首

备注

Package 类提供了线程的托管实现最有用的 VSIP 接口。可以使用较少的代码创建 VSPackage 的基本功能通过从派生 Package 类,重写其中的一些方法和附加属性注册类。Package 类不提供直接注册支持,但是,它能使用特性类提供必要的注册信息对外部工具 (例如 RegPkg.exe。

默认情况下 Package 类提供下列服务。(通过请求 VSPackage 替换为 IServiceContainer,则移除它们并添加拥有服务在它们的位置。)

  • Package

    包提供自身作为服务。

  • IServiceContainer

    可以添加和移除服务。所有服务添加与 “提升”设置为 true 发送到 Visual Studio 通过 IProfferService。这使服务全局若要在 Visual Studio 中的所有 sharepoint 项目服务。(此服务可用,只有在 VSPackage 已经加载。)

除了这些服务之外, Package 使用 Visual Studio 服务体系结构提供对所有服务可通过全局服务提供程序。

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

请参见

参考

Microsoft.VisualStudio.Shell 命名空间

IVsPackage

其他资源

托管 Vspackage

Vspackage 和 managed package 结构

注册 Vspackage