使用LoadLibrary("file.dll")
加载DLL库后,visual studio还会打开并锁定file.pdb
。
问题是,即使调用了FreeLibrary(...)
,file.pdb
也会被锁定。
有必要重新编译file.dll
并再次重新加载它(外部,在MSVS之外,使用CL.exe
),但由于file.pdb
仍然被锁定,编译失败。
如何使Visual Studio 2015释放文件锁?
巧合的是,我偶然发现了一个解决方案:
转到Tools -> Options
,然后转到Debugging -> General
,然后打开Use Native Compatibility Mode
。
这修复了问题(例如.pdb文件在卸载.dll后被解锁)。
我不知道为什么,因为我找不到Use Native Compatibility Mode
的文档。