有没有办法在Visual Studio中构建后触发一些宏

时间:2010-03-27 07:31:09

标签: visual-studio visual-studio-2008 macros

我想算一下我在VS.NET上构建的次数。 我有个计划。如果我在构建项目时运行svn commit,我将在版本号上进行构建计数:)

我没有写任何可以执行命令的宏。我不知道visual studio是否允许为这种请求预建活动。

3 个答案:

答案 0 :(得分:1)

您可以使用前/后构建事件。

在项目属性中,转到Build events选项卡 - 预构建和后构建命令都有空间。

请参阅this博客文章,了解如何增加内部版本号。

答案 1 :(得分:0)

是的,这是可能的。

  • 打开宏IDE
  • 打开名为environmentEvents的文件

此文件声明了各种DTE事件对象,您可以轻松添加这样的处理程序。

Private Sub PostBuild() Handles BuildEvents.OnBuildDone
  ' Your code here
End Sub

答案 2 :(得分:0)

也可以使用:

Dim WithEvents myTimer As Timers.Timer

Sub CustomBuild()
    DTE.ExecuteCommand("Build.BuildAll")
    myTimer = New Timers.Timer
    myTimer.Interval = 0.05
    myTimer.Start()
End Sub

Sub myTimer_Elapsed(ByVal ee As Object, ByVal dd As Timers.ElapsedEventArgs) Handles myTimer.Elapsed
    If DTE.Solution.SolutionBuild.BuildState <> vsBuildState.vsBuildStateInProgress Then
        myTimer.Stop()
    End If
    If DTE.Solution.SolutionBuild.BuildState <> vsBuildState.vsBuildStateInProgress And DTE.Solution.SolutionBuild.LastBuildInfo <> 1 Then
        ... build was successful ...
    End If
End Sub