Wix 的 util:CloseApplication 扩展似乎不起作用

2024-02-19

我试图在使用 Wix 卸载之前关闭一个进程。我已经确认,只要存在可见窗口,它就可以工作,但如果没有可见窗口(此应用程序大多数情况下都是这种情况,因为它是系统托盘应用程序),卸载程序就会挂起,并且最终继续卸载,使进程保持运行。

根据这个论坛帖子 http://sourceforge.net/mailarchive/message.php?msg_name=E66649032AD92B42901BF5835C76A27F51CC%40harwood.x2systems.com,看起来 Wix 过去在关闭最小化应用程序时遇到了问题,所以我想知道这是否相关?

关于我还能做什么来确保关闭该进程还有什么建议吗?有什么方法可以尝试使用 Win32 api 捕获我的应用程序中的消息吗?

这是 CloseApplication 声明:

<util:CloseApplication Id="CloseApp" CloseMessage="yes" Target="App.exe" RebootPrompt="yes" />

这是自定义操作:

<Custom Before="InstallInitialize" Action="WixCloseApplications">REMOVE = "ALL"</Custom>

您似乎正在安排WixCloseApplications安装事务之前的自定义操作。自定义操作的工作方式是安排一个实际关闭应用程序的延迟操作。它不能完成这项工作,除非它发生在事务期间(After="InstallInitialize").

修复可能非常简单。去除Custom/@Action="WixCloseApplications"元素。

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

Wix 的 util:CloseApplication 扩展似乎不起作用 的相关文章

  • TrustedInstaller 正在阻止注册表写入 HKCR\DirectShow\MediaObjects\Categories

    我正在尝试安装需要我写入的 DMOHKCR DirectShow MediaObjects Categories 57f2db8b e6bb 4513 9d43 dcd2a6593125 此注册表路径受 TrustedInstaller 保
  • Wix:如何警告用户而不是使用属性终止安装?

    我正在 x64 计算机上搜索 Microsoft Access 数据库引擎的注册表项 这是我的代码
  • 作为安装过程的一部分,如何让 WiX 调用 .NET 程序集中的方法?

    我正在迁移一些现有产品以使用 WiX 3 5 我正在使用 Votive VS 集成 我正在安装的一些项目需要向第三方框架注册 要求是我必须在第三方 NET 程序集中调用 Register 方法来通知它我正在安装的项目是否存在 它需要一个 C
  • 尽管删除了 IIS,但仍然设置了 IISMAJORVERSION 和 IISMINORVERSION

    我正在创建一个依赖于正在安装的 IIS 的安装程序 为了进行测试 我使用运行 Windows Server 2008 R2 的虚拟机 该虚拟机安装了 Web 服务器角色 我的安装程序使用此条件检查是否安装了 IIS
  • Windows 安装程序中的主要与次要升级

    是否有任何理由不设置安装 以便始终完成主要升级并更改产品代码 我发现支持不同类型的安装需要更多代码 并且 修复 安装似乎通过重大升级更容易工作 而且需要安装的应用程序不是很大 因此不需要 服务包 或补丁安装程序 不会 如果您的应用程序很小并
  • 如何使用 wix 将多个元素添加到 XML 配置文件中?

    我正在尝试使用 Wix 编辑 XML 文件 我正在使用与 Wix 3 7 捆绑在一起的 WixUtilExtension xml 文件是在 Visual Studio 2010 中为 C 应用程序创建的设置文件 在此文件中 我使用一个用于在
  • 使用 WiX 进行重大升级后无法启动 Windows 服务

    我有一个非常简单的 WiX 项目 没有什么花哨 当尝试对现有安装执行 MajorUpgrade 时 无法启动服务 并且不可避免地会回滚到以前的版本并正常启动服务 我已经删除了Start install 并成功手动启动应用程序 所以我知道这不
  • 使用自定义操作卸载多个产品

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

    我正在使用 Wix 3 5 构建 MSI 安装程序 我想知道是否有任何方法可以隐藏 功能自定义安装对话框 中的某些选项 您可以在其中从功能树中选择要安装的内容 我只想有 将安装在本地硬盘上 和 整个功能将不可用 的选项 目前 除了这两个选项
  • 获取生成的 ProductCode 作为 Wix 中的变量

    在我们的产品中我们使用Product Id 在 Wix 中告诉它为每个新版本生成新的产品代码 现在 我们需要在安装期间将正在安装的 MSI 的产品代码记录到我们的注册表项之一中 我们可以通过循环遍历 卸载 注册表项中的条目来查找产品名称和版
  • WiX 无法正确渲染图像

    我正在尝试编写一个自定义 WiX 对话框 作为其工作流程的一部分 它会根据某些条件显示错误图像 然而 WiX 似乎忽略了我的尺寸并按其感觉合适的方式显示 这是我的代码
  • 与 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 因此我的应
  • 如何创建 heat.exe 收集的文件的快捷方式?

    使用 WiX Toolset 3 10 并尝试创建已使用 WiX Toolset 收获的某些文件的快捷方式heat exe效用 如 WIX bin heat exe dir SourceDir nologo platform x64 ke
  • 根据 VS 活动配置定义 Wix 属性和值

    如何定义根据激活的 Visual Studio 配置而变化的 Wix 属性和值 例如对于我们的发布版本 var x 1 对于导出版本 var x 2 我们使用 wixproj 文件将属性传递到 WiX
  • WiX - 通过检查修订来防止降级

    我正在寻找一种方法来防止我的应用程序降级 但 问题 是 我必须检查修订号 例如 安装 1 0 0 1 时应该可以安装 1 0 0 2 但安装 1 0 0 2 时不应该安装 1 0 0 1 我知道 Element MajorUpgrade 仅
  • WiX - 安装 Windows 服务以在 x64 模式下运行

    我正在使用 WiX 3 5 及其 ServiceInstall 标签安装 Windows 服务
  • WIX 自动生成 GUID *?

    假设我生成产品 ID 为 的 WIX XML 文件 另外 对于每个组件 GUID 我都使用
  • Burn in WiX 3.6 如何将 MSI 文件捆绑到 .exe 中?

    我有兴趣了解 WiX 如何捆绑使用 Burn 创建的 EXE 文件 我知道创建一个自解压 EXE 文件非常简单 我已经完成了一百万次了WinRAR http en wikipedia org wiki WinRAR EXE 文件解压到哪个目
  • Wix - 自定义安装目录

    我使用的是 Wix 3 x 用户应该能够选择目标目录 我的Setup wxs目前是这样的 http pastebin com uH1EjbDQ http pastebin com uH1EjbDQ 询问用户自定义目标目录的最简单方法是什么
  • 将构建参数传递给 .wxs 文件以动态构建 wix 安装程序

    我是一名学生开发人员 我已经为我现在工作的公司构建了几个安装程序 所以我对WIX还是比较熟悉的 我们最近决定拥有一个构建服务器来自动构建我们的解决方案 它构建调试和发布以及混淆 和非混淆 项目 你真的不需要理解这些 您需要了解的是 我有相同

