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

WiX在卸载时不会删除registrykey

WiX是一个Windows Installer XML Toolset,它是一个开源工具集,用于创建Windows安装程序。在卸载时,WiX会自动删除在安装过程中创建的注册表键(registry key)。

名词概念

WiX是一个Windows Installer XML Toolset,它是一个开源工具集,用于创建Windows安装程序。WiX使用XML语言来描述安装程序的结构和内容,可以生成MSI(Microsoft Installer)格式的安装包。

分类

WiX属于Windows安装程序开发工具。

优势

  1. 使用XML语言描述安装程序结构和内容,易于理解和维护。
  2. 支持多种安装程序组件,如文件、注册表、快捷方式等。
  3. 支持自定义动作和UI界面。
  4. 支持多种安装程序版本,如MSI、EXE等。

应用场景

WiX适用于开发Windows应用程序的安装程序,可以帮助开发人员快速创建安装包,并且支持多种安装程序组件和版本。

推荐的腾讯云相关产品

腾讯云提供了多种云计算服务,可以帮助开发人员快速构建应用程序,包括:

  1. 云服务器:提供高性能、高可靠的云服务器,可以用于部署和运行应用程序。
  2. 对象存储:提供可扩展的云存储服务,可以用于存储应用程序的数据和文件。
  3. 数据库:提供多种数据库服务,可以用于存储和管理应用程序的数据。
  4. 内容分发网络:提供高速、稳定的内容分发服务,可以加速应用程序的访问速度。

产品介绍链接地址

  1. 云服务器:https://cloud.tencent.com/product/cvm
  2. 对象存储:https://cloud.tencent.com/product/cos
  3. 数据库:https://cloud.tencent.com/product/cdb
  4. 内容分发网络:https://cloud.tencent.com/product/cdn
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

MySQL删除IO错误原因分析

为了确认是否间隔太长会导致不能复现,修改脚本run和cleanup两个阶段之间sleep 10秒,果然不会触发这个错误信息。修改为sleep 5秒则还能触发,不过报错条数已有所减少。...insert buffer背景知识 insert buffer是一种特殊的数据结构(B+ tree),当辅助索引页面不在缓冲池中,它会将更改缓存起来,稍后页面被其他读取操作加载到缓冲池中合并。...innodb_io_capacity参数可设置InnoDB后台任务每次merge过程的页面数上限; 崩溃恢复期间,当索引页被读入缓冲池,将执行对应页的insert buffer merge; insert...buffer具有持久性,系统崩溃不会导致它失效。...不出意外的话,在打中断点必然有线程执行对应表的删除操作。

1.9K20

ArrayList的循环中删除元素,会不会出现问题?

ArrayList 的循环中删除元素,会不会出现问题?我开始觉得应该会有什么问题吧,但是不知道问题会在哪里。经历了一番测试和查阅之后,发现这个“小”问题并不简单!...上面这几种删除方式呢,删除 list 中单个的元素,也即是没有重复的元素,如 “cc”。...删除这种元素,方法一删除重复但不连续的元素是正常的,但在删除重复且连续的元素,会出现删除不完全的问题,这种删除方式也是用到了 ArrayList 中的 remove() 方法。...1,这是 i = 1 循环的操作。...ArrayList 的 remove() 方法后,进行了同步,所以不会有异常抛出,并且循环过程中,也不会遗漏连续重复的元素,所以可以正常删除

