【发布时间】:2016-11-15 18:17:03
【问题描述】:
有很多关于如何从 dll 导出函数的信息(我已经做过很多次了),但我听说也可以从 可执行文件 导出函数,这样外部 dll 可以调用它们。
虽然我已经设法让它工作,但入口点似乎有一些问题:
- 如果没有显式设置,则默认为错误的“main” 一个不起眼的子库。
- 如果 显式设置,则其输入参数 argc 和 argv 会损坏(argc 可以是 ~20000000 或 ~-700000)。
我找不到任何有关从可执行文件导出函数的文档 - 我应该接受提示而不是这样做吗?
[上下文:这是使我们的流程在 Windows 和 Linux 上工作的努力的一部分。 Linux 版本意外地从可执行文件中获取函数,而不是从附带的 dll 中显式导出的函数(这些函数具有相同的名称,但参数不同)。我们决定尝试使用它运行,并从 Windows 上的可执行文件中导出函数。]
【问题讨论】:
标签: c++ linux windows dll executable