新手求助PB调用C++DLL时函数声明问题。

newpowerbuilder 2014-12-05 10:23:01
大家好,初接触PB几天,现在需要做一个读卡器的接口,厂家提供了C++DLL,但我在PB不知道怎样声明这些函数签名。
下面是那个C++DLL的头文件声明

long __stdcall ICC_Reader_Open(char *dev_name);
long __stdcall ICC_Reader_Close(long ReaderHandle);

int __stdcall fn1001(long hDev,char *pVal);
int __stdcall fn1002(long hDev, char *pVal);

long __stdcall dc_readmagcardall(long icdev, unsigned char ctime, unsigned char *pTrack1Data, unsigned long *pTrack1Len,
unsigned char *pTrack2Data, unsigned long *pTrack2Len, unsigned char *pTrack3Data, unsigned long *pTrack3Len);

int __stdcall ICC_CertCardInfosExt(int handle,char *pBmpFile,char *Pname,char *pSex,char *pNation,char *pBirth,char *pAddress,char *pCertNo,char *pDepartment,char *pExpire,char *pErrMsg);

我在PB上声明了下面两个,不知道对不对。其他的函数我不知道要怎样声明才正确。求助。

Function long ICC_Reader_Open(string dev_name) LIBRARY "SSSE32_3_in_1.dll"
Function long ICC_Reader_Close(longlong ReaderHandle) LIBRARY "SSSE32_3_in_1.dll"
...全文
1635 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
newpowerbuilder 2014-12-05
  • 打赏
  • 举报
回复
引用 1 楼 lzp_lrp 的回复:
我在PB上声明了下面两个,不知道对不对。其他的函数我不知道要怎样声明才正确。求助。

Function long ICC_Reader_Open(string dev_name) LIBRARY "SSSE32_3_in_1.dll"  
Function long ICC_Reader_Close(longlong ReaderHandle) LIBRARY "SSSE32_3_in_1.dll"
Function long ICC_Reader_Close(longlong ReaderHandle) LIBRARY "SSSE32_3_in_1.dll" 改为 Function long ICC_Reader_Close(long ReaderHandle) LIBRARY "SSSE32_3_in_1.dll" 一般用不着longlong[/quote] 还有其他函数呢。怎样声明?求助。
A啦Dbit 2014-12-05
  • 打赏
  • 举报
回复
可能要加ref ,如果是pb10及以后后面还要加ansi Function long ICC_Reader_Open(ref string dev_name) LIBRARY "SSSE32_3_in_1.dll" alias for 'ICC_Reader_Open;ansi'
WorldMobile 2014-12-05
  • 打赏
  • 举报
回复
我在PB上声明了下面两个,不知道对不对。其他的函数我不知道要怎样声明才正确。求助。

Function long ICC_Reader_Open(string dev_name) LIBRARY "SSSE32_3_in_1.dll"  
Function long ICC_Reader_Close(longlong ReaderHandle) LIBRARY "SSSE32_3_in_1.dll"
[/quote] Function long ICC_Reader_Close(longlong ReaderHandle) LIBRARY "SSSE32_3_in_1.dll" 改为 Function long ICC_Reader_Close(long ReaderHandle) LIBRARY "SSSE32_3_in_1.dll" 一般用不着longlong

680

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder API 调用
社区管理员
  • API 调用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