6

我有几个项目的解决方案。其中之一是设置项目。如果您在解决方案资源管理器中展开设置项目,您会看到一个 Detected Dependencies 节点。如果你右键单击它,你会得到一个名为 Refresh Dependencies 的菜单项。这会根据设置中包含的文件刷新任何依赖项。

我在问我是否可以在 Visual Studio 之外使用 devenv.com 或 MSBuild 执行此操作。

我想要这个,因为我使用 CruiseControl.NET 进行持续集成,并且在某些解决方案中,我发现设置输出缺少一些依赖项,因为我自动构建项目的方式。

更新:

事实证明,我的设置对安装项目在 Visual Studio 中的工作方式不是很友好。我最终使用 Post Build Events 来创建整个应用程序结构,以便将其复制到计算机并开箱即用。我不再使用 Visual Studio 中的设置项目,除非我真的必须这样做。

4

1 回答 1

2

录制或创建宏:

Option Strict Off
Option Explicit Off
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics

Public Module RefreshDependencies
    Sub TemporaryMacro()
        DTE.ActiveWindow.Object.GetItem("Project\Setup1\Setup1").Select(vsUISelectionType.vsUISelectionTypeSelect)
        DTE.ExecuteCommand("Build.RefreshDependencies")
    End Sub
End Module

然后只需在命令行中调用宏:

devenv /command "Macros.MyMacros.RefreshDependencies C:\MyProjects\MyApp\"

于 2008-09-05T12:42:37.597 回答