WiX 安装程序在卸载时不会删除文件

2023-11-25

我告诉 wix MSI 文件在卸载时删除文件,但它根本没有注册它。

对于捆绑包,我将 MSI 文件称为:

<MsiPackage SourceFile="..\..\..\..\Kiosk\MyProject\bin\Release\MyProject.msi"        Name="MyProject.msi" DisplayInternalUI="yes" Permanent="no" />

在 MSI 文件中我称之为:

<ComponentGroup Id="Purge" Directory="INSTALLFOLDER">
  <Component Id="PurgeFiles" Guid="">
    <RemoveFile Id="RemoveBaseFolder" Name="*" On="uninstall" Directory="INSTALLFOLDER" />
    <RemoveFile Id="RemoveLanguage_af" Directory="Language_af" Name="*.*" On="uninstall"/>
    <RemoveFile Id="RemoveLanguage_de" Name="*.*" On="uninstall" Directory="Language_de"/>
    <RemoveFile Id="RemoveLanguage_es" Name="*.*" On="uninstall" Directory="Language_es"/>
    <RemoveFile Id="RemoveLanguage_fr" Name="*.*" On="uninstall" Directory="Language_fr"/>
    <RemoveFile Id="RemoveLanguage_it" Name="*.*" On="uninstall" Directory="Language_it"/>
    <RemoveFile Id="RemoveLanguage_ja" Name="*.*" On="uninstall" Directory="Language_ja"/>
    <RemoveFile Id="RemoveLanguage_ko" Name="*.*" On="uninstall" Directory="Language_ko"/>
    <RemoveFile Id="RemoveLanguage_ru" Name="*.*" On="uninstall" Directory="Language_ru"/>
    <RemoveFile Id="Removezh_CN" Name="*.*" On="uninstall" Directory="zh_CN"/>
    <RemoveFile Id="RemoveDatabase" Name="*.*" On="uninstall" Directory="Database"/>
    <RemoveFile Id="RemoveFileData" Name="*.*" On="uninstall" Directory="FileData"/>
    <RemoveFile Id="RemoveRecordingTempData" Name="*.*" On="uninstall" Directory="RecordingTempData"/>
    <RemoveFile Id="RemoveSignatureData" Name="*.*" On="uninstall" Directory="SignatureData"/>
    <RemoveFile Id="RemoveCacheUpdater" Name="*.*" On="uninstall" Directory="CacheUpdater"/>
    <RemoveFile Id="RemoveRecordingUploader" Name="*.*" On="uninstall" Directory="RecordingUploader"/>
  </Component>
</ComponentGroup>

然后我使用以下命令引用组件组:

<Feature Id="ProductFeature" Title="CacheUpdaterInstaller" Level="1">
<ComponentGroupRef Id="Purge"/>
</Feature>

为什么文件没有被删除?我已经尝试过刻录 exe 文件和 MSI 文件本身。该程序安装正常,但删除似乎根本不起作用。


所以,我发现我的问题是什么。

我没有正确添加指南。文件和文件夹现在已正确删除。

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

