Wix引导程序

2024-03-23

我使用 WPF 编写了一个托管 wix 引导程序。实际的安装步骤需要链接多个 msi/exe 和批处理文件。

<Chain>
 <MsiPackage SourceFile="xxx"/>
 <ExePackage Id="Test" SourceFile="..\TestBatch.bat" Vital="yes"/>
 <MsiPackage SourceFile="yyy"/>
</Chain>

在每个包的执行期间,应显示一条消息(最好来自引导程序 UI),指示当前正在执行哪个 msi/exe 包/批处理文件。 简而言之,引导程序中需要 ProgressText 我怎样才能实现这一点?

另一个问题:我不希望所有的 msi 都打包到引导程序 exe 中。这是因为: 每次更改 msi 时,我们只想发送更新/修改的 msi,而不是整个引导程序 exe。有没有办法做到这一点?


两个答案,一个建议:

  1. 要在安装 MsiPackages 期间获取消息,请处理BootstrapperCore.ExecuteMsiMessage事件。那里的事件参数将包含一条消息,其中包含您正在查找的数据。

  2. 要配置包的压缩方式或不压缩方式,请使用Compress属性。您可以标记整个Bundle/@Compress='no'或标记每个包装Compress='no' (or 'yes'如果你想走那条路)。

--

建议:请务必将 DetectCondition 添加到 ExePackages,以便 Burn 知道 ExePackages 是否已存在。

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

