【问题标题】:Is there a way to run an outside executable after a solution is built in Visual Studio 2008?在 Visual Studio 2008 中构建解决方案后,有没有办法运行外部可执行文件?
【发布时间】:2008-10-07 03:54:48
【问题描述】:

我不是在谈论项目的构建后事件。相反,我想在构建整个解决方案后自动运行可执行文件。有没有办法为解决方案进行构建后事件?

【问题讨论】:

    标签: visual-studio-2008 build-process


    【解决方案1】:

    Visual Studio 2010 及之前的版本

    您可以在宏编辑器中通过处理 OnBuildDone 来执行此操作。该事件为您提供了几个方便的属性,您可以检查:范围(项目/解决方案/批处理)和操作(构建/重建/清理/部署)。做你想做的事情是这样的(未经测试,请注意):

    Public Sub AfterBuild(scope As vsBuildScope, action As vsBuildAction) _
            Handles BuildEvents.OnBuildDone
        If scope = vsBuildScope.vsBuildScopeSolution Then
            System.Diagnostics.Process.Start("some file I want to run")
        End If
    End Sub
    

    Visual Studio 2012

    上述解决方案在 Visual Studio 2012 中不起作用,因为 Microsoft 已删除该版本中的宏。但是,您仍然可以使用加载项执行基本相同的操作。要了解如何操作,请转到此处:

    Alternative to Macros in Visual Studio 2012

    【讨论】:

    • 太棒了!正是我想要的。如果我能给你更多的投票,我当然会!
    • 所以这需要添加到每台进行构建的机器上,还是与解决方案文件一起保存?
    • 宏是机器特定的,所以你需要把它放在每台机器上。另一种选择是在构建序列中的最后一个项目上放置一个构建后事件。构建后事件(在项目属性中)与项目一起保存在源代码管理中。
    【解决方案2】:

    不直接。
    您可以创建一个在所有其他项目中都具有依赖关系的项目,并为其添加一个后期构建步骤。实际上,这将导致它在其他所有内容之后运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-06
      • 2012-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-25
      • 1970-01-01
      相关资源
      最近更新 更多