3K20
  • WiX 制作安装包:创建一个简单的 msi 安装包

    创建 WiX MSI 项目 解决方案上右键,“添加”->“新建项目…”,然后“添加新项目”窗口中搜索“WiX”,找到“Setup Project for WiX v3”。...注意,选择的模板要注意这些要点: 图标上标记了“wix”,标签上标记了“WiX” 模板简介中说明这是创建“MSI”文件 引用目标项目 WiX MSI 项目(本教程中,我取的名字为 Walterlv.Installer.Msi.... -->”: 把周围的“Component”解除注释(因为我们真的要加打包的文件了); 删除“TODO”注释(本教程会继续教你如何完成打包,不需要 TODO 提示了); “Component”块中添加一行...虽然这次没什么影响,但后续我们会学到的某个操作可能导致未及时卸载的包再也无法通过正常途径卸载,所以请保持良好的习惯。(虚拟机调试的小伙伴可无视)。...附源代码 附上必要的源码,避免你阅读教程因模板文件的版本差异造成一些意料之外的问题。 Product.wxs // 除了本文所说的改动外,本文件的其他内容均保持模板文件的原始模样。

    1.7K60

    WiX安装选项--环境变量

    通常我们的程序中也会使用环境变量,如何在WiX设置环境变量呢?...安装/删除程序的时候需要处理我们的环境变量: 安装程序:  如果相同名称的环境变量名称不存在,则创建一个变量: 如果已经存在一个相同名称的变量: 用新的值代替旧值....不修改旧值或者忽略新值 环境变量的值列表开头插入一个新的值. 环境变量的值列表末尾插入一个新的值. 删除一个环境变量: 不管它的值 只有当它的值和提供的值匹配....卸载程序: 不删除环境变量. 删除环境变量. 下面我们来看一个例子: <?xml version="1.0" encoding="UTF-8"?...编译并安装例子程序,系统环境变量就可以看到TestMinVar这个环境变量了,卸载这个例子程序,环境变量TestMinVar也会被删除

    1.4K100

    使用C#操作注册表

    中特有的一个东西,百度百科中对其解释如下:Windows注册表(Registry)实质上是一个庞大的数据库,它存储着下面这些内容:用户计算机软、硬件的有关配置和状态信息,应用程序和资源管理器外壳的初始条件、首选项和卸载数据...创建注册表子项: 注册表宏观上是一个树结构,从数据层面上看它是一个键值对的形式,具体的创建流程如下: using Microsoft.win32;//操作注册表所在的程序集 RegistryKey...我们可以注册表中查看到: 快捷启动注册表的方式:win+r 启动运行窗口,然后键入regedit即可。...读取数据: RegistryKey key; key = Registry.CurrentUser.OpenSubKey("Charles_Test"); var value = key.GetValue...删除节点: Registry.CurrentUser.DeleteSubKey("Charles_Test"); 调用DeleteSubKey()删除子节点。 本节到此结束...

    85830

    C#用什么开发_hbase写数据流程

    比起C++中开发BHO,c#确实是更加简单 我的BHO主要为了实现通过点击浏览器有效下载链接,然后调用我们自己的程序(和迅雷差不多) BHO主体程序时UrlTrack类。...\v2.0.50727,注册把regasm.exe拷贝出来和dll放置同一个目录下,便可以进度注册) 然后你的IE浏览器就被绑架了。。...生成dll的同时,debug目录下还有Interop.SHDocVw.dll需要同时拷贝过去,否则BHO不会生效。。我自己被这里坑了2,3天,找错误。 好吧!我知道不给源码是不能满足你们这群狼的。...我的资源里面找一下 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除

    67320

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

    wix中只能判断有无合适的版本再终止安装。前提是要引入WixNetFxExtension.dll。...MsiPackage> 这里PackageGroupRef Id的意思就是没有.Net Framework4.0就从web上下载了安装,当然你如果安装了4.5,这个是向下兼容的,不会再给你装一个...可以现在Fragment元素中把文件先设置好,加入到链表中。 <?xml version="1.0" encoding="UTF-8"?...Permanent=”yes” 表示如果是卸载的话,这个文件会保留,为no的话,用户卸载的时候会一起卸载掉。VersionNT 变量代表系统,5.1指的是xp 4.判断是否注册。...> 这里的表示的就是执行Path之后执行第二个注册表搜索,且结果你存储Variable中的,而这个Variable就可以作为,是否安装的一个条件。

    1.2K20

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

    创建 WiX EXE 项目 解决方案上右键,“添加”->“新建项目…”,然后“添加新项目”窗口中搜索“WiX”,找到“Bootstrapper Project for WiX v3”。...注意,选择的模板要注意这些要点: 图标上标记了“wix”,标签上标记了“WiX” 模板简介中说明这是创建“EXE”文件 创建完后,记得去项目属性里改一下输出的文件名。...”以及“Program Files”目录中找到它: ▲ 系统设置应用和功能 测试完成后,记得及时卸载掉这个包。...虽然这次没什么影响,但后续我们会学到的某个操作可能导致未及时卸载的包再也无法通过正常途径卸载,所以请保持良好的习惯。(虚拟机调试的小伙伴可无视)。...▲ 卸载包 另外,觉得不错可以提交一下代码,方便后续章节的学习。 附源代码 附上必要的源码,避免你阅读教程因模板文件的版本差异造成一些意料之外的问题。

    1.2K20

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

    小提示 MSI 包只能判断 .NET Framework 是否存在,无法不存在执行 .NET Framework 的安装操作。..._462_OR_LATER_INSTALLED); 如果不满足指定条件,则弹出提示信息, Message 属性中指定不满足条件要弹出的信息。...不过,考虑到卸载程序时无需检查 .NET Framework(反正也不会再运行了),所以我们可以判断条件里加上 OR: 1 2 3 4 <Condition Message="This application...,<em>不会</em>执行任何安装操作。...附源代码 附上必要的源码,避免你<em>在</em>阅读教程<em>时</em>因模板文件的版本差异造成一些意料之外的问题。 Product.wxs // 除了本文所说的改动外,本文件的其他内容均保持模板文件的原始模样。

    1K30

    开源第52波-通过注册表信息判断Excel位数的方法

    开发EasyShu的过程中,因为用户体验的倒逼,不得不认真再去学习下如何更好地解决Excel位数的问题。 以下说一下使用代码去获取当前电脑上Excel的位数。...方法二:通过VBA代码的的Win64方法 如果有办法VBA环境下使用,那就好简单,上面的方法也行,下面的Win64方法也行。...详细核心代码如下:原理为通过注册表位置找到Excel程序的路径,再通过注册表卸载信息里找到OFFICE的GUIDS信息。 最后,正如微软官方定义的GUIDS规则,第四段是存放位数信息。...true : false; } } private static string GetGuidsOfOffice(RegistryKey registryKey...()) { RegistryKey subKey = registryKey.OpenSubKey(subKeyName);

    55220

    C#实现软件开机自启动原理与代码

    1、软件自启动原理     软件自启动的原理要从Windows的注册表聊起,Windows操作系统下,主要有2个文件夹和8个注册表键项控制程序的自启动,这部分的详细介绍可以参看博客http://www.cnblogs.com...它的位置[HKEY_CURRENT_USER\Softvvare\Microsoft\Windows\CurrentVersion\Run]和[HKEY_LOCAL_MACHINE\SOFTWARE\...方法创建一个新子项或打开一个现有子项以进行写访问;RegistryKey.SetValue设置指定的名称/值对;RegistryKey.DeleteValue 方法 (String, Boolean)...是从此项中删除指定的值。    ...3编程实践中,对checkbox控件的Checkedchanged事件进行设置,设置开机自启动中,启动软件JK信息写入“Run”键值;取消开机自启动中,删除软件JK信息“Run”键值中的值。

    2.3K90

    Docker守护进程停机期间保持容器运行(即重启Docker,正在运行的容器不会停止)

    前言: 默认情况下,当 Docker 守护进程终止,它将关闭正在运行的容器。不过,我们可以配置该守护进程,以便在该守护进程不可用时容器仍在运行。这种功能称为实时恢复。...reload配置(不会重启docker) 给dockerd发送 SIGHUP信号,dockerd收到信号后会reload配置 systemctl reload docker / kill -SIGHUP...$(pidof dockerd) 3.检查上面的配置是否成功 docker info | grep -i live 4.重启Docker,此时重启Docker就容器就不会停止了 systemctl..."https://hx983jf6.mirror.aliyuncs.com"], "graph": "/mnt/data", "live-restore": true } 3.更新docker配置(不会重启...Docker后,上面在运行的两个容器的运行时间分别为1小、32分钟,容器并没有我们重启Docker停止,而是一直保持运行状态 。

    4K20

    WiX安装选项---开始菜单项

    the Start Menu,How To: Create an Uninstall Shortcut 制作的安装程序安装后,都要在开始菜单上生成一个应用程序的菜单,通常包括调用应用程序的快速入口和卸载应用程序项...> <Product Id="a960cf35-0779-43e8-923b-35638f2bfc42...开始菜单下创建的一个菜单项,我们把它命名 为Minimal,菜单的快捷方式包括三个元素:一个是Component 元素是<em>WiX</em>安装元素的原子单位,Component元素下的Shortcut就是快捷菜单项了...,RemoveFolder 元素保证<em>在</em><em>卸载</em>应用程序的时候 做相关的清理工作。...Windows Installer System64Folder 属性<em>在</em>32位的机器上被解析为System32 目录,<em>在</em>64位的机器上被解析为 SysWow64 目录.

    1.2K100
    领券