运行后构建事件(F5)在Visual Studio中?

时间:2010-12-15 19:13:40

标签: visual-studio visual-studio-2010

我在Visual Studio 2010中设置了一个构建后事件。我遇到的问题是当我使用Run(F5)开始调试时事件没有运行 - 它似乎只在我明确地运行时运行建立(F6)。

即使源文件已更改(因此必须构建以便运行),这似乎也会发生。

是否有控制此行为的设置?

5 个答案:

答案 0 :(得分:10)

Postbuild只在建造后运行。因此,当您的构建工件是最新的时,它将不会构建,并且后构建将不会运行。

如果在构建时甚至无法运行,请检查以下内容:

在Visual Studio中查看工具 - >选项 - >项目和解决方案 - >建立一个运行。

选中“仅在运行时构建启动项目和依赖项”选项吗?

尝试取消选中该选项。

选项“On Run,项目何时过期”的价值是多少? 它应该是“提示构建”或“始终构建”,以确保在按F5时触发构建。

答案 1 :(得分:1)

它只在成功构建后运行。这就是为什么它被称为Post- 构建事件。

也许你想要完成的事情可以用不同的方式完成。你能告诉我更多细节吗?你想做什么?在每次调试会话之前,您想要运行什么?为什么?

答案 2 :(得分:1)

请参阅Visual Studio: Run C++ project Post-Build Event even if project is up-to-date

使用自定义构建步骤将非现有文件作为输出,以始终运行您的步骤。

答案 3 :(得分:0)

检查命令是否正确。一个简单的例子是:

copy "$(SolutionDir)$(ProjectName)\test.txt" ".\test.txt"

答案 4 :(得分:0)

我开发了一个简单的VisualStudio AddIn,它拦截start命令并在实际启动项目之前重建解决方案。

也许对其他人有用: https://skydrive.live.com/redir.aspx?id=3dc36fae9ccfb71f&resid=3DC36FAE9CCFB71F!112&parid=root (BuildAndRunAddin.zip)