用DTE重建VS中的解决方案

最近我遇到了Visual Studio 2003的问题,经过几次运行解决方案之后,会有一次运行会告诉我很多对象都丢失了......或者很多对象都不可用他们的范围。 重建后解决了这个问题(无论项目是否发生变化,都会重建整个解决方案)。由于这通常是我为Rebuild Solution选项指定了键盘快捷键,在此之后我可以毫无问题地运行解决方案。 我现在想向前迈出一步,在Rebuild Solution完成后自动运行解决方案。我尝试使用宏,但在查看生成的代码后:
Sub Rebuild()
    DTE.ExecuteCommand("Build.RebuildSolution")
    DTE.Debugger.Go(False)
End Sub
我意识到ExecuteCommand在启动
Build.RebuildSolution
命令后立即返回,因此
DTE.Debuger.Go(False)
无法执行,因为解决方案已在构建。 我需要的是Debugger.Go()等待ExecuteCommand完成的方法,或者用于重建解决方案的一种方法,在重建完成之前下一行不会执行。     
已邀请:
我没有VS2K3,但在以后的版本中,这样做的方法是连接到EnvironmentEvents上的BuildDone事件,如下所示:
Private Sub BuildEvents_OnBuildDone( _
    ByVal Scope As EnvDTE.vsBuildScope, _
    ByVal Action As EnvDTE.vsBuildAction) Handles BuildEvents.OnBuildDone

    DTE.Debugger.Go(False)

End Sub
您可能希望连接到宏中的变量集,以确保仅在从“重建”启动构建时处理构建事件     

要回复问题请先登录注册