我知道Visual Studio 2017现在支持No-Registry,All-Registry,All SKUS(Enterprise,Professional and Community)的并排安装。
我们需要访问VS2017的列表(MRU)解决方案和项目。
对于以前的VS2017版本,我们用于查询注册表。
- 此注册表查询代码从VS2017 DEVENV过程中运行时仍可以正常工作,
- 但是,当它在独立/自定义过程中执行时它不再工作(我的意思是一个不是vs2017 devenv过程的过程),这就是我们需要做的。
理想情况下,这可以从VS设置API中完成,但我找不到任何示例代码。
否则我们仍然可以依靠regloadAppkey()函数,如本vs 2017中解释的变更文章(欢迎任何代码)
或也许还有另一个API可以做到?
感谢您的帮助,
访问vs 2017设置的推荐方法是使用外部设置管理器:
ExternalSettingsManager ext = ExternalSettingsManager.CreateForApplication(@"C:Program Files (x86)Microsoft Visual Studio2017EnterpriseCommon7IDEdevenv.exe");
SettingsStore store = ext.GetReadOnlySettingsStore(SettingsScope.UserSettings);
foreach (string name in store.GetPropertyNames(@"MRUItems{a9c4a31f-f9cb-47a9-abc0-49ce82d0b3ac}Items"))
{
string value = store.GetString(@"MRUItems{a9c4a31f-f9cb-47a9-abc0-49ce82d0b3ac}Items", name);
Console.WriteLine("Property name: {0}, value: {1}", name, value);
}
要使用外部设置管理器,您需要向Microsoft.visualstudio.settings.15.0.dll添加引用到您的项目。