我想动态链接一个 .dll。 有哪些多种方法可以做到这一点?
我知道的一种方法是使用 HMODULE WINAPI LoadLibrary(_In_ LPCTSTR lpFileName)
功能。
还有别的办法吗?
我试图理解以下代码:
#if defined WIN32
// We want to define DTE_DLL_EXPORT if we are making
// a dll, but not if we are making a static library...
#if defined DTE_STATIC
#define GFITDTE_ENTRYPT
#else
#if defined _GFITDTE_BUILD_
#define GFITDTE_ENTRYPT __declspec(dllexport)
#else
#if defined DTE_IMPORT
#define GFITDTE_ENTRYPT __declspec(dllimport)
#else
#define GFITDTE_ENTRYPT
#endif
#endif
#endif
#else // Not WIN32
有人能解释一下上面的代码吗??
最佳答案
显示的代码与 LoadLibrary
无关。这是典型的头文件,这反过来意味着您正在构建一个不应通过 LoadLibrary
加载的 DLL。相反,编译器从头文件中知道函数原型(prototype),链接器使用导入库 来设置 DLL 链接。
关于c++ - 我们可以通过哪些不同的方式动态链接 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34788988/