保留的设置

VSPackage 可以定义一个或多个设置类别,为状态变量组仍然存在,当用户在 工具 菜单的 导入/导出设置 命令。 若要启用此持久性,则在 Visual Studio SDK使用一组 API。

称为的注册表项自定义下落点,并且 GUID 定义 VSPackage 的设置类别。 VSPackage 可以支持多个设置类,每个定义由自定义下落点。

  • 根据互操作程序集的实现 (使用 IVsUserSettings 接口) 应创建自定义通过编辑注册表或使用注册器脚本下落点 (.rgs 文件)。 有关更多信息,请参见 Creating Registrar Scripts

  • 代码使用托管包结构 (MPF)应创建自定义通过附加 ProvideProfileAttribute 设置指向每 VSPackage 自定义下落点。

    如果单个 VSPackage 支持多个自定义下落点,每个自定义 Point 由单独的类实现,因此,每个由 ProvideProfileAttribute 类的单个实例注册。 因此,实现类设置中支持多个设置类别。

自定义下落点注册表项详细信息

自定义 Points 在注册表项中创建在以下位置:\Software\Microsoft\VisualStudio HKLM \Version\UserSettings \<CSPName>, <CSPName> 是自定义的名称下落点 VSPackage 支持,并且 Version 是 Visual Studio,如 8.0 的版本。

备注

,当 Visual Studio 集成开发环境 (ide) 初始化时, \SOFTWARE\Microsoft\VisualStudio HKEY_LOCAL_MACHINE \Version 根路径可以重写与 (IDE)替换根。有关更多信息,请参见 命令行开关 (Visual Studio SDK)

注册表项的结构如下声明:

\Software\Microsoft\VisualStudio HKLM \Version\UserSettings \

      <CSPNameAMP_GT= s “#12345'

            包 = “{}”

            类别 = “{YYYYYY YYYY YYYY YYYY YYYYYYYYY}”

            ResourcePackage = “{ZZZZZZ ZZZZ ZZZZ ZZZZ ZZZZZZZZZ}”

            AlternateParent = CategoryName

名称

类型

数据

说明

(默认值)

REG_SZ

自定义的名称下落点

名称, <CSPNameAMP_GT,是自定义的未本地化的名称下落点。

对于基于 MPF 的实现,名称将 ProvideProfileAttribute 构造函数的 categoryName 和 objectName 参数获取到 categoryName_objectName。

这些项可以为 null,也可以包含引用 ID 为本地化的字符串在附属 DLL。 此值从 objectNameResourceID 参数获取到 ProvideProfileAttribute 构造函数。

Package

REG_SZ

GUID

实现 VSPackage 的 GUID 自定义下落点。

根据 MPF 的实现使用 ProvideProfileAttribute 类别,使用包含 VSPackage 的 Type 和镜像的构造函数的 objectType 参数获取此值。

类别

REG_SZ

GUID

标识设置类别的 GUID。

根据互操作程序集的实现,此值可以是一个随机选择的 GUID, Visual Studio IDE 传递给 ExportSettingsImportSettings 方法。 这两种方法的所有实现应验证其 GUID 参数。

对于基于 MPF 的实现,此 GUID 由实现 Visual Studio 设置 framework 类的 Type 获取。

ResourcePackage

REG_SZ

GUID

可选。

包含本地化的字符串的附属 DLL 的路径,如果实现的 VSPackage 不提供它们。

MPF 使用反射获取正确的资源 VSPackage,因此, ProvideProfileAttribute 类未设置此参数。

AlternateParent

REG_SZ

文件夹的名称在 " 工具选项 " 页包含的下自定义下落点。

可选。

必须设置此值,仅当设置为实现支持在 Visual Studio SDK 使用持久性 framework 而不是自动化模型的结构保存状态的 工具选项 页。 有关更多信息,请参见 注册自定义选项卡页

在这些情况下,在 AlternateParent 键的值会用于 topic.sub-topic 字符串的 topic 节列出了特定 工具选项 页。 例如,对于此类情况, 工具选项 页 "TextEditor.Basic" AlternateParent 的值是"TextEditor"。

ProvideProfileAttribute 生成时自定义下落点,它是不同于类名称。

请参见

任务

如何:使用互操作程序集的导出设置

如何:使用互操作程序集导入设置

参考

Creating Registrar Scripts

ProvideProfileAttribute

Creating Registrar Scripts

概念

使用选项卡页

保留的设置

其他资源

状态持久性和 Visual Studio IDE

Working with Settings