随机推荐

  • Java - 复制 JPG 同时保留所有文件属性

    在保持文件所有属性 创建日期 日期等 的同时移动 复制文件的最佳方法是什么 谢谢 如果您使用的是 Java 7 请使用java nio file Files copy Path source Path target CopyOption o
  • jsp页面多语言支持

    在JSP页面中使用上述指令时 无法在JSP页面中显示俄语和匈牙利语字符 有没有办法在同一个JSP页面中支持俄语和匈牙利语字符 如果我使用charset UTF8 好吧 或者还有其他办法吗 ISO 8859 1 字符集支持only列出的字符h
  • 检测 Windows 字体大小(100%、125% 和 150%)

    我创建了一个应用程序 该应用程序在用户选择 125 或 150 之前都可以完美运行 这会破坏我的申请 后来我找到了通过检测DPI来找到字体大小的方法 在使用中文版 Windows 7 的用户开始使用我的应用程序之前 这种方法一直运行良好 整
  • python在函数中存储变量并稍后使用它[重复]

    这个问题在这里已经有答案了 是否可以将 while 循环中的变量存储到函数中 然后在循环结束时从函数中调用同一变量 例如 在 while 循环期间 这里的问题是 当我尝试从 store 检索变量时 它失败了 因为它需要传递参数 def st
  • 如何取消长时间运行的数据库操作?

    目前正在与 Oracle 合作 但还需要 MS SQL 的解决方案 我有一个 GUI 允许用户生成将在数据库上执行的 SQL 这可能需要很长时间 具体取决于它们生成的搜索 我希望 GUI 应用程序在此搜索期间做出响应 并且希望用户能够取消搜
  • 如何在 C# 表达式树中设置字段值?

    Given FieldInfo field
  • Marshmallow 中的存储权限错误

    在 Lollipop 中 下载功能在我的应用程序中运行良好 但当我升级到 Marshmallow 时 当我尝试从互联网下载到 SD 卡时 我的应用程序崩溃并给出此错误 Neither user nor current process has
  • Amazon Cognito:从浏览器重定向到 Android 应用程序时如何停止出现“redirect_mismatch”错误

    我正在尝试创建一个 Android 项目 通过让用户在浏览器中登录 Amazon Cognito 来授权用户 然后应该重定向回我的应用程序 不幸的是 当浏览器打开时 我没有到达正确的登录页面 而是不断收到此错误 在我的 Authentica
  • 如何使用 Kobo API 将数据发布到 kobotoolbox 表单?

    我正在使用 kobo REST API 我可以从表单中获取结构信息并通过 API 提交数据 但是当我尝试通过 POST 服务将数据发送到表单时 kobo 返回以下消息 您的例如 数据尚未提交 有没有办法使用其 API 将 POST 数据发送
  • JavaScript - 跨站脚本 - 权限被拒绝

    我有一个 Web 应用程序 我正在尝试使用 Twitter 的 OAuth 功能 该应用程序有一个链接 提示用户输入 Twitter 凭据 当用户单击此链接时 将通过 JavaScript 打开一个新窗口 该窗口用作对话框 这是这样完成的
  • Pandoc Markdown 粗体和颜色

    我正在使用 pandoc 并用 markdown 编写我的文本 为了创建我自己的风格 我使用自定义乳胶模板 我想用一种颜色来设置所有粗体单词的样式 所以当我输入时 a word 这个词不仅应该是粗体 而且还应该是例如蓝色的 在我的乳胶模板文
  • 简单显示SQlite数据库中的数据

    我试图找到一个在布局中显示 SQLite 数据库中的数据的简单示例 我尝试查看 笔记本 示例 但它只有一个输出列 是否有一个示例 其中包含多个输出列 并且如果可能的话 某些列中包含整数数据 闪电战 您可能需要考虑创建自己的客户Adapter
  • PySpark:将 DataFrame 列的值与另一个 DataFrame 列进行匹配

    在 Pandas DataFrame 中 我可以使用DataFrame isin 函数将列值与另一列进行匹配 例如 假设我们有一个 DataFrame df A pd DataFrame col1 A B C B C D col2 1 2
  • 为什么在这种情况下接口合并不起作用?

    我正在 Visual Studio Code 中编写一些 WebGL 代码 类型声明来自 npm 包 types webgl2 而 typescript 似乎没有合并以下接口 interface WebGL2RenderingContext
  • Angular 2 模板引用变量与 *ngFor [重复]

    这个问题在这里已经有答案了 我有两个组成部分 列表和详细信息 In 列表组件我想渲染多个细节组件 列表组件 ts Component selector detail templateUrl detail component html exp
  • 如何在 XAMPP 上使用 Codeigniter 删除 index.php?

    我无法在 XAMPP 1 7 3 上隐藏 Codeigniter index php URL http localhost Servidor agentesRainbow index php agentes tony tony是一个论点 将
  • 编辑输入 type="search" 伪元素按钮 ('x')

    我正在尝试制作一个看起来不错的搜索栏 我所做的是 我制作了一个搜索栏的图像 并将该图像添加到输入的背景中 然后编辑字体将出现的位置和大小 我唯一找不到编辑的方法是使用输入类型搜索时出现的小 x 按钮 我想将其向左移动一点 这样它就能修复我的
  • 如何在Android中实现拖动幻灯片视图

    我需要能够将列表视图拖动到左侧并移出视图 同时暴露第一个列表视图下方的另一个列表视图 我该怎么做呢 您可以使用 OnTouchListener 并在 ACTION MOVE 上调整大小或移动某些视图 请记住调用 setClickable t
  • Android USB 主机 API 和 USB 存储

    我正在尝试使用 android 主机 api 进行 USB 存储 我对此有很多疑问 使用主机 API 一切皆有可能 我想查看 USB 的内容 如果可能的话 查看正常的文件操作 我没有找到任何与此相关的文档帮助 我可以使用 UsbDevice
  • Wix 的 util:CloseApplication 扩展似乎不起作用

    我试图在使用 Wix 卸载之前关闭一个进程 我已经确认 只要存在可见窗口 它就可以工作 但如果没有可见窗口 此应用程序大多数情况下都是这种情况 因为它是系统托盘应用程序 卸载程序就会挂起 并且最终继续卸载 使进程保持运行 根据这个论坛帖子