0$房天下问答|关于制作dll文件 C++ ――> C$https://m.fang.com/ask/ask_1383615.html$https://static.soufunimg.com/common_m/m_public/201511/images/asksharedefault.png
packc/pages/ask/detail/detail?askid=1383615
共1个回答
-
-
-
kmand
丨Lv 4
用VC++6.0打开你的C语言程序,在你的C语言程序中加两个文件用来调DLL,CallDll.h,CallDll.cpp; 把对Dll的调用放到CallDll中去,如调用Dll中的int Add(int, int)在 CallDll.h中声明 #ifdef __cplusplusextern "C" {#endif int CallAdd(int, int);#ifdef __cplusplus}#endif在CallDll.cpp中实现#include <windows.h>#include "TestCall.h" int CallAdd(int x, int y) { HINSTANCE hIns = NULL; //加载DLL hIns = LoadLibrary( (LPCTSTR)("Dll名称") ); typedef int (*pFun)(int, int); pFun pFunPtr = (pFun)GetProcAddress( (HMODULE)hIns, "?add@@YAHHH@Z" );//Dll中Add函数的真正名字,C++中会//自动改名 可以用depend查看Dll if( NULL != pFunPtr) return (*pFunPtr)(x,y); return 0; }然后在你的C程序中调用CallAdd就可以间接调用Add了,如果你要定义Dll中的类变量的话,就在CallDll.cpp中建一个函数,传出一个类变量的指针
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。

关注成功