WiX 安装程序在卸载时不会删除文件 的相关文章

  • 对于 msiexec,这些定向到安装程序的不同方法有什么区别?

    我有一个简单的问题 我只找到了两种实际运行我的 msi 文件的方法 但它们都不起作用 密切关注我的使用情况 and 简而言之 我想要一种方法来做到这一点 Basics PSScriptRoot Start Process msiexec e
  • 以提升用户身份在 wix 中运行 CustomAction

    据我所知 WiX 支持两种 CustomActions 延迟 运行此操作的用户 默认情况下 被提升 但它不是运行安装的用户 例如 LocalSystem 或类似的用户 立即 运行此操作的用户 默认情况下 未提升 这是首先运行安装程序的用户
  • 使用自定义操作卸载多个产品

    我正在为我们的产品开发基于 WIX 的安装程序 该产品有一个基础产品和许多插件 基础版和插件将作为单独的 MSI 提供 仅当底座可用时才能安装插件 基础和插件在根文件夹下共享公共文件夹树 例如 C Program files MyProdu
  • 如何使用 WiX 安装和启动 Windows 服务

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

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

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

    我在用Wix 3 6 http wixtoolset org 创建一个设置 我仍在不断学习 那里的信息仍然分散 我正在等待我的 Wix 开发人员指南书到达 我目前有一个自定义 UI 对话框 用户可以在其中输入一些应用程序配置 该配置的一部分
  • 如何使用 msi 安装程序部署 VBA Excel 加载项 (foo.xlam)?

    我是一名 C 开发人员 正在将同事的 VBA Excel 加载项 xlam 文件 与我的 msi 安装程序 使用 VS 部署项目构建 如果重要的话 捆绑在一起 xlam 放置在应用程序文件夹 C Program Files x86 MyCo
  • ICE61:该产品应仅删除其自身的旧版本

    我正在关注第二个答案here https stackoverflow com questions 500703 how to get wix to update a previously installed version of a pro
  • 与 WiX 3.0 一起安装 WiX 3.5

    是否可以同时安装 WiX 3 0 和 3 5 如果我在安装 3 0 后安装 3 5 它会删除 3 0 文件 如果我尝试在 3 5 之后安装 3 0 它会告诉我已经安装了较新的版本 我正在从 VS 2008 迁移到 VS 2010 因此我的应
  • WiX - 根据环境将编译后的 web.config 复制到网站根目录

    作为 WiX 安装的一部分 我将所有转换 编译的 web config 文件复制到安装目录 编译后的 web config 的名称格式为 web ENV config 在我的安装 UI 中 我创建了一个自定义对话框 在其中解析 ENV 并填
  • 根据 VS 活动配置定义 Wix 属性和值

    如何定义根据激活的 Visual Studio 配置而变化的 Wix 属性和值 例如对于我们的发布版本 var x 1 对于导出版本 var x 2 我们使用 wixproj 文件将属性传递到 WiX
  • 自定义 WiX Burn 引导程序用户界面?

    我主要使用 WiX 3 6 创建一个安装包 这样我就可以利用Burn http en wikipedia org wiki WiX Burn引导功能 到目前为止 我已经将多个 MSI 软件包捆绑在一起 这些软件包将与内置引导程序应用程序一起
  • Wix:动态添加功能

    我们正在使用 Wix 为我们的软件构建 msi 我们有一些要在目标机器上实现的组件 插件 每个客户端的插件都不同 我们想要做的是创建一个标准构建并修改 msi 包中的功能列表 有没有办法通过自定义操作动态更改功能列表 例如 从自定义操作中读
  • 使用“Any CPU”而不是“X86”编译wix项目

    当我编译一个wix项目 并且wix通过MSbuild启动所有现有项目的编译时 我可以使用 任何CPU 而不是 X86 或 64位 吗 如果没有 我如何使用 任何CPU 编译项目 如果您的问题是是否可以编译 WIXPROJAny CPU那么答
  • 用于配置编辑的 wix 自定义对话框

    你好 我正在尝试使用 wix v3 为我的应用程序设置 msi 我对这项任务有疑问 我需要一个用户输入 该输入将存储在我的应用程序的配置文件中 例如 我需要一个用于 sql 连接字符串的对话框 并且用户输入将写入应用程序配置文件中 我尝试用
  • WIX 自动生成 GUID *?

    假设我生成产品 ID 为 的 WIX XML 文件 另外 对于每个组件 GUID 我都使用
  • 让 WIX 在项目中包含引用

    我对 WiX 和设置自定义安装程序完全陌生 所以我对问题的主题表示歉意 我有一个内部业务应用程序 日记 它构建并运行良好 因此我按照教程 官方文档添加 WiX 项目并引用日记的 csproj 然后构建并运行这个最基本版本的 WiX 安装程序
  • wix 3 安装程序:未解析的绑定时变量!(bind.fileVersion.Name.exe)

    我正在尝试使用 Wix3 中的绑定 bind fileVersion 即 3 11 1 由于某些原因 我收到以下错误消息 未解析的绑定时变量 bind fileVersion TestWix3 exe 我的目标是填写 产品 ID 行 特别是
  • Wix - 自定义安装目录

    我使用的是 Wix 3 x 用户应该能够选择目标目录 我的Setup wxs目前是这样的 http pastebin com uH1EjbDQ http pastebin com uH1EjbDQ 询问用户自定义目标目录的最简单方法是什么

