在长时间的汇编与Visual Studio2005年(版本8.0.50727.762),我有时得到的以下错误的几个文件在一些项目:

fatal error C1033: cannot open program database 'v:\temp\apprtctest\win32\release\vc80.pdb'

(本文件提到的是 vc80.pdbvc80.idb 在该项目的临时dir.)

下建立的相同项目的成功。有没有其他的视觉工作室开放的可能访问的同样的文件。

这是一个严重的问题,因为它使得每晚汇编是不可能的。

有帮助吗?

解决方案

它可能是病毒或类似的程序是触摸pdb文件上写的一个防病毒软件是最有可能的犯罪嫌疑人在这种情况。我恐怕我只能给你一些一般性的指针,我根据过去的经验,在设定每晚建立在我们的商店。这些听起来可能微不足道,但是我其中包括他们为完成。

  • 第一和最重要的是:确保你开始了一个清白。那就是,武力-删除的输出目录的建立之前你开始你每晚。
  • 如果你有一个防病毒软件、间谍软件或其他此类程序上你每晚的机器,考虑去除它们。如果这不是一个选项,添加obj文件夹中的排除名单程序。
  • (可选)考虑使用的工具,如VCBuild或MSBuild的一部分,你的夜间。我认为这是更好地使用MSBuild如果你在一个多机。我们使用额外的资料中了解更多用。和MSBuild为发布,并且从来没有遇到过该问题的描述。

如果没有别的工作,你可以安排一个看门狗脚本几个小时后开始,并检查其地位;如果该建立失败,看门狗应该重新启动。这是一个丑陋的黑客,但总比没有好.

其他提示

我们在我的网站上也看到过这么多。根据我们的设置,来自Peter Kaufmann的这个解释似乎是最合理的:

在Visual Studio 2005中构建解决方案时,会出现致命错误C1033等错误:无法打开程序数据库'xxx \ debug \ vc80.pdb'。但是,当第二次运行构建时,它通常会成功。

原因:解决方案中的两个项目可能正在将其输出写入同一目录(例如'xxx \ debug')。如果工具 - 选项,项目和解决方案 - Bild和Run中的最大并行项目构建数设置为大于1的值,则这意味着两个编译器线程可能尝试同时访问相同的文件,从而生成一个文件分享冲突。 解决方案:检查项目的设置,确保没有两个项目对输出,目标或任何类型的中间文件使用相同的目录。或者将并行项目构建的最大数量设置为1以便快速解决方法。我在使用CLAPACK库附带的VS项目文件时遇到了这个问题。 更新:Tortoise SVN有可能访问'vc80.pdb',即使该文件不受版本控制,这也可能导致上述错误(感谢Liana报告此情况)。但是,我无法确认这一点,因为在确保所有项目使用不同的输出目录后,我无法重现该问题。

将调试信息切换为C7格式,而不是使用PDB。

项目选项 - > C / C ++ - >一般 - >调试信息格式并将其设置为 C7

当您之前的调试尝试没有完全杀死调试器时,通常会发生这种情况。 在任务管理器中查找名为vcjit的进程,将其杀死并重试。 最糟糕的选项重启visual studio,这应该可以解决你的问题。

我今天遇到了这个问题,结果是导致它的pdb路径中的非ansi字符。

我正在通过vmware使用Windows,我的项目位于共享位置:\ vmware-host \ Shared Folders \ project

当我将其移至\ Users \ julian \ project时,它解决了问题。

尝试右键单击VS ....和Properties-> Compatibility->的可执行文件。勾选“在兼容模式下运行此程序ford:” OFF ........

我在处理Dropbox文件夹中的项目时遇到了类似的问题。我发现当小的“同步”时它会抛出这个错误。因为Dropbox正在访问文件以将它们上传到他们的服务器,所以图标正在系统托盘中的Dropbox图标上。当我等待构建直到Dropbox完成同步时,它每次都有效。

我刚遇到这个问题。 Visual Studio抱怨无法打开 vc100.pdb 。我使用 procexp 查找了这个文件的打开文件句柄,发现进程 mspdbsrv 有一个打开的文件句柄。杀死这个过程修复了问题,我能够编译。

您使用的是LinqToSql?也许这是类似奇怪的错误我会的经验,偶尔因为我要在这个问题: 是什么原因导致Visual Studio失败负一件不正确?

我改变了我的中间目录:

%TEMP%\$(ProjectName)\$(Platform)\$(Configuration)\

C:\temp\$(ProjectName)\$(Platform)\$(Configuration)\

现在有效。不知道为什么。

我有同样的问题 C1033:无法打开程序库

<强>方案

我有两个dll的 parent.dll child.dll 。我刚刚使用visual studio调试器连接了child.dll项目,同时我正在尝试构建parent.dll项目,产生错误 C1033:无法打开程序数据库

<强>解决方案

停止调试并终止使用调试器附带的进程。重建项目

如果我 Ctrl + Break 取消构建(vs2015),这种情况一直发生在我身上。有些进程没有正常关闭。我继续横冲直撞“结束任务” ms / vs相关进程(查找重复项),我的构建再次起作用。重启可能也会起作用。就像转向gnu binutils一样。

恼人的解锁工具不报告锁定文件的任何进程,windows不允许我删除 .pdb 但我可以重命名它。我的猜测是在构建期间同时跳入两个进程。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top