首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用 WiX 制作安装包:设置的 .NET Framework 前置会始终安装,即使目标电脑已经自带或装好

使用 WiX 的 Burn 引擎制作自定义托管引导程序的 exe 安装包时,你可能会遇到这种情况:明明目标电脑上已经装好了 .NET Framework,但无论如何就是会提示安装,始终不启动自定义的安装界面...现象 即使是在开发机上(.NET Framework 已经装好),双击制作的 exe 安装包也依然会提示安装 .NET Framework: 图片 如果强行安装,装完也依然不会启动自定义的引导程序。...看起来不断提示要安装 .NET Framework,会让人误以为是 .NET Framework 的安装判断条件写出了问题,然后朝着 Product.wxs 中的 Condition、Bundle.wxs...所以导致弹出 .NET Framework 安装界面的原因是引导程序无法加载我们的自定义界面,误认为前置没有装好,所以弹出了前置安装界面。...Using Burn 奇葩史的奇葩事 - [译]:WiX Toolset使用技巧——使用Burn引擎安装.NET Framework 官方文档示例的注释中要大家改 host/@assemblyName

48920
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    用 WiX 制作安装包:创建一个简单的 msi 安装包

    本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。 本文将带大家制作一个简单的 msi 安装包。...本文操作基于系列教程中的一个最简项目,见 准备一个用于学习 WiX 安装包制作的 Visual Studio 解决方案。...注意,选择的模板要注意这些要点: 图标上标记了“wix”,标签上标记了“WiX” 模板简介中说明这是在创建“MSI”文件 引用目标项目 在 WiX MSI 项目(在本教程中,我取的名字为 Walterlv.Installer.Msi...编辑 Product.wxs 文件 添加要打包的文件 在 Product.wxs 文件中,找到提示你放文件、注册表项和其他资源的注释“<!...Product.wxs // 除了本文所说的改动外,本文件的其他内容均保持模板文件的原始模样。

    2K60

    C# Windows桌面应用打包指南

    使用 MSI 安装包MSI(Microsoft Installer)是 Windows 系统原生的安装包格式,适合更复杂的应用程序。...使用 WiX Toolset 打包WiX Toolset 是一个开源的工具集,允许开发者通过 XML 定义复杂的安装包。WiX 支持高级功能,如安装多个组件、创建注册表项、服务安装等。...使用 WiX Toolset 打包的步骤:安装 WiX Toolset。在 Visual Studio 中创建一个新的 WiX 项目。编写 XML 文件,定义需要打包的组件和安装逻辑。...编写 NSIS 安装脚本,配置安装过程中的各项细节。使用 NSIS 编译器生成安装程序。第三方工具的优势:灵活、轻量,可以通过脚本实现高度自定义。支持压缩安装包,生成体积较小的安装程序。...对于较为简单的应用,可以选择 ClickOnce 或 Visual Studio Installer Projects,而对于复杂的应用程序,可以考虑使用 MSI 安装包或 WiX Toolset 来满足定制化安装的需求

    34632

    用 WiX 制作安装包:为 WiX 制作的 msi 安装包添加 .NET Framework 环境检查

    本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。 前面我们制作完成了一个简单的 msi 安装包。...小提示 MSI 包只能判断 .NET Framework 是否存在,无法在不存在时执行 .NET Framework 的安装操作。...在 WiX 的配置文件 wxs 里,引用一个属性的方法是使用 元素。...也就是说新的判断条件的意思是:如果当前产品已安装,或者 .NET Framework 已安装有 4.6.2 或更高版本,则满足安装条件,准许安装,否则弹出错误提示。...如需检查这些环境,要么需要自己写判断方法(不属于此新手教程内容),要么需要升级到 WiX 4(本教程基于 WiX 3)。

    1.2K30

    使用WiX制作简单MSI安装程序

    是一般使用的工具是两个:一个Visual Studio插件,在WiX的安装包里面附带,另一个就是WiXEdit,WixEdit是编辑的XMLXML的源代码的图形化工具箱.WixEdit会让你创造体制条件与...2、下载WixEdit 在安装完WiX之后在Visual Studio上有几个WiX的模板,我使用的是Visual Studio 2008,看起来是这个样子的。 ?...创建一个新的WiX项目 1、文件--〉新建--〉项目 2、选择项目类型WiX,选择Wix项目模板点击确定 我们就创建了一个没有安装什么内容的WiX项目,内容如下: 的可见文本。此文本可本地化,用于提示用户何时需要插入此磁盘。此值将用于 DiskPrompt 属性的“[1]”中。...下面我们来自定义一个安装程序。 添加安装的图形界面 WiX的安装界面使用的是命令行模式,我们现在在增加一个图形的安装界面。

    3.7K90

    绕过360进行Word文档钓鱼

    之前通过域或者宏功能进行攻击的钓鱼文档,需要目标用鼠标进行点击交互,并且会有明显的弹窗提示,容易被察觉,并且现在已经被大部分杀软查杀。...0x01   首先下载该脚本,利用方法github上说的很清楚了,这里说下 -i 参数,test.rtf为你的输入文档,即运行下方代码后,生成的Doc文档内容和test.rtf一致。...这里解释下参数的意义: /q --以安静模式运行 /i --官方解释是状态消息,不加的话会弹出Windows Installer框引起怀疑 C:\Program Files (x86)\WiX Toolset...,利用模板文件默认打开电脑计算器,若要执行其他命令请自行修改模板文件的第15行 0x03   下面使用empire和上述的方法制作一份钓鱼文档。...首先配置好empire,具体的配置内容可以参考这篇文章[https://mari0er.club/post/empire.html],之后将生成的powershell代码复制粘贴到wix模板的第15行,

    2.6K50

    用 WiX 制作安装包:为 WiX 制作的 exe 安装包添加 .NET Framework 前置的安装步骤

    本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。 前面我们制作完成了一个简单的 exe 安装包。...小提示 Bundle(exe 格式)的判断方法和 Product(msi 格式)的不一样,因此 为 WiX 制作的 msi 安装包添加 .NET Framework 环境检查 一文中所编写的代码对本文没有任何影响...,以便后续步骤可以使用更专业的词汇来准确描述我们正在做的事情。...: 解释一下: 我创建了一个“Assets”文件夹用于存放刚下载好的 .NET Framework 的离线安装包(为了避免读者在概念上产生混淆,我刻意避开使用 redist 这个名字,以示说明解决方案内的文件夹结构仅为开发文件夹结构...附源代码 附上必要的源码,避免你在阅读教程时因模板文件的版本差异造成一些意料之外的问题。 Bundle.wxs // 除了本文所说的改动外,本文件的其他内容均保持模板文件的原始模样。

    85310

    用 WiX 制作安装包:创建一个简单的 exe 安装包

    本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。 本文将带大家制作一个简单的 exe 安装包。...本文开始前,请确保你已经可以生成一个最简单的 msi 安装包了: 用 WiX 制作安装包:创建一个简单的 msi 安装包 由于 exe 格式的安装包自己带了 UI,所以 msi 中的 UI 怎么样都是可以不用管的...Bundle.wxs // 除了本文所说的改动外,本文件的其他内容均保持模板文件的原始模样。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 使用-相同方式共享 4.0 国际许可协议 进行许可。...欢迎转载、使用、重新发布,但务必保留文章署名 吕毅 (包含链接: https://blog.walterlv.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

    1.5K20

    用 WiX 制作安装包:制作 WPF 安装包界面(入门篇)

    前面我们制作完成了一个可自动安装 .NET Framework 依赖的 exe 安装包,下面我们将学习制作自己的安装界面。本文使用 WPF 制作安装包界面。 本文准备做什么?... 小提示 本教程前面为了不引入过多的复杂度,没有使用 NuGet 包中的工具集而是单独下载了;所以实际上大家已经有了现成的工具集可供引用,我们才能使用此方法修改引用路径...然而使用 WiX 的 NuGet 包有额外的好处,可以使得团队成员无需每人单独安装 Wix 工具集即可完整编译安装包。不过这涉及到一些 NuGet 相关的高级操作,我在其他博客里有说到。...为了保证教程依然便于入门,所以我使用单独安装 WiX 工具集的方式来讲解。 如果大家感兴趣使用 NuGet 的方式来完成整个打包项目的构建,替代现在单独安装的方式,我可以单独再写一篇高级教程。 2....如果发现无法运行,请前往此篇文章调试和解决问题: 使用 WiX 创建最简单的安装包过程中可能出现的问题和解决方案汇总 如果可以正常运行,那么恭喜你,完成了 WiX 安装包入门教程的 Hello World

    1.1K20

    Wix 安装部署(五) Bootstrapper 捆绑安装

    原文: Wix 安装部署(五) Bootstrapper 捆绑安装 Wix的xml配置确实很费劲,忍不住有点像吐槽一下,前四篇完成的功能在Windows Installer中通过配置能很快的弄出来...wix又是一个极端,完全依赖xml。这两天想解决自动检测.net framework版本没有就自动安装的功能和注册dll的就很费劲。...但今天要讲的,就是wix中的Bootstrapper 项目,制作一个捆绑安装程序,也是Windows Installer中没有的。将多个需要安装的文件,按照顺序一次性装完。...一、Bootstrapper 初识 起因:wix的Setup 项目是无法自动安装.net framework的,必须要通过bootstrapper 应用程序去驱动wix中的Burn引擎来安装...这里只做个简单的参照。 很多PC软件都是可以自动检测版本,下载更新,VS自带的ClickOnce也可以运行前自己动检测,发现新版本会去提示下载更新,需要借助一个发布网站就行。

    1.3K20

    如何调试 WiX Burn 制作的自定义托管引导程序的 exe 安装包

    WiX 本身很强大,使用本来也没那么难。奈何 WiX 3 的官方文档可读性极差且长期不更新,于是新手在使用 WiX 制作安装包时极容易出问题,导致制作的安装包各种行为不正常。...虽然我写了一系列的 WiX 安装包入门教程来帮助大家避坑,还写了一些常见问题的解决方法,但大家遇到的问题总会比我整理的要多。所以教大家 查看日志 很多时候,看日志能帮助你快速找到原因。...以下是查看日志的方法: 如何查看用 WiX 制作的安装包的日志 Debugger.Launch() 如果安装过程能执行到你编写的 C# 代码中,那么可以在入口处加上 Debugger.Launch()...对比测试 如果出现的问题日志上说明不明显,代码也没执行到自定义引导程序部分,那么可以考虑对照正常状态的 WiX 项目替换组件调查。这可以快速将问题范围定位到某个文件甚至是某行代码上。...本文会经常更新,请阅读原文: https://blog.walterlv.com/post/how-to-debug-wix-burn-installer.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验

    30560

    WiX 安装包制作最佳实践:Id、UpgradeCode 应该怎么设置?

    在 WiX 安装包制作时,Product.wxs 文件中的 Product 标签中存在一些属性,这些属性应该如何设置才是比较合适的呢?...本文是对我另一篇入门教程博客的一点补充: 用 WiX 制作安装包:创建一个简单的 msi 安装包 Id、Version Id:产品 Id。 Version:产品版本。...关于这两个值的变化: 如果这两个值都没有更改而构建出一个新的 MSI 安装包,那么 Windows Installer 会认为这两个包之间属于“小型更新”(Update)。...特别把这几种升级类型的英文名称拿出来说,是因为我们在 Product.wxs 中配置升级策略时会使用到这些名称。了解这些升级方式有助于我们写出符合预期的升级策略。...在没有配置升级策略的情况下,如果有两个不同的 MSI 包设置了相同的 Id 和 Version,那么当安装了其中一个之后,另一个将无法安装。

    62580

    用 WiX 制作安装包:安装 WiX Toolset 系列 Visual Studio 插件

    本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。...本文介绍安装 WiX Toolset 的两款 Visual Studio 插件,以便你能直接在 Visual Studio 里完整整套安装包的制作,无需使用命令行工具。...(只是新扩展名,里面的内容还是其他各种项目格式都用的那种) 为 WiX 打包项目提供专属的属性面板页,可供设置一些基本的属性 反正,装了这款插件能让你更容易编写和管理 WiX 安装包相关文件。...安装插件 截至目前(2021年7月),WiX Toolset 的 Visual Studio 扩展最高支持到 VS2019,因此你需要在不高于 VS2019 的扩展管理里面下载插件。...Extension”,然后点“下载”; 接下来,关闭所有已经打开的 Visual Studio,等待自动弹出的插件安装界面; 在 VSIX Installer 界面中,点击“Modify”以应用插件的安装

    1.8K40

    WiX安装选项--环境变量

    对系统环境的更改将写入注册表,而且通常需要重启计算机才能生效。通常我们的程序中也会使用环境变量,如何在WiX设置环境变量呢?...安装一个环境变量,我们就需要向Environment table中添加一条记录,其中有几个字段是必须设置的: Environment - public key to be referenced from...在安装/删除程序的时候需要处理我们的环境变量: 安装程序:  如果相同名称的环境变量名称不存在,则创建一个变量: 如果已经存在一个相同名称的变量: 用新的值代替旧值....> Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 安装例子程序,在系统环境变量就可以看到TestMinVar这个环境变量了,卸载这个例子程序,环境变量TestMinVar也会被删除。

    1.4K100

    WiX Toolset 安装包制作入门教程(目录篇)

    WiX 全称为 Windows Installer XML,是使用 XML 文件创建 Windows 安装程序的一组工具集。它开源且完全免费。...插件 准备一个用于学习 WiX 安装包制作的 Visual Studio 解决方案 使用 WiX 创建一个简单的 msi 安装包 使用 WiX 创建一个简单的 exe 安装包 要求 .NET Framework...解决方案 使用 WiX 创建一个简单的 msi 安装包 为 WiX 制作的 msi 安装包添加 .NET Framework 环境检查 使用 WiX 创建一个简单的 exe 安装包 为 WiX 制作的...Studio 插件 准备一个用于学习 WiX 安装包制作的 Visual Studio 解决方案 使用 WiX 创建一个简单的 msi 安装包 使用 WiX 创建一个简单的 exe 安装包 为 WiX...制作的 exe 安装包添加 .NET Framework 前置的安装步骤 使用 WPF 制作安装界面(入门篇) 你可能在 Hello World 系列中遇到的问题和解决办法汇总 方法与汇总 使用 WiX

    3.3K60

    使用WiX制作具有时间限制的安装包

    WiX是Windows Installer XML的简称,它是用于制作Windows安装包的工具集。它支持命令行环境,开发者可以及将它集成到他们的编译过程中创建MSI和MSM安装包。...更多信息可以参考:http://wix.sourceforge.net/ 最近研究了一下如何使用WiX制作具有时间限制的安装包,下图是demo的效果图。 ?...选择合适的脚本语言(VBScript or JScript)实现定制操作。 2. 选择合适的实际执行上面的脚本。 下面分享我的实现过程: 1....实现一段检查当前时间是否越界的脚本代码,并将它封装到CustomAction中。     使用VBScript比较当前日期和限定日期,小于0表示越界,这时调用WScript想注册表添加坏键。...选择合适的时机执行上述脚本,越早越好。     在本文的demo中,我在PrepareDlg之前执行脚本,对于大多数情况而言,这已经是最早的时机了。

    1.5K60
    领券