More Related Content
Similar to Wbm9000动态库说明L (20)
Wbm9000动态库说明L
- 2. 1 概述
wbm9000dll.DLL是一个基于Windows的32位动态链接库文件,目的是方便客户进行二次开发。其使用的方法与Windows标准的.DLL文件一样。
1.1 API 文件说明 :
wbm9000dll.h API 函数原型声明
wbm9000dll.dll API 函数的动态链接库
1.2 适用操作系统:
Windows NT: 需要NT 3.1 版或以后版本
Windows: 需要Windows 98、Windows 2000 或以后版本
1.3 适用开发语言:
Visual C++ 5.0 及以后版本
Visual Basic 5.0 及以后版本
Visual C++Builder 5.0 及以后版本
DELPHI 3.0 及以后版本
PowerBuilder 6.0 及以后版本
其它Windowns 32位开发工具
1.4 注:
(1) 所有 API 为同步操作
(2) 如无特别说明,所有的读写缓冲区大小为 64 字节,读写长度传入参数最大为 64
(3) 返回状态/错误代码:
#define SUCCESS 1 //正确执行
#define TIMEOUT 0 //通信超时
#define LRCERROR -3 //校验错误
#define PORTERROR -1 //端口错误
#define OPERATEERROR -2 //操作错误
#define NOCARD -4 //没插卡
- 3. 2 API 函数
2.01 int PortOpen(LPSTR szPort, LPSTR szBuildCommDCB, PHANDLE phComm);
功能:初始化通信端口
参数:szPort:串口号,如“COM1”;szBuildCommDCB:构造 DCB 字符串,如"baud=9600 parity=N data=8 stop=1";phComm:用于接收端口句柄的指
针
2.02 int PortClose(HANDLE hComm);
功能:关闭通讯端口
参数:hComm:端口资源句柄;
2.03 int GetDevVersion(PBYTE pVersionBuff,PBYTE sizeReceive,HANDLE hComm);
功能:得到版本号
参数:pVersionBuff:指向一个缓冲区,用于接收版本号; sizeReceive:接收的字节数;hComm:端口资源句柄
2.04 int Init(HANDLE hComm);
功能: 读卡器初始化/复位
参数:hComm:端口资源句柄
2.05 int MemCard_PowerOff(HANDLE hComm);
功能: 内存卡下电
参数:hComm:端口资源句柄
2.06 int ReportPresenceAndPosition(PBYTE Ph1,PBYTE Ph2,PBYTE Ph3,HANDLE hComm);
功能: 报告卡位置
- 4. 参数:Ph1,Ph2,Ph3 接收位置参数,各一个字节;hComm:端口资源句柄
2.07 int MSCardForwardRead(PBYTE pTrack1Buff,PBYTE pT1Len,PBYTE pTrack2Buff,PBYTE pT2Len,PBYTE
pTrack3Buff,PBYTE pT3Len,HANDLE hComm);
功能: 磁卡向前读
参数:pTrack1Buff:指向一个 76 字节大小的缓冲区,用于接收第一轨道数据;pT1Len:接收到第一轨道数据的字节数;pTrack2Buff:指向一个 47 字节大小
的缓冲区,用于接收第二轨道数据;pT2Len:接收到第二轨道数据的字节数;pTrack3Buff:指向一个 104 字节大小的缓冲区,用于接收第三轨道数据;
pT3Len:接收到第三轨道数据的字节数;hComm:端口资源句柄
2.08 int MSCardBackwardRead(PBYTE pTrack1Buff,PBYTE pT1Len,PBYTE pTrack2Buff,PBYTE pT2Len,PBYTE
pTrack3Buff,PBYTE pT3Len,HANDLE hComm);
功能: 磁卡向后读
参数:同上
2.09 int SmartPowerOff(HANDLE hComm);
功能: 智能卡(Smart Card)下电
参数:hComm:端口资源句柄
2.10 int SmartPowerOn(PBYTE pATR_Buff,PBYTE sizeReceive,HANDLE hComm);
功能: 智能卡上电
参数:pATR_Buff:接收 ATR 缓冲区,sizeReceive:ATR 长度;hComm:端口资源句柄
2.11 int SmartCardDIRECT(PBYTE pDIRECT, BYTE lenDIRECT, PBYTE pDataReceive, PBYTE psize,HANDLE hComm);
功能: 对智能卡发送指令
参数:pDIRECT:指令缓冲区,lenDIRECT:指令长度,pDataReceive:响应数据缓冲区,psize:响应数据长度;hComm:端口资源句柄
2.12 int SmartCardSelect(BYTE dataSel,HANDLE hComm);
- 5. 功能: 智能卡座选择
参数:dataSel:卡座号,可为 0 或 1;hComm:端口资源句柄
2.13 int SLE4418_28_42_PowerOn(PBYTE pATR_Buff,PBYTE sizeReceive,HANDLE hComm);
功能: SLE4418/28/42 卡上电
参数:同 2.10
2.14 int SLE4418_28_ReadWithoutProtect(WORD startAddr, BYTE len, PBYTE pDataBuff, PBYTE
pLenRead,HANDLE hComm);
功能: SLE4418/28 读操作(不带保护)
参数: startAddr:开始地址,len:要读的长度,pDataBuff:接收数据缓冲区,pLenRead:实际读出的长度;hComm:端口资源句柄
2.15 int SLE4418_28_ReadWithProtect(WORD startAddr, BYTE len, PBYTE pDataBuff, PBYTE pLenRead,HANDLE
hComm);
功能: SLE4418/28 读操作(带保护,返回的每个字节前带一个保护字节,说明该字节是否己被写保护, 2AH:保护, 20H:未保护)
参数: startAddr:开始地址,len:要读的长度,pDataBuff:接收数据缓冲区(大小为 128 字节),pLenRead:实际读出的长度;hComm:端口资源句柄
2.16 int SLE4418_28_WriteWithoutProtect(WORD startAddr,PBYTE pDataBuff,BYTE len,HANDLE hComm);
功能: SLE4418/28 写操作(不保护)
参数: startAddr:开始地址,pDataBuff:写缓冲区,len:写长度;hComm:端口资源句柄
2.17 int SLE4418_28_WriteWithProtect(WORD startAddr,PBYTE pDataBuff,BYTE len,HANDLE hComm);
功能: SLE4418/28 写操作(保护)
参数: 同上
- 6. 2.18 int SLE4428_VerifyPSC(PBYTE pPSC,HANDLE hComm);
功能: SlE4428 核对 PSC 密码
参数: pPSC:两个字节的密码缓冲区;hComm:端口资源句柄
2.19 int SLE4442_ReadMainMem(BYTE startAddr, BYTE len, PBYTE pDataBuff, PBYTE lenRead,HANDLE hComm);
功能: SLE4442 卡读主内存(20H—FFH)
参数: startAddr:开始地址,len:长度,pDataBuff:读缓冲区,lenRead:实际读出的长度;hComm:端口资源句柄
2.20 int SLE4442_ReadProtectMem(BYTE startAddr, BYTE len, PBYTE pDataBuff, PBYTE lenRead,HANDLE
hComm);
功能: SLE4442 卡读可保护内存(00H—1FH)
参数: 同上
2.21 int SLE4442_WriteWithoutProtect(BYTE startAddr,PBYTE pDataBuff,BYTE len,HANDLE hComm);
功能: SLE4442 卡写不带保护
参数: startAddr:开始地址, pDataBuff:写缓冲区,len:写长度;hComm:端口资源句柄
2.22 int SLE4442_WriteWithProtect(BYTE startAddr,PBYTE pDataBuff,BYTE len,HANDLE hComm);
功能: SLE4442 卡写带保护
参数: 同上
2.23 int SLE4442_VerifyPSC(PBYTE pPSC,HANDLE hComm);
功能: SLE4442 卡核对密码
参数: pPSC:三个字节的密码缓冲区;hComm:端口资源句柄
- 7. 2.24 int SLE4442_ModifyPSC(PBYTE pPSC,HANDLE hComm);
功能: SLE4442 卡修改密码
参数: 同上
2.25 int SLE4442_ReadSecurityMem(PBYTE pDataBuff,HANDLE hComm);
功能: SLE4442 卡
参数: pDataBuff:4 个字节的读缓冲区;hComm:端口资源句柄
2.26 int AT24C01_16_PowerOn(HANDLE hComm);
功能: AT24C01/02/04/08/16 卡上电
参数: hComm:端口资源句柄
2.27 int AT24C01_16_Read(WORD wordAddr,BYTE len,PBYTE pDataReceive,PBYTE pLenRead,HANDLE hComm);
功能: AT24C01/02/04/08/16 卡读操作
参数: wordAddr:开始地址,len:读长度,pDataReceive:读缓冲区,pLenRead:实际读出长度;hComm:端口资源句柄
2.28 int AT24C01_16_Write(WORD wordAddr,PBYTE pDataBuff,BYTE len,HANDLE hComm);
功能: AT24C01/02/04/08/16 卡写操作
参数: wordAddr:开始地址,pDataBuff:写缓冲区,len:写长度;hComm:端口资源句柄
2.29 int AT24C256_512_PowerOn(HANDLE hComm);
功能: AT24C256/512 卡上电
- 8. 2.30 int AT24C256_512_Read(WORD wordAddr, BYTE len, PBYTE pDataReceive, PBYTE pLenRead,HANDLE hComm);
功能: AT24C256/512 卡读操作
参数: wordAddr:开始地址,len:读长度,最大为 128;pDataReceive:读缓冲区,128 字节;pLenRead:实际读出长度;hComm:端口资源句柄
2.31 int AT24C256_512_Write(WORD wordAddr,PBYTE pDataBuff,BYTE len,HANDLE hComm);
功能: AT24C256/512 卡写操作
参数: wordAddr:开始地址,pDataBuff:写缓冲区,最大为 128 字节;len:写长度,最大为 128;hComm:端口资源句柄
2.32 int SetBaud(int codeBaud,HANDLE hComm);
功能: 设置 WBM9000 串口速率
参数: codeBaud:速率代码:
代码 速率(bps)
1 4800
2 9600
3 19200
4 38400
5 57600
6 115200
hComm:端口资源句柄