Wix引导程序 的相关文章

  • 未定义的预处理器变量“$(var.WixInstall.TargetPath)”。 WixInstaller D:work\Extractor\WixInstaller\Product.wxs

    我在使用 wix 创建 Windows 安装程序时遇到以下错误 未定义的预处理器变量 var WixInstall TargetPath WixInstaller D work Extractor WixInstaller Product
  • wix 主要升级未安装所有文件

    我有一个非常简单的 WiX 项目 版本 3 7 它安装一些文件 NET 程序版本 6 0 0 0 我准备使用 WiX 中的 MajorUpgrade 功能发布新版本 6 0 1 0 我在 Product 元素中保持 UpgradeCode
  • Wix 自定义操作仅在安装期间执行,但不在升级和删除时执行?

    我有一个自定义操作 该操作只能在安装期间执行 而不能在次要版本升级和删除期间执行 我尝试了不同的条件 但 CA 正在次要版本期间执行 1 未安装 或不 删除 全部 并升级产品代码 2 未安装 3 未安装 或未 已安装并删除 全部 并升级产品
  • 添加/删除程序中的 Wix 图标

    我正在使用 Wix 来创建我的安装程序 据官方称文档 http wixtoolset org documentation manual v3 howtos ui and localization configure arp appearan
  • 使用 WiX 进行重大升级后无法启动 Windows 服务

    我有一个非常简单的 WiX 项目 没有什么花哨 当尝试对现有安装执行 MajorUpgrade 时 无法启动服务 并且不可避免地会回滚到以前的版本并正常启动服务 我已经删除了Start install 并成功手动启动应用程序 所以我知道这不
  • WIX 3.9 及更高版本的自定义操作 RegisterComPlus 发生错误

    在 Microsoft 我们长期以来一直使用 WIX 工具集版本 3 5 2519 0 来为我们名为 System Center Service Manager 又名 SCSM 的产品构建安装程序和补丁 最近我们需要更新到 WIX Tool
  • 如何使用 WiX 安装和启动 Windows 服务

    我尝试在 Wix 中使用下面的代码 但是在安装时 安装程 序在 正在启动服务 状态下冻结了大约 3 分钟 然后我收到此消息 Service Jobservice 无法启动 请验证您是否有足够的权限来启动系统服务 我的代码有什么错误吗 并且可
  • 如何确定现有应用程序的安装范围?

    我有一个基于的安装程序WixUI Advanced允许用户选择安装范围 每个用户或机器范围 升级时 安装了较低版本的现有应用程序 我想隐藏安装范围屏幕并自动选择他们上次选择的安装范围 如何判断先前安装使用的安装范围 Edit 查看我的 MS
  • 我应该如何处理 WiX 安装程序中的产品升级?

    我有一个相当大的 WiX 安装程序 250 Mb 以上 我正在尝试制定合适的升级策略 安装程序中的大多数文件都不会更改 并且当只有一两个文件发生更改时 我们不希望分发整个包 我研究了主要和次要升级 我的理解是 如果产品 ID 发生变化 只要
  • Wix 安装程序 - 根据属性创建文件夹层次结构

    我在用Wix 3 6 http wixtoolset org 创建一个设置 我仍在不断学习 那里的信息仍然分散 我正在等待我的 Wix 开发人员指南书到达 我目前有一个自定义 UI 对话框 用户可以在其中输入一些应用程序配置 该配置的一部分
  • 使用帮助库管理器和 WiX 安装帮助

    我试图通过使用 WiX 运行 Sandcastle 帮助文件生成器在构建我的 Sandcastle 项目后创建的 HelpLibraryManagerLauncher 将我自己的帮助文件添加到 Visual Studio 2010 的帮助库
  • WiX - 根据环境将编译后的 web.config 复制到网站根目录

    作为 WiX 安装的一部分 我将所有转换 编译的 web config 文件复制到安装目录 编译后的 web config 的名称格式为 web ENV config 在我的安装 UI 中 我创建了一个自定义对话框 在其中解析 ENV 并填
  • 使用 元素通过 Wix 运行 SQL 脚本文件

    我是 Wix 安装程序的新手 我有一个要求 必须提供 SQL Server 登录凭据并从特定路径运行脚本 我不明白出了什么问题 项目已成功构建并创建了 msi 运行后我收到以下错误 错误26204 错误 2147217900 无法执行SQL
  • WiX - 安装 Windows 服务以在 x64 模式下运行

    我正在使用 WiX 3 5 及其 ServiceInstall 标签安装 Windows 服务
  • 如何在 WIX 中引用用户的主目录

    我正在为 SDK 创建一个安装程序 其中包括由最终用户编译的源代码 我希望我的 Wix 安装程序默认将其放入用户的主目录中 但我找不到要使用的正确属性名称 您还可以参考HOMEPATH环境变量与 HOMEPATH 有关用于属性的语法的更多详
  • Burn in WiX 3.6 如何将 MSI 文件捆绑到 .exe 中?

    我有兴趣了解 WiX 如何捆绑使用 Burn 创建的 EXE 文件 我知道创建一个自解压 EXE 文件非常简单 我已经完成了一百万次了WinRAR http en wikipedia org wiki WinRAR EXE 文件解压到哪个目
  • wix 3 安装程序:未解析的绑定时变量!(bind.fileVersion.Name.exe)

    我正在尝试使用 Wix3 中的绑定 bind fileVersion 即 3 11 1 由于某些原因 我收到以下错误消息 未解析的绑定时变量 bind fileVersion TestWix3 exe 我的目标是填写 产品 ID 行 特别是
  • 在每台计算机安装中删除 HKCU 下的注册表项

    我使用 WiX 3 6 构建了一个 perMachine 安装程序来安装我尚未开发的软件 不幸的是 该软件在执行期间在 HKCU 下创建了一些注册表项 卸载时 还应删除自行创建的密钥 移除这些钥匙似乎并不那么容易 我正在与 ICE57 和
  • 将构建参数传递给 .wxs 文件以动态构建 wix 安装程序

    我是一名学生开发人员 我已经为我现在工作的公司构建了几个安装程序 所以我对WIX还是比较熟悉的 我们最近决定拥有一个构建服务器来自动构建我们的解决方案 它构建调试和发布以及混淆 和非混淆 项目 你真的不需要理解这些 您需要了解的是 我有相同
  • WiX 属性引用另一个属性

    我正在尝试为我的应用程序创建多个快捷方式 通过使用在命令行上传递不同的参数Arguments的属性Shortcut http wix sourceforge net manual wix2 wix xsd shortcut htm元素 我希

