2013-03-18 46 views
0

一切都很好。然后,当我即将启动应用程序时,Visual Studio无法构建出来。我收到警告“无法删除文件'... bin \ Debug [ProjectName] .exe'。访问路径'... bin \ Debug [ProjectName] .exe'被拒绝。”和错误“无法复制文件'obj \ x86 \ Debug [ProjectName] .exe'到'bin \ Debug [ProjectName] .exe'。进程无法访问文件'bin \ Debug [ProjectName] .exe',因为它正在被另一个进程使用。“ (我在运行重建时遇到了警告和错误,但运行构建时只有错误 - 不认为这是相关的?)建设时出错ERROR

我完全理解警告和错误消息说的是什么:Visual Studio显然试图覆盖exe文件,同时出于某种原因锁定它。但是,这并不能帮助我找到问题的解决方案......我发现的唯一工作是关闭Visual Studio并重新启动它。然后建立和启动工作,直到我对一些表单进行更改,然后再次遇到同样的问题,必须重新启动...非常令人沮丧!

正如我上面提到的,这似乎是一个已知的问题,所以有很多建议的解决方案。我只列出我已经在这里试过的东西,所以人们知道该跳过什么:

创建一个新的干净的解决方案,只是从旧的解决方案复制文件。 添加以下以下到项目的预生成事件:

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

添加以下的项目属性(.csproj的文件):

<GenerateResourceNeverLockTypeAssemblies>true</GenerateResourceNeverLockTypeAssemblies> 

然而,他们没有为我工作,所以你可能会明白为什么我开始有点沮丧。我不知道还有什么可以看的,所以我希望有人能给我一些东西!这是VS中的错误,如果有的话,是否有补丁?或者我做错了什么,有没有循环参考或类似的,如果有的话,我怎么能找到?

任何建议高度赞赏:)

更新:由于在下面的评论中提到的,我还使用Process Explorer的,它实际上是Visual Studio中被锁定的文件进行检查。

+0

@Saurabh,虽然我也发现了这个有罪的句子,但我现在认为user123456789不是母语者,也是编程新手。我想我们以前都在那里...... – 2013-03-18 08:40:23

+0

尝试,手动删除“obj”文件夹并重建项目。 – 2013-03-18 08:42:00

+0

@达伦托马斯:同意,如果它的外表侮辱比我偷看之前我写的胖手指,对不起,如果它伤害anybuddy – TalentTuner 2013-03-18 08:42:30

回答

1

关闭程序“OEE.Windows.exe” - 您可能正在对其进行测试,并试图在不首先关闭的情况下进行重建。

+0

达伦托马斯:我已编辑我的问题正确阅读并建议我你知道什么 – user2181338 2013-03-18 08:51:09

1

在我看来,你已经手动通过双击exe文件从文件系统中运行该文件\debug\OEE.windows.exe 。你正试图从Visual Studio中建立你的项目。在构建过程中,Visual Studio将执行的操作是创建新文件oee.windows.exe,但无法这样做,因为具有相同名称的文件已存在并正在被进程使用。