我知道如果我有一个 .a 或 .so 文件以及该库的头文件(例如 SystemC),我应该
1.包含头文件
2.链接适当的库。
但我无法仅处理 .dll 文件,因为我也可以链接它,但没有要包含和使用命令的侦听器文件。有人可以解释一下存在什么样的 .dll-s 以及如何使用它们吗?是否可以使用任何 .dll 文件,或者它应该是特定类型的 .dll 才能集成到我的应用程序中?
DLL 在功能上等同于 .so 文件(也称为“共享对象”或“共享库”)。您需要一个标头来声明 DLL 内可用的函数,并且需要链接到一个处理加载和执行 DLL 调用(主要委托给操作系统)业务的库。
It is可以使用没有任何类型标头的 DLL。您可以直接调用 Win32 API,它将动态地将 DLL 加载到您的程序虚拟地址空间中,并调用其他 API,这将为您提供本质上是函数指针的内容。但是,您需要知道函数指针的签名才能正确使用,因此在这种情况下您实际上要做的就是声明实际 DLL 标头的一小部分供您使用。
This 维基百科文章可能会有所帮助,尤其是有关共享库的部分
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)