随机推荐

  • 道场:道场 onblur 事件

    我有一个 dojo 1 5 的表单设置 我正在使用 dijit form ComboBox 和 dijit form TextBox 组合框具有 汽车 自行车 摩托车 等值 文本框是组合框的形容词 因此 组合框中的内容并不重要 但如果组合框
  • C# 修改身份或添加声明

    应用程序是 Blazor Server NET Core 5 0 我正在使用 NET Core 的身份系统 但遇到了问题 我希望将这个人的名字与身份一起存储 以便我可以轻松地调用它 目前我有一个类覆盖基本身份 public class Ap
  • 如何访问 Firefox Web 控制台命令历史记录?

    在 Google Chrome 开发工具中访问最后 30 个 javascript 控制台命令相当容易 取消对接开发工具并按Ctrl Shift I在其中检查 devtools 本身 在新的开发工具窗口中 在控制台中键入以下命令 gt lo
  • 如何删除 MongoDB 中的所有数据库?

    I have a list of databases in my MongoDB How to delete all databases except local admin and config 您可以使用getDBNames 方法中的m
  • iphone sdk 4.2.1 的问题

    可能是个愚蠢的问题 当在调试模式下在设备上运行我的项目时 我收到很多警告 其中包含以下字符串 警告 无法读取符号 Developer Platforms iPhoneOS platform DeviceSupport 4 2 1 8C148
  • 创建 Date 对象时是否应该使用“final”修饰符? [复制]

    这个问题在这里已经有答案了 可能的重复 什么时候应该使用final https stackoverflow com questions 154314 when should one use final Java 程序员什么时候更喜欢使用 f
  • URL 中带有斜杠“/”的路由参数

    我知道您可以在路由属性中应用通配符以允许 例如日期输入例如 Route orders orderdate 通配符的问题仅适用于 URI 中的最后一个参数 如果想要具有以下 URI 我该如何解决该问题 Route orders orderda
  • C#:WebRequest 代理 = null 副作用

    有谁知道吃药有什么副作用吗webrequest proxy null在 HttpWebRequest 中 MSDN NET Framework 4 说要使用GlobalProxySelection GetEmptyWebProxy 当不应该
  • 这应该是这样的吗?

    我的服务器上有这段代码here http smplsite com sandbox2 process asmx 是的 我知道 ASMX 是一个坏主意 但 WCF 由于某种原因根本不起作用 using System Web using Sys
  • 通过 Drupal 执行查询时 Apache Solr 结果不同 – 为什么?

    我正在尝试创建一个自定义搜索界面阿帕奇 索尔 http lucene apache org solr using Drupal http drupal org 我对结果有一些奇怪的问题 当我从 Solr 的内置 Web 界面运行它时 相同的
  • Magento - 客户地址国家/地区下拉列表问题

    我正在使用 Magento CE 1 7 0 2 最近从 1 4 2 0 升级 在后端编辑 创建客户地址时 国家 地区下拉字段为空 无法选择任何选项 它也不适用于前端地址下拉列表 任何想法导致此问题 我能找到的唯一代码提示是 this de
  • C# 中套接字重用有什么好处

    我正在开发开源套接字服务器库 https sourceforge net projects socketservers https sourceforge net projects socketservers 我想向这个库添加套接字重用功能
  • Android 的新 Jack 编译器真的那么慢吗?

    在我的一些 Android 项目中 我发现自从使用新的 Jack 编译器以来 构建速度变得相当慢 我需要它来使用 lambda 等 Java 8 功能 但漫长的建设时间有点令人不安 所以我建立了一个新的Android项目 它只包含一个Mai
  • 在内存中强制渲染 WPF 控件

    我有以下代码 void Test currentImage Source GetBitmap RenderTargetBitmap rtb new RenderTargetBitmap 100 100 96 0 96 0 PixelForm
  • EMR 5.21、Spark 2.4 - Json4s 依赖关系已损坏

    Issue 在 EMR 5 21 中 Spark Hbase 集成已损坏 df write options format save 失败 原因是 Spark 2 4 中的 json4s jackson 版本 3 5 3 EMR 5 21它在
  • 使用 pytest 运行trace.py

    我正在尝试使用trace py跑步时pytest 我知道pytest有自己的覆盖率插件pytest cov但限制 每行执行的次数不可用 不允许我现在使用它 同样对于coverage py 我正在尝试这个命令 python3 4 m trac
  • 使用 WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH 获取所有 MotionEvent

    我的问题直接涉及到这个question https stackoverflow com q 4481226 394933 这个问题的答案表明了如何创建一个ViewGroup 将其嵌入到WindowManager 并允许WindowManag
  • Asp.net 自动完成扩展器不工作

    我想让文本框使用数据库自 动完成 我使用了以下代码 但在输出扩展器中显示了 html 代码 它甚至不执行函数后面的代码 我使用的以下代码无法正常工作 ASPx 页面
  • 如果项目存在于另一个数组中,则从数组中删除它们[重复]

    这个问题在这里已经有答案了 假设我有以下两个包含整数的 PHP 数组 foo array 1 5 9 14 23 31 45 bar array 14 31 36 我想删除其中的项目 foo其中存在相同的值 bar 所以这个过程的结果将创建
  • Wix引导程序

    我使用 WPF 编写了一个托管 wix 引导程序 实际的安装步骤需要链接多个 msi exe 和批处理文件