2014-01-29 53 views
2

我希望在从Visual Studio运行exe之前运行批处理文件。因此,是否有预运行事件?是否有Visual Studio 2012 Pre-Run Event?

为什么我这么做。有从其他exe生成的资产,我想运行此exe文件之前自动复制新的资产。

为了澄清,这应该没有从Visual Studio建设。假设build/exe保持不变。

+0

IDE自动化接口(EnvDte)具有[OnEnterRunMode事件](http://msdn.microsoft.com/zh-cn/library/envdte.debuggereventsclass.onenterrunmode.aspx)。写一个插件来利用它是你生活中一个你永远不会回来的月份。无论您用什么工具生成“资产”,都可以将它们放在正确的位置,因此您根本不需要这些。 –

+0

谢谢你,那可能正是我需要的 –

回答

2

结果实际上预建事件也是预运行事件。 每次运行之前,它都会尝试确定是否需要构建,因此即使它不构建任何内容,也会运行预构建事件。

0

VS项目文件基本上是MSBuild文件,MS Build提供了这样的事件。 在文本编辑器中打开您的.csproj文件,您将看到纯粹的MS Build xml文件。

看到这篇文章:

http://msdn.microsoft.com/en-us/library/dd293582.aspx

而且,这一问题表明:PreBuild for PreBuild Event Command in csproj

你可以做到这一点通过Visual Studio将实际编辑 的.csproj其实文件。

右键单击该项目并选择Project Dependencies并选择 您需要在此项目之前构建的项目。通过 选择Build order选项卡来验证它。

+1

嗨,谢谢你的回答。不过,我正在寻找预运行事件,而不是后期构建/预构建事件。由于可以生成数据而不构建新构建。 –

+0

什么样的数据?你如何从Visual Studio运行exe文件? F5?如果我在VS之外运行这个exe,会发生什么?如果源文件没有改变,VS将不会生成新的编译/ exe – vmg

+0

是的,我的意思是运行f5,但没有代码改变。 我希望它在我每次运行之前运行一个批处理文件。 –

相关问题