我正在尝试使用C ++包含一个使用DLL的方法。
我尝试使用以下代码包含DLL:
HMODULE DLL = LoadLibrary(_T("name.dll"));
if (DLL)
{
std::cout << "DLL loaded!" << std::endl;
if (_pdisconnect)
{
std::cout << "Successful link to function in DLL!" << std::endl;
}
else
{
std::cout << "Unable to link to function in DLL!" << std::endl;
}
}
else
{
std::cout << "DLL failed to load!" << std::endl;
}
FreeLibrary(DLL);
我尝试包含的DLL有两个类PCls
和TPCls
。 PCls
有一种我想要包含的方法是getOP(LONG a)
。请问如何使用该方法?
非常感谢!
答案 0 :(得分:2)
问题是你不能从DLL导入类,只能导入函数。但是,您可以在DLL中使用工厂函数来创建实例并返回指针(或者传入对它初始化的工厂函数的引用)。
要获取指向您使用GetProcAddress
的函数的指针。但请注意,您必须将其传递给函数的mangled name。