15,471
社区成员
发帖
与我相关
我的任务
分享
extern "C" __declspec(dllexport) void GetStruct(Person* person); //dll导出函数声明
//结构体声明
struct Person
{
char* name;
char* sex;
char* address;
int age;
};
//dll导出函数的实现
__declspec(dllexport) void GetStruct(Person* person)
{
person->address = "CHINA";
person->age = 15;
person->sex = "男";
person->name = "程辉";
}
//调用DLL代码
//函数指针声明及定义
typedef void (__stdcall *GETINFOMATION)(Person* person);
GETINFOMATION Getinfomation;
//调用过程
m_hModule = LoadLibraryA("Sun.dll");
if(m_hModule == NULL)
{
MessageBox(_T("加载动态链接库失败"));
}
else
{
Getinfomation = (GETINFOMATION)GetProcAddress(m_hModule,"GetStruct");
}
//函数调用
Person person;
Getinfomation(&person);