我已经搞定了About.com 在 Delphi EXE 中嵌入 dll 的指南 http://delphi.about.com/od/windowsshellapi/l/aa012103c.htm只要我实际上不使用 DLL 作为外部函数,这似乎就可以工作。无论如何,是否可以让我链接到的代码比 use 子句中引用的单元更早地工作。
我试过了:
- 完全按照这段代码所说的去做。
- 将此代码放置在使用使用外部函数的单元的表单的初始化部分中。
- 将此代码放置在使用外部函数的单元的初始化部分中。
我所说的外部函数指的是一个如下所示的函数:
function MyFunction: Integer; stdcall; external 'fundll.dll';
我遇到的问题是无法加载通常的“fundll.dll”(因为它不在目录中)。当代码达到这个程度时,Zarko 的代码就可以工作了(非常好,它在该文件夹中创建了 dll)。但当我使用所需的外部函数时,它甚至在项目开始运行之前就崩溃了。
你不能用外部函数来做到这一点 - 使用加载库() and 获取过程地址()相反,在提取 DLL 后,一切都应该可以正常工作。
原因是只有在操作系统加载程序解析了所有入口点后才会执行任何代码。如果你愿意的话,这有点像先有鸡还是先有蛋的问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)