如何使用完全独立的 .NET 4.0 安装程序制作 WiX 3.5 安装程序?

2024-01-14

继续上一个问题我在这里问 https://stackoverflow.com/questions/1128734/how-do-i-make-a-wix-installer-with-a-completely-self-contained-net-3-5-sp1-insta,我现在需要转移到vs2010。

我已经获得了 WiX 3.5 的最新每周版本,即 2010 年 6 月 5 日的版本。

这是我的安装程序中的相关行:

      <ItemGroup>
        <BootstrapperFile Include="Microsoft.Net.Framework.4.0">
          <ProductName>.NET Framework 4.0</ProductName>
        </BootstrapperFile>
        <BootstrapperFile Include="Microsoft.Windows.Installer.4.5">
         <ProductName>Windows Installer 4.5</ProductName>
       </BootstrapperFile>
      </ItemGroup>

and

<GenerateBootstrapper ApplicationFile="MySetup.msi" ApplicationName="MyProgram" BootstrapperItems="@(BootstrapperFile)" Path="C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\" ComponentsLocation="Relative" OutputPath="$(OutputPath)" Culture="en" />

然而,它就是行不通。在 vs2010 中,.NET Framework 4.0 和 Windows Installer 4.5 文件旁边有感叹号,属性页将它们列为“Unknown BuildAction BootstrapperFile”,并且构建似乎根本没有安装 .NET 4.0。相关警告是:

C:\source\depot\project\vs2010\WiXSetup\WiXSetup.wixproj(68,5): warning MSB3155: Item 'Microsoft.Net.Framework.4.0' could not be located in 'C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\'.

简短的答案是改变

<ItemGroup>
    <BootstrapperFile Include="Microsoft.Net.Framework.3.5.SP1" >
       <ProductName>.NET Framework 3.5 SP1</ProductName>
    </BootstrapperFile>
    <BootstrapperFile Include="Microsoft.Windows.Installer.3.1" >
       <ProductName>Windows Installer 3.1</ProductName>
    </BootstrapperFile>
</ItemGroup>

<Target Name="setup">
    <GenerateBootstrapper
        ApplicationFile="myproduct.msi"
        ApplicationName="myproduct"
        BootstrapperItems="@(BootstrapperFile)"
        Path="C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\"
        ComponentsLocation="Relative"
        OutputPath="$(cddir)"
        Culture="en"/>
</Target>

to

<ItemGroup>
    <BootstrapperFile Include=".NETFramework,Version=v4.0" >
       <ProductName>.NET Framework 4.0</ProductName>
    </BootstrapperFile>
    <BootstrapperFile Include="Microsoft.Windows.Installer.3.1" >
       <ProductName>Windows Installer 3.1</ProductName>
    </BootstrapperFile>
</ItemGroup>

<Target Name="setup">
    <GenerateBootstrapper
        ApplicationFile="myproduct.msi"
        ApplicationName="myproduct"
        BootstrapperItems="@(BootstrapperFile)"
        Path="C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\"
        ComponentsLocation="Relative"
        OutputPath="$(cddir)"
        Culture="en"/>
</Target>

我通过进入我的机器上的 Visual Studios 2010 的 SDK 引导程序目录 (C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper) 来解决这个问题。下面有一个项目列表,可以通过Wix 并包含在内用于引导。每个文件夹中都有一个名为 Product.xml 的文件。看了帮助后here https://stackoverflow.com/questions/1128734/how-do-i-make-a-wix-installer-with-a-completely-self-contained-net-3-5-sp1-insta为了创建 .NET 3.5 安装程序,我发现 Product 标记中的 ProductCode 属性似乎标识了 boostrap 元素的名称,因此当我将值更改为 C:\Program Files\Microsoft SDKs\Windows\v7 中引用的值时。 0A\Bootstrapper\Packages\DotNetFX40\Product.xml 它有效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用完全独立的 .NET 4.0 安装程序制作 WiX 3.5 安装程序? 的相关文章

