c/c++写的dll在vb底下如何声明?此问题困扰了我4天了,请高手帮帮忙~~

smartcard2003 2005-08-22 10:28:42
#define USER_ID_SIZE8
#define SW_VER_SIZE10
#define DEVICE_ID_SIZE 6

struct ms2000_Info {
BYTE ProtocolVersion;
BYTE SysStatus;
BYTE UserID[USER_ID_SIZE];
BYTE SoftwareVersion[SW_VER_SIZE];
};

struct ms2000_string {
BYTE BarcodeType;
int nLength;
BYTE * data;
struct ms2000_string * pNext;
};



struct ms2000_data {
BYTE DeviceID[DEVICE_ID_SIZE];
int nCount;
struct ms2000_string *pHead;
};
MS2000_API int MS2000_Interrogate(struct ms2000_Info **ppInfo);
MS2000_API int MS2000_Upload(struct ms2000_data **ppData);
MS2000_API int MS2000_ReleaseBuffer(struct ms2000_data *pData);


请问对应的这3个函数在vb下该怎么声明???谢谢~~~~~~~~
...全文
123 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
windcandle 2005-08-22
  • 打赏
  • 举报
回复
结构里的指针不知道怎么声明,其他的倒没什么
C里的类型 VB里的类型
BYTE[] string
int long

VB里用byval方式传递值就可以
smartcard2003 2005-08-22
  • 打赏
  • 举报
回复
最好能写出具体的申明dll文件名:ms2000.dll
killer1984 2005-08-22
  • 打赏
  • 举报
回复
这个关键看你怎么调用了,声明这样是可以的。

你到底要用指针的指针实现什么操作啊?
jsjjms 2005-08-22
  • 打赏
  • 举报
回复
申明的类型应该不通用的呀??
smartcard2003 2005-08-22
  • 打赏
  • 举报
回复
不过还是非常感谢
smartcard2003 2005-08-22
  • 打赏
  • 举报
回复
这种方式,不可以,我试过了
killer1984 2005-08-22
  • 打赏
  • 举报
回复
Public Declare Function MS2000_Interrogate Lib "ms2000.dll" (ByVal ppInfo As Variant) As Long
Public Declare Function MS2000_Upload Lib "ms2000.dll" (ByVal ppData As Variant) As Long
Public Declare Function MS2000_ReleaseBuffer Lib "ms2000.dll" (ByVal pData As Variant) As Long
smartcard2003 2005-08-22
  • 打赏
  • 举报
回复
在线等待。。。。。各位版主帮忙想想办法呀

64,651

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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