【问题标题】:Run an executable concatenated with data?运行与数据连接的可执行文件?
【发布时间】:2011-07-23 04:24:52
【问题描述】:

这有点令人困惑。我有一个 linux 可执行文件,但我没有用于查看某种类型的专有数据的源代码。

我想要一份可执行文件的副本,可以打开查看一个特定的文件。通常我只会编写一个脚本来使用正确的参数启动可执行文件,但问题是我需要将功能作为一个单个文件提供。我不能将可执行文件和数据文件分开。

我看到的唯一方法是将数据文件与可执行文件连接起来,以及一个小的自写可执行文件来发挥作用。这样做的问题是我不知道如何编写魔法可执行文件,或者我的建议是否可行。

【问题讨论】:

  • 您必须针对哪些操作系统?
  • Linux。抱歉,我会编辑问题。

标签: linux binary executable


【解决方案1】:

一些 linux 安装程序以 shell 脚本的形式分发,其工作方式如下:

脚本本身是可执行的,它包含所有相关的二进制文件、数据文件、。作为here documents,可能首先是base64 encoded。当脚本运行时,它会提取组件,然后根据需要执行或安装它们。

这样的方案对你有用吗?

【讨论】:

  • 谢谢。我从来没有想过将二进制文件存储为字符串,但这似乎是最简单的方法。还要感谢 Thomas Carpenter 的类似建议。
【解决方案2】:

您可以使用数据编写程序,程序的二进制表示,运行应用程序保存应用程序、数据并执行应用程序...等待应用程序终止,然后清理应用程序和数据。

将数据和程序保存为 C 字符串...您可能可以编写一个脚本来生成代码,该代码一次定义一个字节的 char 数组。

【讨论】:

    猜你喜欢
    • 2012-12-08
    • 1970-01-01
    • 1970-01-01
    • 2019-02-19
    • 1970-01-01
    • 2021-04-22
    • 2015-02-28
    • 2019-12-23
    • 1970-01-01
    相关资源
    最近更新 更多