随机推荐

  • getExternalStorageDirectory 不可用时的后备解决方案?

    我目前使用Environment getExternalStorageDirectory 获得一个可以临时存储一些数据的位置 然后在使用后被删除 该数据的范围为 1 100MB 这工作正常 但在某些情况下 外部存储的状态被删除或卸载等 并且
  • 如何将此类编写为完全通用并根据一个请求返回不同的响应?

    我被要求为应用程序创建一系列报告 并且一如既往 我正在寻找减少编写代码量的方法 我已经开始尝试想出最简单的方法来请求一份报告 这是我的想象 var response ReportGenerator Generate Reports Repo
  • 如何从联系人框架获取帐户名称

    我们知道iOS中的联系人可以从Google iCloud and Phone 好吧 我们可以使用以下方法获取一堆联系人Contacts framework 但我想知道它属于哪个帐户 我的意思是 我需要区分电子邮件和电话同步联系人 有什么办法
  • 使用 std::cin 初始化 const 变量有什么技巧吗?

    常见 std cin 用法 int X cin gt gt X 这样做的主要缺点是 X 不能const 很容易引入bug 我正在寻找一些技巧来创建一个 const 值 并只写入一次 天真的解决方案 Naive int X temp cin
  • Mamp 本地主机解析速度非常慢

    当我对 PHP WordPress 网站进行本地更改时 本地主机似乎在 20 30 分钟内没有更新 我使用的是 Mac OSX 10 8 4 并使用 MAMP Pro 我有两个网站 我为它们创建了单独的主机条目 我们称它们为mysite1
  • Windows shell:如何获取音频设备名称?

    我不确定这是否严格来说是一个编程问题 只要我 不介意使用额外的软件来解决问题 只要它保持可编写脚本或命令行即可 这是 非 GUI 解决方案 不管怎样 我已经发布了另一个 有点不同 问题超级用户 https superuser com que
  • 将字符串转换为整数十六进制值“奇怪”行为

    我注意到java不允许我存储大量数字 例如 2000000000 即 20 亿显然是整数类型 但如果我存储相应的十六进制值 即int largeHex 0x77359400 这可以 所以我的程序需要增加到 2 32 刚刚超过 42 亿 我测
  • WSO2 MDM iPhone 配置文件安装问题(无效的 DER 编码,未结束)

    我正在为 iPhone MDM 使用 WSO2 3 2 0 IOT 服务器 并按照网站中的说明安装它 我生成了 MDM APNS 证书 并将其添加到服务器上的 ios 配置中 在为 MDM 注册 iPhone iphone 6 时 我在 i
  • PyPI 包的可选依赖项

    我想创建一个新的PyPI https pypi org 包 但这将有一个特殊的轮子 我将像这样调用它 pip install misoftware customer1 这可能吗 如果是这样我怎样才能提供补丁 customer1 例如我的主要
  • 如何向 link_to 外部 URL 添加参数?

    在我的 显示用户 页面中 我想添加一个指向外部网站的链接 并将一些值保存在作为参数传递的表中 我的第一部分工作正常 这很简单 但我还想传递一些保存在数据库中的参数 例如 user email user first name etc 所以基本
  • BigQuery - 替换字符串中的空格

    我的头发在这里变白了 我有一个表 其中有一列我想删除其中的空格 预期结果 8 800 000 克朗 gt 8800000 克朗 我无法让它发挥作用 请参阅下面的查询输出 为什么空白没有被删除 当我对模拟数据执行查询时 它起作用 第一个示例中
  • bazel.rc 中的默认、特定于平台、Bazel 标志

    我想知道特定于平台的默认 Bazel 构建标志是否可能 例如 我们想使用 workspace status command但这必须是 Linux 上的 shell 脚本 并且必须指向 Windows 上的批处理脚本 有没有一种方法可以让我们
  • 如何使用 Java 中的 Log4j 逐步配置 jboss 6.x 中的日志记录

    大家好 我是 Jboss 的新手 所以我在 Jboss 6 1 中设置日志记录时感到困惑 我做了什么 我已经下载并解压了 Jboss jboss eap 6 1 在我的机器上然后我按照中给出的步骤操作this http www master
  • 无 DOM、静态类型、提前编译的 JavaScript 代码与本机代码的性能相比如何?

    为什么 Javascript 比本机代码慢 的传统答案是 因为它被解释了 这种说法的问题在于解释并不是语言本身的品质 事实上 现在大多数 Javascript 代码都经过 JIT 处理 但这还远未接近本机速度 如果我们从方程中删除解释因素并
  • 在不登录的情况下在AWS EC2实例上部署docker容器

    我是微服务的初学者 今天花了几个小时研究 AWS 最微小的痛苦事情 非常感谢任何专家的建议 因为我怀疑下一步很小 但可能需要几个小时才能解决 所以我部署了一个 Nano 实例ssh进去 不得不实际重做它来修复安全组 但无论如何它最终起作用了
  • ASP.NET Core WebApi

    我正在尝试使用新的 NET Core 制作一个 Web api 但使用时遇到一些麻烦 HttpPost 当我使用邮递员时 它不会返回任何内容 另外 当我在返回线上放置断点时 它永远不会被命中 这是我在控制器中的方法 POST api val
  • 从嵌套列表中提取然后 row.bind data.frames

    我有一个输出大矩阵 Mat1 和小数据帧 Smalldf1 的函数 我将它们存储在名为 Result 的列表中 该函数在循环内运行 因此我创建了 结果 列表的许多版本 直到循环结束 每次我将它们添加到名为 FINAL 的列表中时 在循环结束
  • 如何通过 Django 在视图中获取上传的文本文件?

    我现在正在制作网络应用程序 该应用程序获取具有未组织数据的文本文件并对其进行组织 我现在在Python3中使用Django 我已经在模板中制作了表单数据 Teplates gt
  • 启动前检查 .NET 依赖项

    我有几个正在开发的应用程序 并且喜欢将其分发给需要 Microsoft 提供的 dll 和 或框架的朋友 具体来说 XNA 我厌倦了从他们那里收到说 它崩溃了 的电子邮件 而实际上 发生的只是他们没有安装 XNA 或 NET 3 5 或其他
  • 如何使用完全独立的 .NET 4.0 安装程序制作 WiX 3.5 安装程序?

    继续上一个问题我在这里问 https stackoverflow com questions 1128734 how do i make a wix installer with a completely self contained ne