【问题标题】:pdb file, check for insufficient disk space, invalid path, or insufficient privilegepdb 文件,检查磁盘空间不足、路径无效或权限不足
【发布时间】:2014-06-26 09:51:07
【问题描述】:

我突然收到这个错误,我不知道为什么。每次更改代码时我都必须重新启动 VS2010,因为它显然会锁定 pdb 文件。

1>LINK : fatal error LNK1201: error writing to program database 'C:\code\MyProject\Debug\MyProject.pdb'; check for insufficient disk space, invalid path, or insufficient privilege

即使我clean 项目它不会删除此文件。我已经尝试过 Toni 提出的 here 解决方案,但它也对我不起作用。当像他建议的那样添加预构建路径时,我收到以下错误:

1>C:\Program 文件 (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): 错误 MSB3073:命令“C:\Program Files (x86)\Microsoft Visual Studio 10.0\freepdb MyProject 1>C:\Program 文件 (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(103,5): 错误 MSB3073: :VCEnd" 以代码 9009 退出。

【问题讨论】:

  • 听起来调试服务没有关闭或释放 pdb 文件。可能需要重新安装。
  • 解决方案在this question的回答中描述。

标签: c++ visual-studio-2010 debugging msbuild


【解决方案1】:

罪魁祸首是我为检测内存泄漏而安装的 deleaker,它看起来像是在阻止调试器/pdb 文件。卸载后我的问题得到解决。

【讨论】:

    【解决方案2】:

    我遇到了类似的问题,我的原因是 windbg 保存了所有 pdb 文件,因此当 Visual Studio 尝试创建新的新 pdb 文件时,它无法覆盖旧文件,因为这些文件正被 windbg 使用。

    所以显而易见的问题是,当 Visual Studio 无法用新的输出文件覆盖现有文件时,它会输出以下错误。

    【讨论】:

      【解决方案3】:

      当我在两个 Visual Studio 版本中使用单个 pdb 文件时,我遇到了类似的问题。关闭一个 Visual Studio 版本解决了这个问题。

      【讨论】:

      • 在我的例子中,当我在同一个 Visual Studio 中重建项目时,单个 VS 持有 pdb 并没有更新它。我刚刚关闭VS并再次打开它并重建项目没有问题。
      • 在我的情况下,只需要删除 pdb 文件,然后一切正常......
      【解决方案4】:

      您的防病毒软件阻止了写入访问。请解封文件夹保护

      【讨论】:

        【解决方案5】:

        当我关闭我用来检查线程内存使用量的 ProcessExplorer(sysinternal 工具 procexp64.exe)时,它对我有用。搜索该文件,然后将其关闭。

        [更新]:您还可以像使用“Sysinternal 进程资源管理器”一样有效地使用 Windows“任务管理器”来定位任何僵尸句柄。 任务管理器 |性能 |开放资源监视器 | CPU |相关句柄 |搜索->

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-06-08
          • 2013-10-09
          • 2015-12-04
          • 2015-12-30
          • 1970-01-01
          • 2018-01-30
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多