设置工具:为什么选择 7-Zip?创建(真实)设置有很多替代方法 - 其中一些是免费的:如何创建 Windows 安装程序(用于创建各种设置的工具的几个链接)。下面还有简要说明 - 在“Alternatives
”(免费工具或具有免费功能的工具)下。这些工具已经过广泛测试,以确保以最小的依赖性运行。我猜只是要记住和评估的东西。
7-Zip
猜测:首先安装C/C++ 运行时,看看问题是否消失。接下来检查压缩 - 然后检查LZMA SDK
,如下所述?
不支持压缩?: 7-Zip: 不支持的方法- 使用 LZMA?我想这个问题仍然可能发生,尽管这个答案已经有几年了。
缺少运行时?:您可能还想对其进行依赖遍历检查,setup.exe
以查看它是否依赖于盒子上缺少的东西(例如MSVCRT.dll
- 或另一个运行时库)。只需下载该工具。便于使用。或者也许首先尝试install commonly used C/C++ runtimes
. 此外,Dependency Walker 正在老化并且有时会显示垃圾。有较新的Dependencies - 但它还不是黄金时间,但请尝试一下(单击Releases
选项卡)。它已更新为处理Windows API 集和 WinSxS(并行程序集)。注意: virustotal.com上的一些安全软件依赖项检测为“风险工具,而不是病毒”(它是开源的)。
LZMA SDK:该7zSD.sfx
文件可能来自LZMA SDK。您描述的命令行可以在主要的 7-Zip 帮助文件中找到(不是 SDK,而是常规 7-zip 安装附带的那个)。部分"-sfx (Create SFX archive) switch"
:Command Line Version => Switches => -sfc (Create SFX Archive
。
备择方案
Visual Studio 2017:Visual Studio 的最新免费版本: Visual Studio Community 2017setup.exe
可以通过其Microsoft Visual Studio 2017 安装程序项目创建(此扩展必须在安装 Visual Studio 2017 后安装)。
WiX:开源WiX 工具包setup.exe
可以使用其刻录组件创建一个 WiX Burn ad-hoc 示例- 只是为了大致了解一下 - 它有一个学习曲线。没有 GUI 可以帮助您,它都是基于 XML 的。使用或不使用 Visual Studio。
高级安装程序:我相信高级安装程序setup.exe
甚至可以在他们的免费版本中编译尽管下载量有点大,但我认为这对您有用并且速度很快。
高级安装程序更新:免费版只能构建 MSI 文件,EXE 引导程序可以使用付费版(其中任何一个)构建。
dotNetInstaller:还有dotNetInstaller Setup Bootstrapper - 我从未使用过。它在 github.com 上(来源)。
Inno
或NSIS
:这些免费的非 MSI 安装程序可以轻松地为您创建一个setup.exe
已针对最小依赖性进行了优化的安装程序。我没怎么用过它们,但它们是众所周知的。NSIS 似乎创建了与 Zip 工具兼容的存档文件。
IExpress等人:存在影响这些自解压包安全漏洞我推荐使用具有专用资源的“真实”部署工具来快速修复此类问题的另一个原因,尽管setup.exe
可以直接在 7-zip 中打开它的好处。
文件提取
关于从各种类型的文件中提取文件的主题:setup.exe
- MSI :从 EXE 中提取 MSI - 可以提取所有 MSI 文件,也可以提取
setup.exe
使用 WiX 创建的文件
- NSIS & Inno:看起来 NSIS 创建了与 7-Zip(可理解压缩)兼容的文件,从外观上看,与 Inno 不兼容。
一些链接: