【问题标题】:Automate Visual Studio Setup Project自动化 Visual Studio 安装项目
【发布时间】:2010-09-23 00:43:54
【问题描述】:

我正在使用 Visual Studio 2008,我想通过运行批处理文件来自动化构建安装程序的过程。

批处理文件应首先对程序集进行签名,然后开始构建安装程序。创建安装程序后,批处理文件也应签署.msi 文件。

这可能吗?

【问题讨论】:

    标签: visual-studio visual-studio-2008


    【解决方案1】:

    如果您想自动化整个构建过程,从从版本控制中提取代码开始,您可能会发现这篇文章很有用。

    Automated Extract and Build from Team System using PowerShell

    【讨论】:

      【解决方案2】:

      是的,它可以从批处理文件中完成。要对程序集进行签名,您需要从 Microsoft Platform SDK 获取 signtool.exe 的副本。内置帮助将为您提供有关如何使用该工具的良好概述。下一个 Visual Studio 2008 采用 command line parameters,但您必须确保在尝试从命令行运行 devenv.exe 之前调用适当的 vcvars32.bat 脚本。最后,您可以使用signtool.exe 对您的 MSI 文件进行签名。

      【讨论】:

        【解决方案3】:

        MSBUILD 就是您所需要的。 Msbild 使用 xml 格式的 .proj 和 .target 文件。 Here 你可以找到微软的文档。我警告你这并不容易,但我强烈建议你花一些时间在这上面。你花在它上面的每一秒都会返回给你,乘以 100。 我们将它用于部分构建和部分构建,它可以完成所有工作:代码构建、数据库设置、配置文件、单元测试执行。

        【讨论】:

          【解决方案4】:

          正如 enba 所提到的,您所需要的只是 msbuild。如果您使用WiX 来生成您的 msi,则尤其如此,这意味着您可以只调用您的 WiX 解决方案文件。您只需要设置一个如下所示的 build.xml:

          <Project>
              <Target Name="Install">
                  <Exec Command="signcode.exe -spc mycert.cer -v mykey.pvk myproj\release\myassy.dll"/>
                  <MSBuild Projects="WixInstall.sln" Properties="Configuration=Release"/>
              </Target>
          </Project>
          

          假设 signcode.exe 在您的路径中,您所要做的就是“msbuild build.xml”。

          【讨论】:

          【解决方案5】:

          FinalBuilder 对此有一些支持。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2010-09-05
            • 1970-01-01
            • 2023-03-19
            • 1970-01-01
            • 1970-01-01
            • 2014-10-04
            • 1970-01-01
            相关资源
            最近更新 更多