我正在尝试使用 Visual Studio 进行托管调试内存转储,但失败并显示以下错误消息:
托管调试对此小型转储不可用。
无法找到托管小型转储调试所需的库“mscordbi.dll”,版本“4.0.30319.0”。
尝试以下任一步骤后重新启动调试会话:
- 如果此计算机当前未连接到 Internet,请进行连接,以便可以从 Microsoft 下载 dll。
- 在“调试器选项”下的“符号设置”中指定“mscordbi.dll”的路径。
- 选择“仅使用本机调试”。
检查我的符号设置时,有以下符号文件 (.pdb) 位置(全部已检查):
Environment Variable: _NT_SYMBOL_PATH
Microsoft Symbol Servers
C:\Dump_Repository\... (not relevant for this question)
预见缓存目录,并将自动加载首选项设置为Load all modules, unless excluded
。唯一被排除的就是user32.dll
.
的价值_NT_SYMBOL_PATH
环境变量如下:
cache*;srv*C:\Dump_Analyse*C:\build_machine1;cache*;srv*C:\Dump_Analyse*\\build_machine2\Development\Symbols;cache*;srv*C:\Dump_Analyse*\\build_machine1\Symbols;cache*;srv*https://msdl.microsoft.com/download/symbols;cache*;srv*C:\ProgramData\dbg\sym
在提到的目录中C:\Dump_Analyse
,有一个目录mscordbi.dll
,具有三个子目录,每个子目录包含提到的mscordbi.dll
DLL:
Prompt>find ./ -name "mscordbi.dll" 2>/dev/null
./Dump_Analyse/mscordbi.dll (this is a directory)
./Dump_Analyse/mscordbi.dll/4BA1DA2Deb000/mscordbi.dll
./Dump_Analyse/mscordbi.dll/563C0E8E10b000/mscordbi.dll
./Dump_Analyse/mscordbi.dll/583E5AAD10b000/mscordbi.dll
最后两个似乎不太相关,但第一个有文件版本4.0.30319.1
(这非常接近所请求的版本)。
我的计算机已连接到互联网,我的帐户似乎没问题(我最近修改了我的Windows帐户的密码,但我使用另一个帐户登录了Visual Studio)。
有谁知道这里可能发生什么以及我如何解决这个问题?