本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。 本文将带大家制作一个简单的 exe 安装包。...本文开始前,请确保你已经可以生成一个最简单的 msi 安装包了: 用 WiX 制作安装包:创建一个简单的 msi 安装包 由于 exe 格式的安装包自己带了 UI,所以 msi 中的 UI 怎么样都是可以不用管的...创建 WiX EXE 项目 在解决方案上右键,“添加”->“新建项目…”,然后在“添加新项目”窗口中搜索“WiX”,找到“Bootstrapper Project for WiX v3”。...注意,选择的模板要注意这些要点: 图标上标记了“wix”,标签上标记了“WiX” 模板简介中说明这是在创建“EXE”文件 创建完后,记得去项目属性里改一下输出的文件名。...)"/> 注意: 这里的 Walterlv.Installer.Msi 是前一篇教程中引用的项目的名称,你可以改成你自己的生成 MSI 的项目的名称。
本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。 本文将带大家制作一个简单的 msi 安装包。...本文操作基于系列教程中的一个最简项目,见 准备一个用于学习 WiX 安装包制作的 Visual Studio 解决方案。...注意,选择的模板要注意这些要点: 图标上标记了“wix”,标签上标记了“WiX” 模板简介中说明这是在创建“MSI”文件 引用目标项目 在 WiX MSI 项目(在本教程中,我取的名字为 Walterlv.Installer.Msi...编辑 Product.wxs 文件 添加要打包的文件 在 Product.wxs 文件中,找到提示你放文件、注册表项和其他资源的注释“”: 把周围的“Component”解除注释(因为我们真的要加打包的文件了); 删除“TODO”注释(本教程会继续教你如何完成打包,不需要 TODO 提示了); 在“Component”块中添加一行
这对后续的调试很有用。 小提示 实际上,这个 WPF UI 项目本应该做成 dll 而不是 exe,然后 App.xaml 和 App.xaml.cs 应该被删掉。... 小提示 本教程前面为了不引入过多的复杂度,没有使用 NuGet 包中的工具集而是单独下载了;所以实际上大家已经有了现成的工具集可供引用,我们才能使用此方法修改引用路径...并且此方法也能确保 WiX 打包项目使用的工具集版本和 WPF UI 项目使用的工具集版本一致。...然而使用 WiX 的 NuGet 包有额外的好处,可以使得团队成员无需每人单独安装 Wix 工具集即可完整编译安装包。不过这涉及到一些 NuGet 相关的高级操作,我在其他博客里有说到。...为了保证教程依然便于入门,所以我使用单独安装 WiX 工具集的方式来讲解。 如果大家感兴趣使用 NuGet 的方式来完成整个打包项目的构建,替代现在单独安装的方式,我可以单独再写一篇高级教程。 2.
Windows Installer XML(WiX) 这里所介绍的是Wix 3.0版本,目前还是beta....Wix 是 Windows Installer XML 的缩写,它是微软提供的一组工具和规范的集合,用来制作MSI格式的安装包。另外值得一提的是,Wix是微软少有的开源软件之一。...WiX和这些MSI的工具比较有不同的地方: 它完全用xml描述,使用命令行来生成,这非常容易整合到开发流程中,通过Nant,Msbuild调用 WiX是开源的,定制性非常好,你能够做用Wise或者InstallShield...微软内部的程序打包也是使用WiX的。...Deployment Tools Foundation (DTF) DTF就是msi.dll(Windows installer library)的.net包装,DTF使得为MSI安装包编写自定义Actions
Visual Studio的设计时引用组件的窗口中看到的程序集的位置和程序集的运行时位置是不一样的,特别是在全局程序集缓存(GAC)中的程序集,通过WiX制作Winodws安装程序的时候需要处理这个区别...WiX要把一个程序注册到GAC,只需要在File 上增加一个选项 Assembly=".net" 就可以了,但是注册到GAC的dll不会放到安装目录下方了,这就需要通过提供两个Component方式来处理...> 上面的例子的GACTest.dll注册了两个Component--RTGACTest和DTGACTest,RTGACTest下的File增加了属性Assembly
WiX是Windows Installer XML的简称,它是用于制作Windows安装包的工具集。它支持命令行环境,开发者可以及将它集成到他们的编译过程中创建MSI和MSM安装包。...更多信息可以参考:http://wix.sourceforge.net/ 最近研究了一下如何使用WiX制作具有时间限制的安装包,下图是demo的效果图。 ?...选择合适的脚本语言(VBScript or JScript)实现定制操作。 2. 选择合适的实际执行上面的脚本。 下面分享我的实现过程: 1.... 1 到这里就完成,代码很简单,希望有价值。
小提示 你不用担心绝对路径问题。...如下是 Walterlv.Installer.Msi.wixproj 项目文件中对 WixNetFxExtension 的引用代码: 1 2 3 4<WixExtension Include="WixNetFxExtension...小<em>提示</em> MSI 包只能判断 .NET Framework 是否存在,无法在不存在时执行 .NET Framework <em>的</em>安装操作。..._462_OR_LATER_INSTALLED); 如果不满足指定条件,则弹出<em>提示</em>信息,在 Message 属性中指定不满足条件时要弹出<em>的</em>信息。...也就是说新<em>的</em>判断条件<em>的</em>意思是:如果当前产品已安装,或者 .NET Framework 已安装有 4.6.2 或更高版本,则满足安装条件,准许安装,否则弹出错误<em>提示</em>。
如果你使用 WiX 制作安装包,并且遇到了问题,一定需要一个趁手的调试方案。本文介绍如何查看 WiX 制作的安装包的日志。...WiX 使用 Burn 引擎来制作 exe 捆绑包,默认情况下 Burn 引擎使用自带的安装界面来执行安装。...Burn 引擎提供了自定义引导程序的功能,于是你可以利用 Burn 引擎做出自己的 UI 来。比如 用 WPF 来制作安装包界面。...\Walterlv.Demo.MainApp.exe -l "debug.log" 其中,Walterlv.Demo.MainApp.exe 是我在 WiX 入门教程系列中使用的安装包名。...59]i007: Exit code: 0x0, restarting: No 本文会经常更新,请阅读原文: https://blog.walterlv.com/post/how-to-view-wix-burn-installer-logs.html
> 上面例子中开始菜单项的内容是这一段: <Directory Id="...:一个是Component 元素是<em>WiX</em>安装元素<em>的</em>原子单位,Component元素下<em>的</em>Shortcut就是快捷菜单项了,RemoveFolder 元素保证在卸载应用程序<em>的</em>时候 做相关<em>的</em>清理工作。...Windows <em>Installer</em> System64Folder 属性在32位<em>的</em>机器上被解析为System32 目录,在64位<em>的</em>机器上被解析为 SysWow64 目录.
使用 WiX 的 Burn 引擎制作自定义托管引导程序的 exe 安装包时,你可能会遇到这种情况:明明目标电脑上已经装好了 .NET Framework,但无论如何就是会提示安装,始终不启动自定义的安装界面...现象 即使是在开发机上(.NET Framework 已经装好),双击制作的 exe 安装包也依然会提示安装 .NET Framework: 图片 如果强行安装,装完也依然不会启动自定义的引导程序。...小提示 这个错误其实非常有误导性!...虽然错误码无法给我们带来有价值的信息,但那句提示至少可以让我们知道问题出在“无法加载托管宿主”这个范围。...所以以上的两个范围只能是范围 1。 小提示 实际上按目前的日志输出,已经足以确定是范围 1 了,不过这需要一些先验知识,即托管引导程序能捕获 Run 方法中的所有异常。
WiX完全用xml描述,使用命令行来生成。只要用任何一个文本编辑器就可以了。但是为了开发效率,我们还是借助于辅助工具比较好。...是一般使用的工具是两个:一个Visual Studio插件,在WiX的安装包里面附带,另一个就是WiXEdit,WixEdit是编辑的XMLXML的源代码的图形化工具箱.WixEdit会让你创造体制条件与...MSI和MSM测试wix工具箱.它提供了直观的、轻松的对话方式编辑wix文件来源。...comments around this Component element and the ComponentRef below in order to add resources to this installer...DiskPrompt 字符串 磁盘名称,通常是磁盘上印刷的可见文本。此文本可本地化,用于提示用户何时需要插入此磁盘。此值将用于 DiskPrompt 属性的“[1]”中。
之前通过域或者宏功能进行攻击的钓鱼文档,需要目标用鼠标进行点击交互,并且会有明显的弹窗提示,容易被察觉,并且现在已经被大部分杀软查杀。...例如之前常用的的powershell,mshta,regsvr32,这些方法都不会报毒,但是会有弹窗提示用户有风险程序需要运行,很明显一般人都会点击阻止程序运行,谁会点击允许啊?神经病啊!!! ?...为了方便阅读,Wix工具下载请点击这里[https://archive.codeplex.com/?...安装完Wix工具后执行下列前两条命令,会在同目录下生成一个calc.msi文件,最后一条命令表示远程下载并利用msiexec运行calc.msi文件。...这里解释下参数的意义: /q --以安静模式运行 /i --官方解释是状态消息,不加的话会弹出Windows Installer框引起怀疑 C:\Program Files (x86)\WiX Toolset
/cli@latest import)一直失败,提示npm ERR!...当触发这个快捷键,就打开开发者工具。而且这里将工具的模式设置为detach,即跟主页面分离,也就是说两个窗口,这样工具就不会占用主窗口的空间了,不会影响主窗口的内容。...WiX MSI: The WiX MSI target builds .msi files, which are "traditional" Windows installer files....,macOS上的图标必须是icns格式,而windows的图标必须是ico格式。...其他问题 跨域问题 应用使用的过程中发现出现了跨域问题,无法访问某些地址,提示CORS(Cross-Origin Resource Sharing)问题。
原文: Wix 安装部署(五) Bootstrapper 捆绑安装 Wix的xml配置确实很费劲,忍不住有点像吐槽一下,前四篇完成的功能在Windows Installer中通过配置能很快的弄出来...在Windows Installer中分别在Redistributables和Registry中设置就行了,特别是注册,可以直接把目录从你自己的电脑上拖过来。...但今天要讲的,就是wix中的Bootstrapper 项目,制作一个捆绑安装程序,也是Windows Installer中没有的。将多个需要安装的文件,按照顺序一次性装完。...一、Bootstrapper 初识 起因:wix的Setup 项目是无法自动安装.net framework的,必须要通过bootstrapper 应用程序去驱动wix中的Burn引擎来安装...这里只做个简单的参照。 很多PC软件都是可以自动检测版本,下载更新,VS自带的ClickOnce也可以运行前自己动检测,发现新版本会去提示下载更新,需要借助一个发布网站就行。
WiX Toolset (Windows Installer XML) 免费且开源的安装程序制作工具,适用于Windows平台。 使用XML和自定义的脚本语言编写安装程序脚本。...Advanced Installer 商业的安装程序制作工具,适用于Windows平台。 提供了易于使用的可视化界面和向导,使得制作安装程序变得简单。 具有丰富的功能,如自动升级、数字签名等。...QtIFW (Qt Installer Framework) 开源的安装程序制作工具,由Qt官方提供,适用于多个平台,包括Windows、Linux和macOS。...而且它是跨平台且使用XML的描述语言来配置安装程序的,所以这里选择QtIFW; 1.2 QtIFW概述 Qt Installer Framework(QtIFW)是一个开源的、跨平台的安装和打包工具套件...:定义用户界面文件,这里列出了两个界面文件"specialpage.ui"和"errorpage.ui"。
小提示 Bundle(exe 格式)的判断方法和 Product(msi 格式)的不一样,因此 为 WiX 制作的 msi 安装包添加 .NET Framework 环境检查 一文中所编写的代码对本文没有任何影响...Id="NetFx462Web"/> <MsiPackage Compressed="yes" SourceFile="$(var.Walterlv.<em>Installer</em>.Msi.TargetPath...="NetFx462Redist"/> <MsiPackage Compressed="yes" SourceFile="$(var.Walterlv.<em>Installer</em>.Msi.TargetPath...<em>WiX</em> 已开源,其中 <em>wix</em>3 <em>的</em>代码在这里: wixtoolset/<em>wix</em>3: <em>WiX</em> Toolset v3.x 在 /src/ext/NetFxExtension/wixlib 目录下有已定义好<em>的</em>各种...(<em>WiX</em> 中定义这些文件名是全大写<em>的</em>,下载下来<em>的</em>是全小写<em>的</em>,虽然实际上大小写并不影响)。
本文是 WiX Toolset 安装包制作入门教程 系列中的一篇,可前往阅读完整教程。...本文介绍安装 WiX Toolset 的两款 Visual Studio 插件,以便你能直接在 Visual Studio 里完整整套安装包的制作,无需使用命令行工具。...对初学 WiX 的开发者来说比较友好。...(只是新扩展名,里面的内容还是其他各种项目格式都用的那种) 为 WiX 打包项目提供专属的属性面板页,可供设置一些基本的属性 反正,装了这款插件能让你更容易编写和管理 WiX 安装包相关文件。...Extension”,然后点“下载”; 接下来,关闭所有已经打开的 Visual Studio,等待自动弹出的插件安装界面; 在 VSIX Installer 界面中,点击“Modify”以应用插件的安装
是的,你没听错,就是 Google 用于 Android 上的 Compose[2]。 Jetpack Compose 是用于构建原生 Android 界面的新工具包。...Jetpack Compose 使用更少的代码、强大的工具和直观的 Kotlin API 简化并加快了 Android 上的界面开发。...而现在,就可以编写同样的 UI 层代码,然后运行到 Android 和 Desktop 了。不难发现,这是 kotlin 一直在搞的套路,多平台共享代码。...这里会下载 wix3[6] 。 这里可能会出现下载失败,如果下载失败,请手动到 Github 下载 wix311-binaries.zip。...图标显示问题,在我这里显示一个黑框框。 但是,jvm 上的 GUI 技术有了新的发展未尝不是一件好事,可以一处编写,多端运行。
其实有很多种打包的方式,在这里我只介绍在VS2008下用Wix制作VSPackage的安装程序。您首先要下载并安装Wix toolset(http://wix.codeplex.com/)。...创建Wix项目 新建一个项目,项目类型选择Wix-》Wix Project,如下图: ? 完成后的解决方案视图如下: ?...安装成功之后,重启VS,点击工具菜单,可以看到我们的Package已经被安装进去了: ? 重新运行这个安装程序可以卸载掉我们的Package。.../nosetupvstemplates时耗费的时间比较久,但安装程序没有任何提示 要想变成中文,需要下载中文的wxl文件,并作为嵌入的资源把它添加到VSPackageInstaller项目中...如果想去掉安装时的license对话框,需要在Product.wsx的UI节点下增加下面的内容: <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog
binPath= "cmd /c start" type= own type= interact sc start TestService1 该方法在XP系统可以使用 Win7下使用时控制台提示: 警告...Win8下控制台提示错误,无法使用该方法 2、通过计划任务 使用at命令: at 7:50 notepad.exe 默认以system权限启动,适用于Win7 从Win8开始不再支持at命令 使用schtasks...《渗透测试中的msiexec》介绍过利用Advanced Installer制作msi文件的方法,这里不再赘述 本节对XPN提到的方法做复现,使用wix3制作msi文件 wix3下载地址: https:...//github.com/wixtoolset/wix3 msigen.wix的代码可参考如下地址: https://gist.github.com/xpn/d1ef20dfd266053227d3e992ae84c64e...为high权限 0x04 利用token复制获得System权限 可参考之前的文章:《渗透技巧——Token窃取与利用》 通过复制system权限的token,使进程获得system权限,常用工具如下:
领取专属 10元无门槛券
手把手带您无忧上云