二次开发接口说明V3.0
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.概述
精伦电子开发的二代身份证读卡系列机具适用于相关行业的联机型应用。产品提供了完善的二次软件开发接口(API)。本手册对开发接口的文件组成、函数定义格式、调用方法及返回值等进行详细的说明。
本通用开发包支持的设备型号如下:
1、iDR200(串口和USB口)。
2、iDR320(必须进入“同步应用”模式)。
3、iDR400-1(必须进入“同步”模式)。
4、iDR210(USB-HID免驱动接口)。
5、iDR210(串口)。
注意:完全兼容原2.0版本开发接口,支持USB-HID接口和串口的iDR210。
1、如果使用原开发包采用动态调用dll方式,只需直接替换原dll即可。
2、如果使用原开发包采用的静态调用方式,则在不改变代码的情况下,对原程序重新编译链接即可。
2.系统要求
使用本API的PC机,必须满足下列条件:
●Windows 98、Windows 2000 Pro、Windows 2000 Server、
Windows XP。
●至少32兆内存(32M RAM or Larger)。
●至少10兆空闲硬盘空间(10M Free Hard Disk Space or Larger)。
●至少一个空闲普通串口或USB口(视用户需求而定)。
3.接口文件说明
接口文件包括:
Dewlt.dll 相关动态联接库
sdtapi.dll 相关动态联接库
JpgDll.dll 相关动态联接库
SavePhoto.dll 相关动态联接库
sdtapi.h 相关动态联接库头文件
适用开发语言:
Visual C++ 5.0 及以后版本
C++ Builder 5.0 及以后版本
Visual Basic 5.0 及以后版本
Delphi 3.0 及以后版本
PowerBuilder 5.0 及以后版本
4.接口函数说明
4.1.端口函数
4.1.1.端口初始化函数
原型:int InitComm (int iPort)
说明:本函数用于打开串口或USB并检测读卡设备是否就绪。
参数:iPort:设置串口、USB、USB-HID(免驱动)接口
返回值:
注:如果读卡机具连接的端口是确定的,可以直接使用相应端口号调用本函数。否则,可以采用循环查找的方式调用本函数。
4.1.2.端口关闭接口
原型:int CloseComm(void)
说明:本函数用于关闭已打开的端口,一般在调用InitComm成功并完成读卡任务后调用。
参数:无
返回值:
函数关闭端口。
4.2.读二代证相关函数
4.2.1.卡认证接口
原型:int Authenticate (void)
说明:本函数用于发现身份证卡并选择卡。
参数:无
返回值:
注:认证卡时,需要将身份证放置于读卡机具上方并做稍许时间的停留。如果函数返回错误表示没有发现卡或者卡停留时间太短。
4.2.2.读卡信息接口
原型:int ReadBaseMsg( unsigned char * pMsg, int * len);
说明:本函数用于读取卡中基本信息,包括文字信息与图像信息。文字信息已经分段解析,输出格式为单字节,且每一字段信息已经被表示为字符串。图象信息被解码后存为文件photo.bmp(在当前工作目录下)。
参数:
pMsg[out] 无符号字符指针,指向读到的文本信息。需要在调用时分配内存,字节数不小于192。函数调用成功后,各字段的文本信息已经转换为单字节形式,并表示为字符串格式。字段意义及偏移值如下所示:
Len[out] 整数,返回总字符长度,可以给空值(NULL)。
返回值:
原型2:int ReadBaseMsgPhoto( unsigned char * pMsg, int * len,char * directory);
说明:本函数用于读取卡中基本信息,包括文字信息与图像信息。
文字信息已经分段解析,输出格式为单字节,且每一字段信息已经被表示为字符串。图象信息被解码后存为文件photo.bmp(在directory指定目录下)。
参数:
pMsg[out] 无符号字符指针,指向读到的文本信息。需要在调用时分配内存,字节数不小于192。函数调用成功后,各字段的文本信息已经转换为单字节形式,并表示为字符串格式。字段意义及偏移值如下所示:
Len[out] 整数,返回总字符长度,可以给空值(NULL)。
directory [in] 字符指针,表示照片存储路径,路径最后有无“\”均可;可以给空值(NULL),表示照片存储在当前目录中,此时函数效果同ReadBaseMsg。
返回值:
原型3:int ReadBaseInfos( char * Name, char * Gender, char * Folk, char *BirthDay, char * Code, char * Address,char *Agency, char * ExpireStart,char* ExpireEnd)
说明:本函数用于读取卡中基本信息,包括文字信息与图像信息。文字信息以字符串格式输出。图象信息被解码后存为文件photo.bmp,身份证正面图片1.jpg,身份证反面图片2.jpg(在当前工作目录下)。
参数:
Name[out] 字符型指针,指向姓名信息。需要在调用时分配内存,