【发布时间】:2011-12-20 16:45:02
【问题描述】:
我不知道如何执行以下操作:
- 我使用的是 MS Visual C++ 6.0
- 我有一个可编译的 Win32 DLL 项目。
- 我有另一个项目,这次是一个 Win32 控制台项目,它使用 DLL 通过包含它的头文件并链接 .lib 文件 DLL。
现在我想要另一个项目,类似于第二个但不使用头文件和 lib 文件。
这可能吗?我读到的任何地方都需要 dll+lib+h 或 dll+h。如果你知道接口,一个DLL文件就足够了?
顺便说一句,“使用 DLL”是指使用 DLL 中定义的类和函数。
【问题讨论】:
-
你为什么不想使用标题?
-
如果没有声明接口,你如何“知道接口”?这通常放在头文件中。 .lib 文件帮助链接器确定需要使用 DLL。你可以使用 LoadLibrary + GetProcAddress 来做这件事。
-
@Jane - 我想你认为没有 .h 或 .lib 的另一个 Win32 DLL 项目实际上确实有它们。否则,您将需要自己找到函数和类签名(如何,我不知道)。我怀疑对项目属性的彻底调查将揭示“缺失”声明(lib 或标头)。
-
@All:实际上我拥有所有文件(.dll、.h、.lib),所以我知道如何生成它们。但是,我想为其他人发布 .dll 文件。而且我认为提供 dll 文件和描述所有类和函数接口的文档是很常见的。我错了吗?
-
好的,我现在使用 .lib 和 .h 文件,结果这根本不是问题,现在一切正常。
标签: c++ visual-studio dll