c++builder调用VC的DLL
头儿给了我一个读二代证的DLL(VC写的)让我用c++builder6开发一个C/S的读卡软件,由于初次接触DLL,所以现在不知到怎么调用?
DLL内的函数是
int GetPersonMsgA(unsigned char * pInfo, char * pszImageFile)
int OpenCardReader(long nPort, DWORD ulFlag, DWORD ulBaudRate)
int CloseCardReader()
请问各位高手怎么调用这些函数
[解决办法]
如果想静态调用,先用implib工具从DLL中导出.lib文件,然后加入到工程中,声明了以上函数以后,直接用就行了。
[解决办法]
如果想动态调用,则用三件套API:LoadLibrary/GetProcAddress/FreeLibrary
[解决办法]
动态调用比较灵活一些,给你一段代码,参考一下
HANDLE LibHandle; LibHandle = LoadLibrary("你的DLL.dll"); int (*GetPersonMsgA)(unsigned char *, char *); (void *)GetPersonMsgA= GetProcAddress(LibHandle,"GetPersonMsgA"); GetPersonMsgA(pInfo,pszImageFile); //参数为真实调用的参数
[解决办法]
要看VC开发DLL包的类型,有些DLL是MFC专门制作的资源包可能不好调用。。