调用dll动态库时,函数类型不匹配,可能的解决方案!

这篇博客讨论了在调用DLL动态库时遇到的函数类型不匹配问题,包括头文件使用错误导致的编译错误(如使用<afx.h>替换<windows.h>)和链接错误(如未正确链接动态库)。博主分享了解决这些问题的完整程序示例,包括DLL项目、DEF文件和主程序的代码,并展示了成功写入win.ini文件的结果。
摘要由CSDN通过智能技术生成

[Quote=引用 2 楼 visualeleven 的回复:]
extern void Writeintowinini(CString appname,CString keyname,CString str);
-->
typedef void (*WriteintowininiProc)(CString appname,CString keyname,CString str);

HMODULE hDll = LoadLibrary(...);
W……
[/Quote]
现在我来用2楼的帖来给出能够使用的完整程序,不过有几个地方,我仍然不明白:
<1> : 在调用该函数时,头文件使用<afx.h>取代<windows.h> !
错误如下:
Compiling...
dlltr.cpp
Linking...
nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) already defined in libcpd.lib(delop.obj)
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol __beginthreadex
Debug/dlltr.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.

dlltr.exe - 4 error(s), 0 warning(s)

&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值