Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 创建调试信息时出错-代码无效';不编译_C#_Visual Studio 2008 - Fatal编程技术网

C# 创建调试信息时出错-代码无效';不编译

C# 创建调试信息时出错-代码无效';不编译,c#,visual-studio-2008,C#,Visual Studio 2008,我用的是VS2008。每当我对代码进行更改并尝试编译时,都会出现以下错误: 错误7创建时发生意外错误 调试信息文件“C:\Documents” 和设置\jbezanson\My Documents\MyProjects\DispatchBoard\DispatchBoard\obj\Debug\DispatchBoard.PDB' --'C:\Documents and Settings\jbezanson\My Documents\MyProjects\DispatchBoard\Dispat

我用的是VS2008。每当我对代码进行更改并尝试编译时,都会出现以下错误:

错误7创建时发生意外错误 调试信息文件“C:\Documents” 和设置\jbezanson\My Documents\MyProjects\DispatchBoard\DispatchBoard\obj\Debug\DispatchBoard.PDB' --'C:\Documents and Settings\jbezanson\My Documents\MyProjects\DispatchBoard\DispatchBoard\obj\Debug\DispatchBoard.pdb: 进程无法访问该文件 因为它正被另一个人使用 过程。”调度台

使用Process Explorer,锁定文件的始终是
devenv.exe
。如果在发布模式下运行,则不会发生这种情况。它开始于两天前,当时我启动了一个WPF应用程序,从那时起,我处理的每个应用程序都会发生这种情况

我能从谷歌找到的唯一信息是VS2003中的一个bug


还有其他人有这个问题吗?我怎么修理它?每次我想编译的时候都要杀死文件句柄,这让人非常恼火。

你有没有试过关闭VS,删除
obj文件夹,然后重新启动VS?

因为你说你在所有的应用程序上都有它,所以这听起来更像是一个全球性的问题。您可以尝试通过编写

devenv.exe/setup


编辑:

当锁定的文件出现问题时,我使用。(如果您尝试了所有方法,但都无效,请尝试此;)


在断开链接的情况下,这里有一个。

我通过添加这些行作为预构建事件解决了类似的问题:

if exist "$(TargetPath).locked" del "$(TargetPath).locked"
if exist "$(TargetPath)" move "$(TargetPath)" "$(TargetPath).locked"

经过适当的修改,它可能会帮助解决您的问题。

我今天遇到了同样的问题。然后我意识到出了什么问题:我同时打开了两个VisualStudio窗口,其中一个处于调试模式

当我在那个模式下停止调试时,问题就解决了


当你打开了一个“VS windows”的时候就会发生这种情况。

今天早上我也遇到了同样的问题,并且注意到我打开了另一个项目,其中引用了一个无法编译或调试的项目。我删除了引用(因为我实际上并不需要它),这很好。

如果您有多个VS打开的实例,请关闭其他实例(您尝试编译的实例除外)-这可能会解决问题。

我今天遇到了这个问题。在我的例子中,我刚刚从公司的源代码管理中获取了数据,并在试图编译项目时立即遇到了这个问题。问题是\bin文件夹被设置为只读。为了解决这个问题,我只是将文件夹设置为非只读。

我将解决方案的“启动项目”更改为一个项目,而没有引用锁定文件的项目。 这为我解决了使用VS2010SP1的问题

(Process Explorer说msvsmon.exe(由devenv.exe启动)锁定了pdb文件。 更改启动项目后,进程msvsmon.exe和.vshost.exe消失,文件句柄也消失。)


亚历克斯·克拉克,谢谢你为我指明了正确的方向。

这对我很有效。我所做的是关闭visual studio并删除.suo文件,然后重新打开解决方案。锁现在应该消失了。干杯。

老话题,但对我有用的东西。我的解决方案中有两个项目,一个类库类型项目和一个windows窗体项目。windows窗体项目引用的是已编译的二进制文件,而不是导致锁定的项目本身。更改对类库项目的引用后,它工作正常。

右键单击包含debug.pdb的文件夹,取消选中文件夹只读属性,然后单击“确定”。就是这样。

这对我来说适用于Visual Studio Express 2012 for web中的web项目:

  • 按F5开始调试
  • “是否要执行上次成功生成?”-点击“是”
  • 此时,您可以尝试一个请求-不确定此步骤是否必要
  • 按停止按钮
  • 重新编译成功

  • 无需重新启动或删除文件。无法删除,您将收到错误消息。只需重命名文件,这就足够了。
    VS2010将为您创建另一个文件,因为它找不到原始区域。:)

    若要避免该问题,只需打开项目属性,转到“调试”选项卡,取消选中“启用Visual Studio宿主进程”

    我不时遇到同样的问题。通常没问题,但偶尔。。。在这个特殊的时期,这是不可能的工作。我会关闭应用程序,即使这样,在大多数情况下也不起作用。我看到这篇帖子,一个人说他们在启动WPF应用程序之前没有任何问题。我用Windows8“音乐”应用程序在后台播放音乐(广播电台)。我有一个想法,那就是它是一个用VisualStudio构建的微软应用程序。一旦我停止播放音乐,我就再也没有遇到过错误。如果您正在阅读本文,请查看是否有任何Microsoft应用程序正在运行。

    我也有同样的问题。尝试了上述所有建议,但没有成功。我最终将构建配置从Debug更改为Release,解决方案构建…

    在将Cassini更改为IIS Express作为我的调试平台后,这个问题开始出现

    Cassini比IIS Express好得多,但不能正确支持集成管道。IIS快车没有希望了

    这似乎是VisualStudio或IIS Express中的某种竞争条件。这与一个项目锁定另一个项目无关——锁定完全来自web应用程序构建过程的活动

    不管怎样,上面的解决方案对我都不起作用。Windows 8似乎不再支持Unlocker。所以我试过了。我要做的就是让LockHunter应用程序整天都打开。如果我收到关于某个文件被锁定的投诉,我会将文件路径复制并粘贴到LockHunter中,然后重试。这通常会解决问题,但有时需要几次尝试。