我有一个包含多个项目的解决方案。其中之一是安装项目。如果在解决方案资源管理器中展开安装项目,您将看到“检测到的依赖项”节点。如果右键单击它,您会看到一个名为“刷新依赖项”的菜单项。这将根据安装程序中包含的文件刷新所有依赖项。

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

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

更新:

事实证明,我的设置对于安装项目在 Visual Studio 中的工作方式不太友好。我最终使用构建后事件来创建整个应用程序结构,准备好复制到计算机上并开箱即用。我不再使用 Visual Studio 中的安装项目,除非确实需要。

有帮助吗?

解决方案

录制或创建宏:

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 /命令“Macros.MyMacros.RefreshDependency C:\MyProjects\MyApp\”

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top