Visual Studio 2010 Ultimate发布问题

时间:2011-05-02 14:00:29

标签: wpf visual-studio-2010 c#-4.0

我有一个WPF C#4.0应用程序。我之前发布的项目很好,但突然之间,一个特定项目开始不发布。成功构建后,我收到以下错误。

错误2找不到文件'obj \ x86 \ Release \ CSCDemo.exe'。 CSCDemo.0

下一个错误是'发布失败'

我知道CSCDemo.exe位于Release文件夹中,因为我选中了。

Microsoft Visual Studio 2010 Service Pack 1会修复此问题吗?

4 个答案:

答案 0 :(得分:1)

打包器正在查看obj \ x86文件夹,而不是exe的普通bin \ release文件夹。我认为这个问题与打包器在错误的位置查找或者您更改了CSCDemo项目的项目属性有关。您是否已将其从x86应用程序更改为x64?

尝试的另一件事是完全重建。

答案 1 :(得分:1)

我刚刚遇到这个问题。我的Avast Anti-Virus似乎在创建后立即删除该文件。我刚刚将我的项目文件夹添加到它的全局排除列表中,一切正常。

答案 2 :(得分:0)

我不确定你的开发机器究竟是如何被这种方式搞砸的,但这也开始发生在我们小组的几个开发人员身上。

在研究之后,似乎Visual Studio(我们的案例中为2010)使用的内置构建/发布脚本在执行操作的顺序中存在缺陷。最重要的是,它会在OBJ目录上运行清理,删除目标EXE文件,然后发布步骤才能获取它。

解决方案
这有点像一个hacky解决方法,但它解决了我的问题。

修复方法是在发布步骤之前将文件从/obj/文件夹复制回/bin/文件夹。遗憾的是,我无法通过IDE指定BeforePublish事件,因此您必须在文本编辑器中编辑.vbproj文件。

在最终</project>标记之前添加followign部分。

<Target Name="BeforePublish">
<Copy SourceFiles="$(TargetPath)" DestinationFolder="$(IntermediateOutputPath)" />
</Target> 

答案 3 :(得分:0)

将平台从x86更改为任何CPU都有帮助

构建&gt;配置管理器 将CSCDemo平台更改为任何CPU