C++ Visual C+上的LNK1201+;2003
每次在VS2003中对任何项目进行调试运行后,我都会收到此错误消息。 我浏览了很多论坛,它们都提供了一个不符合实际问题的答案 链接:致命错误LNK1201:写入程序数据库“d:\Coding\Flyff\Projects\GUI System 20110721\Debug\GUI System 20110721.pdb”时出错;检查磁盘空间是否不足、路径是否无效或权限是否不足 我正在使用Windows7UltimateX64和VisualStudio2003.NET(service pack VS7.1sp1-KB918007-X86.exe) 我已经尝试过的:C++ Visual C+上的LNK1201+;2003,c++,visual-studio,linker-errors,C++,Visual Studio,Linker Errors,每次在VS2003中对任何项目进行调试运行后,我都会收到此错误消息。 我浏览了很多论坛,它们都提供了一个不符合实际问题的答案 链接:致命错误LNK1201:写入程序数据库“d:\Coding\Flyff\Projects\GUI System 20110721\Debug\GUI System 20110721.pdb”时出错;检查磁盘空间是否不足、路径是否无效或权限是否不足 我正在使用Windows7UltimateX64和VisualStudio2003.NET(service pack V
- 以兼容模式运行多个其他操作系统和service Pack李>
- 将项目文件夹写入权限设置为“完全”李>
- 以管理员身份运行Visual Studio李>
- 将调试信息格式编辑为其他几种格式
int APIENTRY WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
Sleep( 5000 );
MessageBox( NULL, "Test", "", 0 );
return 0;
}
希望任何人都有解决方案,因为我目前需要使用此环境配置
干杯,Nicco。我唯一一次在VS2003中遇到这个问题是当它在调试会话期间崩溃时。通常,可以通过重新启动VS来解决此问题。如果这不起作用,则必须重新启动调试器服务,在某些情况下还必须重新启动Windows 您可以尝试将以下内容添加到预生成事件的命令行中
net stop "Machine Debug Manager"
net start "Machine Debug Manager"
由于VS或调试管理器将文件锁定,我担心这个问题是由更深层次的问题引起的。您的VS安装中很有可能存在问题,或者有另一个服务或应用程序导致调试管理器和/或VS表现不好 我终于找到了解决这个困扰我很久的问题的解决方案: 1) 下载并安装LockHunter(解锁锁定文件的免费实用程序): http://lockhunter.com/download.htm 2) 将LockHunter的安装目录添加到环境变量“path”中,以避免每次运行该实用程序时出现烦人的管理员权限弹出窗口。对我来说(使用x64版本),它是: "C:\Program Files\LockHunter" “C:\Program Files\LockHunter” 3) 将以下预生成事件添加到遇到此问题的Visual Studio项目中: "LockHunter.exe /silent /unlock $(TargetDir)$(TargetName).pdb"
“LockHunter.exe/silent/unlock$(TargetDir)$(TargetName).pdb”我在VS2010中遇到此错误,并尝试使用论坛中建议的方法修复此错误,但这些方法对我无效。最后,我退出了VS2010并以管理员的身份重新启动,这就成功了>P>我和WiXP SP3和VS C++ 2010 Express有相同的解决方案,我解决了MyStudio文件夹访问权限的更改,取消了“只读”,并应用到所有文件夹、子文件夹和文件。 当项目规模增大且“.pdb”文件的大小超过300MB时,就会产生错误。 我更改了项目中的调试信息属性并成功编译了它。 您只需在下面的路径中将项目中的“调试信息格式”更改为“C7兼容(/Z7)” 配置属性>>C/C++>>常规>>调试信息 格式
在Windows10上也有类似的问题。这提供了一个使用名为
FreePDB
的工具的解决方案。您是否尝试删除所有pdb文件以让VS正确重建它?是的,重新启动Visual Studio将解锁pdb。但我正在寻找一个解决方案,它不会永远锁定它,或者一个预构建命令参数来强制解锁它,任何解决方案,我都可以正常调试。需要注意的一点是……您必须是调试用户组的一部分,尽管我怀疑您可能已经是了,因为如果您不是,调试器可能根本不会启动。我刚刚注意到您的编辑。我回到了以前的开发环境,在那里我在WindowsXP虚拟机中使用VS2003。谢谢你的帮助。
"LockHunter.exe /silent /unlock $(TargetDir)$(TargetName).pdb"