gpt4 book ai didi

nsis - 从 Linux 或 Mac 签署 NSIS 卸载程序

转载 作者:行者123 更新时间:2023-12-01 16:42:49 30 4
gpt4 key购买 nike

我将我们的 NSI 安装程序移植到 Linux 和 Mac,而不是 Windows,以便更好地与我们的 Maven 构建系统集成。

我们需要签署我们的安装程序和卸载程序。这是按照 http://nsis.sourceforge.net/Signing_an_Uninstaller 中的建议完成的。 ,但我刚刚意识到它尝试运行 tempinstaller 来强制它生成 uninstaller.exe,然后可以对其进行签名。

显然这个技巧在 *Nix 系统上效果不太好,并且使得这部分过程不可移植。

有没有人有更好的解决方案。我不是 NSIS 专家,想知道是否有一种聪明的方法来获取 uninstall.exe 以便对其进行签名?

最佳答案

我认为没有真正的解决方案。

安装程序和卸载程序使用相同的 exe 代码,并且仅在启动时检查标志(firstheader 中的 FH_FLAGS_UNINSTALL)以查看它是否是卸载程序。但仅翻转此位还不够,程序将无法通过 CRC 检查,即使您绕过卸载程序数据的压缩,因此您必须将其解压缩到文件中的正确位置。要真正实现这一点,您必须编写一个自定义工具。如果您搜索 EW_WRITEUNINSTALLER,您可以在 exec.c 的 NSIS 源代码中看到此操作。

关于nsis - 从 Linux 或 Mac 签署 NSIS 卸载程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31776889/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com