如何将C程序与辅助数据文件捆绑在一起?

时间:2016-02-24 20:16:19

标签: installation package

如果这个问题是重新发布,我道歉。它似乎应该是 但是我很难在网上找到解决方案。

我写了一个C程序,需要读取一些辅助文件 它的运作。我通常只是把这些文件放在同一个文件夹中 编译后的可执行文件,然后使用a加载这些文件 相对路径。

但是,这仅在用户的工作目录相同时才有效 作为存储可执行文件的文件夹。这是不够的 我的目的,因为我希望用户能够从中调用此可执行文件 其他目录。

包装程序的标准方法是什么? 单可执行二进制?该程序旨在由附近使用 计算机文盲的人,我正在寻找最接近的人 点击解决方案成为可能。

非常感谢。   -Patrick

非常感谢回复!这给了我一个开始的地方。我会围绕确定每个操作系统的可执行路径。

1 个答案:

答案 0 :(得分:0)

这取决于您的操作系统。 Windows为此提供了称为资源(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/length)的东西,允许您将文件与可执行文件捆绑在一起。也许在任何平台上执行此操作的最简单方法是将数据包含在数组中。如果需要在运行时编辑对该数据的更改,可以向数组添加标识符(类似char Data[] = {'I','D','E','N','T',/*your data*/,'I','D','E','N','T','1'}),然后在运行时在二进制文件中找到该数组并更改其内容。我知道这是一个非常糟糕的解决方案,但它可能会起作用。