Wix学习整理(7)——在开始菜单中为HelloWorld添加卸载快捷方式

简介: 原文:Wix学习整理(7)——在开始菜单中为HelloWorld添加卸载快捷方式通过前面的几篇随笔,我们已经给我们的HelloWorld提供了填写注册表信息,以及开始菜单快捷方式和桌面快捷方式。这些在安装时添加的内容,在卸载时也会自动地删除。
原文: Wix学习整理(7)——在开始菜单中为HelloWorld添加卸载快捷方式

通过前面的几篇随笔,我们已经给我们的HelloWorld提供了填写注册表信息,以及开始菜单快捷方式和桌面快捷方式。这些在安装时添加的内容,在卸载时也会自动地删除。但是,到目前为止,我们的卸载只有两种方式:通过原始安装包或控制面板中的卸载或更改程序。现在,我们来学习Wix如何为我们的HelloWorld在安装时在开始菜单中提供卸载的快捷方式。

一 添加卸载快捷方式

添加卸载的快捷方式也是通过<Shortcut>元素来实现的,关于如何添加快捷方式的更多详情,请参考本系列上一篇,在这里我们就讲讲添加卸载快捷方式的<Shortcut>元素的具体内容。

<Shortcut Id="UninstallHelloWorld"
          Name="Uninstall"
          Target="[SystemFolder]msiexec.exe"
          Arguments="/x [ProductCode]"
          Description="Uninstall HelloWorld" />

其中,Target指出了可运行程序msiexec.exe的位置,msiexec.exe是Windows Installer提供的客户端安装卸载程序服务。SystemFolder是Windows Installer预定义的属性,其值表示目标机器的System32文件夹所在路径,通常为C:\Windows\System32。Argument将安装包的ProductCode传递给msiexec.exe,告知要卸载的是哪一个产品。

完整的WiX源文件请看下面的Product.wxs,

Product.wxs

通过运行编译和链接命令,

candle Product.wxs
light Product.wixobj –out HelloWorld.msi –ext "C:\Program Files\WiX Toolset v3.6\bin\WixUIExtension.dll"

就生成了我们的HelloWorld.msi安装包文件。

二 验收我们的成果

双击HelloWorld.msi文件,安装HelloWorld。安装完成后,在开始菜单的所有程序下的HelloWorld目录下就看到一个命名为Uninstall的卸载快捷方式,如下图所示, 

单击Uninstall快捷方式,就可以快捷地卸载我们安装的HelloWorld了。然后,你再去查看一下注册表中安装时填写的信息以及安装的开始菜单快捷方式和桌面快捷方式是否都已被删除。

是的,我们要做到无残留卸载!

目录
相关文章
|
4月前
|
Linux
Deepin创建应用快捷方式
Deepin创建应用快捷方式
49 0
|
5月前
|
C++
03 C++ - CLion创建程序
03 C++ - CLion创建程序
49 0
|
12月前
|
Windows
如何解决 Windows 10 下右键菜单无法新建文件 | 一日一技
如何解决 Windows 10 下右键菜单无法新建文件 | 一日一技
110 0
|
Java Windows
基于java仿照windows的文件浏览器,编写一个树状视图的文件浏览器
基于java仿照windows的文件浏览器,编写一个树状视图的文件浏览器
121 0
基于java仿照windows的文件浏览器,编写一个树状视图的文件浏览器
|
IDE 开发工具
phpstorm打开项目不能显示最近文件的解决方法
phpstorm打开项目不能显示最近文件的解决方法
180 0
|
Windows
Windows下如何利用命令打开一个文件或者文件夹
Windows下如何利用命令打开一个文件或者文件夹
942 0
让Qt Creator不要每次鼠标点击"运行"后都编译源码,而是直接运行exe
让Qt Creator不要每次鼠标点击"运行"后都编译源码,而是直接运行exe
272 0
让Qt Creator不要每次鼠标点击"运行"后都编译源码,而是直接运行exe
|
XML 数据格式 Windows
Wix 安装部署教程(四) 添加安装文件及快捷方式
原文:Wix 安装部署教程(四) 添加安装文件及快捷方式       通过之前三篇的介绍,大家对wix的xml部署方式也应该有一些认识,今天天气不错,再来一发。主要介绍桌面,开始菜单,卸载等功能的如何添加。
1438 0