Visual Studio(已隔离 Shell)在加载或重置用户设置时挂起

Visual Studio (Isolated Shell) is hanging when loading or resetting user-settings

我们有一个使用 Visual Studio Isolated Shell 2013 的应用程序。安装该应用程序时,我们会清除注册表,以删除旧版本。但是在 Windows 7 机器上首次启动应用程序时,应用程序在尝试加载 Visual Studio 设置时死锁:

终止进程并再次启动应用程序后,设置已完全恢复并且应用程序运行正常,但最终用户无法接受在第一次启动时终止进程的必要性。

如果您只是通过 Tools -> Import and Export Settings -> Reset settings 重置设置,则会发生完全相同的行为。

发生这种情况时,我在输出日志中看到以下异常,但我无法判断它是否真的相关:

First-chance exception at 0x75c0c42d (KernelBase.dll) in MyApp.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x002b7604.
First-chance exception at 0x75c0c42d (KernelBase.dll) in MyApp.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000.
A first chance exception of type 'System.NullReferenceException' occurred in Microsoft.VisualStudio.IDE.ToolboxControlsInstaller.dll

我们尝试删除注册表和磁盘目录中的所有相关条目(例如 Users/me/AppData/[Local|Roaming]...),但我们看不到任何变化。 有什么想法可以防止 Visual Studio 挂起吗?

我们已经确定了问题所在。这是我们在为用户创建配置时导出的特定设置。在我们的例子中是工具箱:

我们从设置中删除此条目后,导入和重置工作正常。请注意,如果您在应用程序中遇到问题,也可能是另一个设置。对于我们来说,我只是尝试了不同的导出星座并试图找出导致错误的原因。