【问题标题】:How does "Winrar" execution task work?“Winrar”执行任务是如何工作的?
【发布时间】:2014-07-25 16:32:03
【问题描述】:

我有一个对我来说非常重要的问题。我用谷歌搜索过,但一无所获。问题是:

WinRAR如何在不解压软件或游戏文件的情况下,直接点击.exe文件执行游戏或软件等?

有人可以用 Java 代码为我解释一下吗?

我想做一个类似WinRAR的软件,但是我不明白这一点。

【问题讨论】:

    标签: java compression extract execution winrar


    【解决方案1】:

    WinRAR中打开菜单Options,点击菜单项Settings,选择标签Viewer并查看选项解压所有东西

    立即按帮助按钮并阅读选项解压所有内容的说明。

    如您所见,WinRAR 通过双击压缩包内的 *.exe 将压缩包的所有文件提取到在临时文件文件夹中创建的临时文件夹 - 环境变量 TEMP - 分别在 设置 对话框中的 临时文件文件夹 选项卡 Paths 上定义的文件夹。

    然后WinRAR启动临时文件夹中的EXE并监控进程。启动的应用程序终止后,WinRAR 删除包含所有文件和子文件夹的临时文件夹。

    当然,如果在退出启动的应用程序之前退出 WinRARWinRAR 让所有提取的文件永久保存在临时文件夹中,用户必须删除它们,例如使用Windows 磁盘清理工具。

    如果双击电子邮件附件的文件,Microsoft Outlook 也会对单个文件执行相同的步骤。如果应用程序开始打开并显示文件已退出,则文件会从电子邮件中临时提取到临时提取的电子邮件附件的文件夹中,并由 Outlook 自动删除。但是临时提取的文件附件仍然保存在文件夹中,如果在用于查看临时提取文件的应用程序退出之前退出 Outlook 本身,则用户必须稍后将其删除。

    换句话说,WinRAR 也不能直接从存档中运行应用程序,除非先将存档的所有文件解压缩到硬盘上的某个位置。

    【讨论】:

      【解决方案2】:

      意识到自解压 zip 不仅通过双击开始解压,而且它们不需要在用户计算机上安装解压应用程序,因为解压器代码位于存档本身中。这意味着您将获得不同的用户体验,具体取决于您用于创建 sfx 的应用程序 e

      这就是我使用 WinRAR 创建 Izpack 安装程序的 sfx 的方式,我用它来安装我的 Java 应用程序

      • 选择文件,右键选择添加到存档
      • 使用 Browse.. 在上面的文件夹中创建存档
      • 将存档格式更改为 Zip
      • 启用创建存档格式
      • 选择高级选项卡
      • 选择音效选项
      • 选择设置选项卡
      • 解压后运行字段中输入 setup.exe
      • 选择模式选项卡
      • 启用解压到临时文件夹
      • 选择文本和图标选项卡
      • 为您的任务输入更合适的标题
      • 选择确定
      • 选择确定

      生成的 exe 解压缩到一个临时文件夹,然后启动安装程序

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-12-24
        • 1970-01-01
        • 2020-09-16
        • 2014-04-30
        • 1970-01-01
        相关资源
        最近更新 更多