请教如何二次封装VC的DLL
发布网友
发布时间:2022-12-10 20:17
我来回答
共3个回答
热心网友
时间:2023-09-29 08:23
我有一个A.DLL,是MFC制作的,函数参数有很多MFC类,导致像C#这样的语言无法直接使用。
因此我想把这个A.DLL进行二次封装,使用标准的数据类型进行参数传递。
我自己在VC.net(VS2012)中创建了WIN32项目(DLL),并引用A.DLL,然后制作成B.DLL
能正常使用,但是B.DLL必须与A.DLL一起用,因为B.DLL只是引用了A.DLL,而没有包含A.DLL。
只用了部分接口怎么可能把A.dll全都给封装到B里呢,两个一起用吧,没得办法的
热心网友
时间:2023-09-29 08:24
首先要考虑到调用约定,delphi好像是_stdcall
所以如果用vc编写dll,调用约定要写成_stdcall
而且如果用mfc的dll,好像delphi无法调用
建议写成vc的win32 stdcall调用约定
这样就可以通用了
不建议写多个dll相互调用,意义不大
热心网友
时间:2023-09-29 08:24
网络搜索“查看新闻/公告--[整理]使用VC以_stdcall方式对DLL进行二次封装,以使VB可以调用该DLL”即可找到该方法。