【问题标题】:SFX run file after extraction depending on OS bitness提取后的 SFX 运行文件取决于 OS 位数
【发布时间】:2016-11-09 20:06:14
【问题描述】:

我需要创建自解压档案,一旦解压,根据操作系统的位数运行不同的可执行文件。

到目前为止,我已经通过使用 WinRAR 和 BAT 文件来完成此操作,但命令提示符窗口在主应用程序窗口之前的快速闪烁看起来很可疑。

所以,我正在寻找更好的选择,但还没有找到。

【问题讨论】:

    标签: winrar sfx


    【解决方案1】:

    您可以在 C/C++/C# 中编写一个 32 位 GUI 应用程序,而不会打开 例如如果变量 ProgramFiles(x86) 存在则使用 getenv_sgetenv 确定的窗口(仅在64 位 Windows),然后启动相应的主应用程序。此可执行文件被压缩到 SFX 存档中并由 SFX 存档执行。

    或者您编写自己的 SFX 模块。解压RAR压缩包的源码可以从RARLAB下载。

    或者您编写一个 Windows 脚本来确定 Windows 的位宽并启动适当的主应用程序,并通过带有 wscript.exe 的 SFX 存档执行此脚本,它不会像对应的 cscript.exe 那样打开控制台窗口。

    或者您创建一个只能在 64 位 Windows 上运行的 64 位 SFX 和一个可以在 32 位和 64 位 Windows 上运行的 32 位 SFX 并同时提供下载。大多数 64 位 Windows 用户很可能会下载 64 位版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-21
      • 1970-01-01
      • 1970-01-01
      • 2017-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多