随机推荐

  • MVC 将数据从视图发送到控制器

    我对 MVC 3 还很陌生 我知道如何将强类型对象从控制器发送到视图 我现在拥有的是一个视图 其中包含一个由该数据组成的表 表单 用户可以在该视图 html 页面 中更改该数据 当他们单击 保存 时 如何将数据从视图发送回控制器 以便我可以
  • Java 和 C++ 运算符有什么区别吗?

    如果您采用 Java 的原始数字类型加上布尔值 并将其与 C 等效类型进行比较 那么运算符 例如优先级规则或位操作运算符的作用 是否存在任何差异 还是括号的作用 换句话说 如果我采用 Java 表达式并尝试在 C 中编译并运行它 它是否总是
  • 我应该使用 IIFE 还是 window onload 来初始化?

    以下两个代码片段均有效 在js文件中使用IIFE function initialize txtInput document getElementById txtInput txtResult document getElementById
  • 更改 tkinter 消息框按钮上的文字

    我使用 tkinter 的 askokcancel 消息框通过弹出窗口警告用户不可逆转的操作 from tkinter import Tk Tk withdraw from tkinter messagebox import askokca
  • C# Visual Studio GPIB 命令

    在 C Visual Studio 中使用什么命令与 GPIB 仪器进行通信 我需要能够向仪器写入命令并读取输出 I use 安捷伦 IO 库套件 这是在 C 上使用它的教程 C 中的 I O 编程示例 然而 在我的公司中 我们遇到了 VI
  • Popstate - 将弹出状态传递给事件处理程序

    以下代码应导致警报 1 但实际上什么也不执行 window onpopstate function event alert event state a history pushState a 1 history back Fiddle ht
  • 创建具有圆形区域边缘的 Voronoi 艺术

    I m trying to create some artistic plots like the ones below 区域的颜色并不重要 我想要实现的是沿着 Voronoi 区域的边缘的可变 厚度 特别是 它们看起来像一个更大的圆形斑点
  • RISC-V:PC 绝对值与 PC 相对值

    我是 RISC V 新手 我无法理解何时写入 PC 程序计数器 相对指令以及何时写入 PC 绝对指令 例如 一条指令lui其次是jalr考虑指令PC 绝对 以及一条指令auipc其次是jalr考虑指令相对于PC 据我了解 所有指令都将由 P
  • 如何创建 Bash 别名?

    我在 OSX 上 我需要放这样的东西 alias blah usr bin blah 在配置文件中 但我不知道配置文件在哪里 您可以添加一个alias or a function在您的启动脚本文件中 MacOS 10 13 High Sie
  • 将每 N 行输入放入一个新列中

    在 bash 中 给定输入 1 2 3 4 5 6 7 8 And N例如5 我想要输出 1 6 11 2 7 12 3 8 4 9 5 10 我该怎么做呢 使用鲜为人知的宝石pr seq 20 pr ts column 4 1 6 11
  • Javascript 谷歌音译 API 未通过 https 提供服务

    JavaScript 谷歌音译 API 不通过 h ttps 提供服务 我遇到了混合内容错误 它可以在 http 网站上运行 但不能在 https 上运行 我尝试通过以下所有方式调用 API
  • WinForms 的 C# 中动态变量名称的使用

    不确定最好的表达方式是什么 但我想知道是否可以在 C 3 5 中完成动态变量名称访问 这是我目前正在寻求 智能 或通过循环变得更加优雅的代码 private void frmFilter Load object sender EventAr
  • 在jsp中访问javascript中的会话变量

    我需要为 google API 表提供数据 所以我将其从 servlet 发送到 JSP 但是我如何在 googles javascript中访问这些数据 我将提供另一个 JS 的示例 非常简单 只是为了让我学习如何制作主题所说的内容
  • 在 Docker 容器中找不到 Chromedriver 可执行路径

    我使用下面的 Docker 文件创建了一个 docker 映像 它安装最新版本的 Google Chrome 和 Chrome 驱动程序 以及其他 pip 包 Dockerfile FROM python 3 9 Install Chrom
  • 从 iPhone 打开 Google 地图并显示路线

    我想知道如何从 iPhone 应用程序打开 Google 地图 以便 Google 地图在您到达网页时显示路线 今天我使用的代码是only显示坐标 NSString latlong NSString stringWithString 59
  • ScrollView 内的 ViewPager 无法正确滚动

    我有一个 页面 上面有许多组件 并且其中的内容比设备的高度长 好吧 只需将所有布局 整个页面 放入一个ScrollView 没问题 其中一个组件是ViewPager 这可以正确渲染 但对滑动 猛击的响应无法正确执行 它很紧张并且并不总是有效
  • IE10选择框问题

    我在 IE10 中测试我的应用程序 发现选择框有一个奇怪的行为 所选选项会突出显示 上方 下方选项会显示在所选选项的上方 下方 下拉框被隐藏 这只发生在 IE10 中 在所有其他浏览器中 选项显示在选择框下方 在 IE10 和 IE9 中尝
  • 为什么我收到此错误:ConnectionString 属性尚未初始化

    我已经搜索并尝试了一切 但无法弄清楚这一点 我想做一些简单的事情 但似乎我做错了 基本上 任何已存款的用户 我想返回 true 如果没有 我想返回 false 我想这应该很容易 但我对此感到困惑 这是错误 ConnectionString
  • ECR事件后触发AWS lambda函数

    我试图让 AWS Lambda 函数在将新映像推送到 AWS 容器注册表时运行 我已经创建并测试了该功能 该功能运行良好 然后 我使用以下模式创建了一个简单的 CloudWatch 事件规则 source aws ecr 我相信 ECR 的
  • WiX 安装程序在卸载时不会删除文件

    我告诉 wix MSI 文件在卸载时删除文件 但它根本没有注册它 对于捆绑包 我将 MSI 文件称为