神思二代身份证验证机具接口控件说明

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

神思第二代身份证验证机具ActiveX控件使用说明
版本:V1.3.0.0
山东神思电子技术有限公司
2010年11月
修订记录
版本号日期章节号简单描述修订者审核者1.0 2007.6.12 初始创建谭雪欣
1.0.55.0 2008.7.25 增加部分函数谭雪欣
1.0.57.0 2008.9.8 修改了同时打开多个页面,关闭出
错问题。

谭雪欣
1.0.58.0 2008-09-12 增加了wlt图片的buffer属性等。

谭雪欣
1.0.7
2.0 2008-11-12 增加手动读卡时读卡失败则清空卡
面信息,打开界面自动开始读卡,
身份证反正面为横版。

谭雪欣
1.0.77.0 2008-11-13 增加保存身份证反正面图片函数等谭雪欣1.0.81.0 2008-11-25 增加安全模块号的读取谭雪欣1.0.8
2.0 2009-3-3 修改身份证图片生成temp文件夹下谭雪欣1.0.8
3.0 2009-3-10 增加清空属性的函数谭雪欣1.0.85.0 2009-5-31 用户自定义图片存放路径。

谭雪欣1.0.87.0 2009-08-27 增加身份证正反面的单独保存陈金华
1.0.97 2009-09-09 增加临时文件自定义保存目录、配
置文件ini存放在c盘根目录低下
陈金华
1.1.0.0 2010-11-19 Win7,IE8下界面显示黑框,修改
源码,并去掉界面对于按钮,只显
示身份证正面和签发机关、有效期
限、最新住址。

谭雪欣
1.2.0.0 2010-11-23 增加属性szCardInfo,方法readrfcard 谭雪欣1.3.0.0 2010-11-30 整理界面,更换最新rdcard2.0 谭雪欣
目录
1、说明 (5)
2、控件方法 (5)
2.1 打开端口连接设备 (5)
2.2 关闭端口断开设备 (5)
2.3 检测连接方法 (5)
2.4 读取证件信息 (5)
2.5 自动读取信息 (6)
2.6 结束自动读卡 (6)
2.7 删除读卡过程中生成的单个图片和文本文件 (6)
2.8 删除读卡过程中在temp文件夹下生成的全部jpg图片 (6)
2.9 删除读卡过程中生成的任意文件 (6)
2.10获得读卡过程中生成文件的Base64编码 (6)
2.11清空所有属性 (7)
2.12打印身份证反正面图片 (7)
2.13 readrfcard读卡 (7)
2.14 错误代码表 (7)
3、控件属性 (8)
3.1 姓名 (8)
3.2 性别 (8)
3.3 民族 (8)
3.4 出生日期 (9)
3.5 住址 (9)
3.6 公民身份号码 (9)
3.7 签发机关 (9)
3.8 有效期限 (9)
3.9 有效期限起始日期 (10)
3.10 有效期限截止日期 (10)
3.11 JPG照片存放路径 (10)
3.12 BMP照片存放路径 (10)
3.13 WLT照片存放路径 (10)
3.14JPG照片的Base64编码字符串 (11)
3.15 BMP照片的Base64编码字符串 (11)
3.16 WLT照片的Base64编码字符串 (11)
3.17 身份证文本信息存放路径 (11)
3.18 有数据标志 (11)
3.19 控件状态标志 (11)
3.20端口号码 (12)
3.21 获得读卡过程中生成的jpg图片路径 (12)
3.22 生成身份证反正面图片 (12)
3.23 控件下载后是否处于自动读卡状态 (12)
3.24读取设备安全模块号 (12)
3.25设备安全模块号 (13)
3.26 最新地址 (13)
3.27 用户指定身份证图片存放位置和名称 (13)
3.28 身份证正面JPG照片的Base64编码字符串 (13)
3.29 身份证反面JPG照片的Base64编码字符串 (13)
3.30 身份证临时文件保存目录 (14)
3.31 szCardInfo卡信息 (14)
4、示例网页使用说明 (14)
1、说明
本文档是针对神思联机型第二代居民身份证验证阅读机具通讯控件的使用说明文档,供用户使用ActiveX控件进行接入时参考。

Classid : F1317711-6BDE-4658-ABAA-39E31D3704D3
2、控件方法
2.1 打开端口连接设备
方法名称:OpenPort()
用途:设备连接,默认下自动搜索端口:对于串口可以使用的范围是1-16;对于USB接口可以使用的范围是1001-1016;如需自定义端口号请传值给ComNum属性。

不正确则返回不正确原因。

返回值:整形数字,具体意义见表1错误代码表。

2.2 关闭端口断开设备
方法名称:ClosePort()
用途:断开设备,不正确则返回不正确原因。

返回值:整形数字,具体意义见表1错误代码表。

2.3 检测连接方法
方法名称:GetState()
用途:检测设备连接是否正确,不正确则返回不正确原因。

返回值:整形数字,具体意义见表1错误代码表。

2.4 读取证件信息
方法名称:ReadCard()
用途:读取第二代身份证内的电子信息。

返回值:整形数字,具体意义见表1错误代码表。

2.5 自动读取信息
方法名称:ReadCard2()
用途:自动读卡方式,用户身份证放在设备上即自动读卡。

返回值:整形数字,具体意义见表1错误代码表。

2.6 结束自动读卡
方法名称:EndRead()
用途:结束自动读卡,用于结束ReadCard2开始的自动读卡。

返回值:整形数字,具体意义见表1错误代码表。

2.7 删除读卡过程中生成的单个图片和文本文件
方法名称:DeleteOutputFile ()
用途:删除读卡过程中生成的图片和文本文件,避免给用户电脑中留下垃圾文件。

返回值:无。

2.8 删除读卡过程中在temp文件夹下生成的全部jpg图片
方法名称:DeleteAllPicture ()
用途:删除读卡过程中生成的图片,避免给用户电脑中留下垃圾文件。

返回值:整形数字。

0:成功,-1:错误;
2.9 删除读卡过程中生成的任意文件
方法名称:DeletePicture(const rootstr: WideString): SYSINT;
用途:删除读卡过程中生成的文件,避免给用户电脑中留下垃圾文件。

参数:带入文件的绝对路径,例如C:\123.jpg
返回值:整形数字。

0:成功,-1:错误;
2.10获得读卡过程中生成文件的Base64编码
方法名称: GetFileBase64Buffer(const filename: WideString): WideString;
用途:获得读卡过程中生成的文件的Base64编码字符串。

参数:带入文件的绝对路径,例如C:\123.jpg
返回值:Base64编码字符串。

错误返回:1:如果文件不存在,返回The file does not Exist.2:如果发生错误返回ERROR;
2.11清空所有属性
方法名称:ClearAll (): int;
用途:清空所有属性的值。

返回值:正确返回0。

错误返回:<0;
2.12打印身份证反正面图片
函数名称:TypeCardPic (): int;
用途:打印身份证反正面图片。

说明:打印竖版身份证反正面。

返回值:整形数字。

0:成功;其他错误;
函数名称:TypeCardPicSet (): int;
用途:打印身份证反正面图片。

说明:弹出选择打印机对话框,打印竖版身份证反正面。

返回值:整形数字。

0:成功;其他错误;
2.13 readrfcard读卡
方法名称:readrfcard (): int;
用途:清空所有属性的值。

返回值:正确返回0。

错误返回:
0x01 // 初始化串口失败
0x03 // 寻卡失败
2.14 错误代码表
表1 错误代码表
错误代码错误描述错误代码错误描述
0 操作成功(没有错误)-6 设备连接错误
-1 相片解码错误-8 文件存储失败
-2 wlt文件后缀错误-10 端口操作失败
-3 wlt文件打开错误-11 解码失败
-4 wlt文件格式错误 2 接收数据超时
-5 软件授权文件错误或没有授权文件
3、控件属性
3.1 姓名
属性名称:NameS/NameL
数据类型:字符串(BStr)
NameS:卡片中储存的姓名
NameL:处理过的姓名
说明:两者区别在于Name中可能包含空格字符,NameL中没有空格字符。

3.2 性别
属性名称:Sex/SexL
数据类型:字符串(BStr)
Sex:卡片中储存的性别代码
SexL:处理过的性别
说明:两者区别在于Sex返回国家标准的性别代码,SexL则根据2005年国家标准翻译出性别。

如:Sex = 1 SexL = 男
3.3 民族
属性名称:Nation/NationL
数据类型:字符串(BStr)
Nation:卡片中储存的民族代码
NationL:处理过的民族名称
说明:两者区别在于Nation返回国家标准的民族代码,NationL则根据2005年国
家标准翻译出的民族名称。

如:Nation = 01 NationL = 汉
3.4 出生日期
属性名称:Born/BornL
数据类型:字符串(BStr)
Born:卡片中储存的出生日期
BornL:处理过的出生日期
说明: Born格式为:YYYYMMDD。

BornL格式为:YYYY年M月D日;
如:Born:19761209 ; BornL:1976年12月9日。

3.5 住址
属性名称:Address
数据类型:字符串(BStr)
说明:卡片中储存的住址。

3.6 公民身份号码
属性名称:CardNo
数据类型:字符串(BStr)
说明:卡片中储存的公民身份号码。

3.7 签发机关
属性名称:Police
数据类型:字符串(BStr)
说明:卡片中储存的身份证签发机关。

3.8 有效期限
属性名称:Activity/ActivityL
数据类型:字符串(BStr)
说明:卡片中储存的身份证有效期限起止日期,两个日期格式都是YYYYMMDD,连续保存,如:Activity 格式为2006120120261201,表示2006年12月1日至2026年
12月1日。

ActivityL格式为:2006.12.01-2026.12.01,表示2006年12月1日至2026年12月1日。

3.9 有效期限起始日期
属性名称:ActivityFrom
数据类型:字符串(BStr)
说明:卡片中储存的身份证有限期限起始日期,全为数字,格式是YYYYMMDD。

3.10 有效期限截止日期
属性名称:ActivityTo
数据类型:字符串(BStr)
说明:卡片中储存的身份证有限期限截止日期,全为数字,格式是YYYYMMDD。

3.11 JPG照片存放路径
属性名称:PhotoPath
数据类型:字符串(BStr)
说明:用于指明读取出的jpg照片存放在客户端上的路径。

3.12 BMP照片存放路径
属性名称:PathOfBMP
数据类型:字符串(BStr)
说明:用于指明读取出的bmp照片存放在客户端上的路径。

3.13 WLT照片存放路径
属性名称:WLTRoot
数据类型:字符串(BStr)
说明:用于指明读取出的Wlt照片存放在客户端上的路径。

3.14JPG照片的Base64编码字符串
属性名称:JPGBuffer
数据类型:字符串(BStr)
说明:用于获得jpg照片的base64编码字符串。

3.15 BMP照片的Base64编码字符串
属性名称:BMPBuffer
数据类型:字符串(BStr)
说明:用于获得bmp照片的base64编码字符串。

3.16 WLT照片的Base64编码字符串
属性名称:WLTBuffer
数据类型:字符串(BStr)
说明:用于获得WLT照片的base64编码字符串。

3.17 身份证文本信息存放路径
属性名称:PathOfTxt
数据类型:字符串(BStr)
说明:用于指明读取出的身份证文本信息存放在客户端上的路径。

3.18 有数据标志
属性名称:bHaveCard
数据类型:布尔型
说明:只读,为true标书有读到的身份信息数据。

3.19 控件状态标志
属性名称:sResultMsg
数据类型:字符串(BStr)
说明:只读,返回当前控件的状态字符串。

3.20端口号码
属性名称:ComNum
数据类型:整形数字
说明:获得/设置端口号。

对于串口可以使用的范围是1-16;对于USB接口可以使用的范围是1001-1016。

3.21 获得读卡过程中生成的jpg图片路径
属性名称:PicturePath
数据类型:字符串(BStr)
说明:返回字符串例如:C:\新建文件夹\temp\
3.22 生成身份证反正面图片
函数名称:
function SaveCardPic(const hengroot, shuroot: WideString;
CardPicArray: SYSINT): SYSINT;
数据类型:
hengroot, shuroot:字符串(BStr)生成图片的绝对路径,照片后缀必须为jpg;
CardPicArray数字(int):1:横版; 2:竖版; 3:横竖同时生成(默认为1)。

生成的正反面文件路径为:hengroot 的文件夹下
生成的正反面的文件名称分别为:zheng.jpg/fan.jpg,Base64编码的属性为zhengBuffer、fanBuffer:字符串(BStr)。

3.23 控件下载后是否处于自动读卡状态
属性名称:AutoReadCard
数据类型:数字(int)
说明:1:处于自动读卡状态;0:处于手动读卡状态;(默认为0)
3.24读取设备安全模块号
函数名称:ReadSecurityNum
返回类型:整型
说明:0:成功; -2:机具无法连接;其他:设备安全模块号读取失败。

读取成功后,请取属性:SecurityNum,为模块号。

3.25设备安全模块号
属性名称:SecurityNum
数据类型:字符串(BStr)
说明:获得读卡器安全模块号。

读写:只读。

3.26 最新地址
属性名称:NewAddress
数据类型:字符串(BStr)
说明:获得身份证中的最新地址。

读写:只读。

3.27 用户指定身份证图片存放位置和名称
属性名称:NewPic
数据类型:字符串(BStr)
说明:C:\zhaopian.jpg 必须为绝对路径,而且必须是jpg后缀。

读写:读写。

3.28 身份证正面JPG照片的Base64编码字符串
属性名称:FrontJpgPic
数据类型:字符串(BStr)
说明:用于获得身份证正面jpg照片的base64编码字符串。

3.29 身份证反面JPG照片的Base64编码字符串
属性名称:BackJpgPic
数据类型:字符串(BStr)
说明:用于获得身份证反面jpg照片的base64编码字符串。

3.30 身份证临时文件保存目录
属性名称:strSavePath
数据类型:字符串(BStr)
说明:临时文件保存目录默认路径为 c:\
3.31 szCardInfo卡信息
属性名称:szCardInfo
数据类型:字符串(BStr)
说明:卡信息字符的表示方式:
1.卡信息字符串为以'\0' 结束的有限长度字符串.
2.字符串的组串单位为”字段”, 不同的字段以'|'分隔.不同位置的字段,含义不相同.具体经双方约
定后,进行固定。

未经双方协商,不可随意变更.
3.字符串组串方式:
字段个数|4位字段长度+字段内容|4位字段长度+字段内容|4位字段长度+字段内容|
说明:为了防止字段内带有特殊字符,必须通过4位固定长度字符,表示字段内字符串长度, 用来限定取字段内容时的字符串长度,防止出错字符串解析错误.
例如: 读取张三的二代身份证信息,
信息内容: 二代身份证-- 02, 身份证号: 430210************,出生日期:19901231, 姓名:张三, 性别:男|,民族:汉族, 住址: 湖南省长沙市涂家冲移动指挥中心
男-M, 女-L
组串格式(字段个数|4位字段长度+字段内容|4位字段长度+字段内容|) :
8|000202|0018430210199012310034|000819901231|0004张三|0001M|000201|0030湖南省长沙市涂家冲移动指挥中心|C:\\zp.jpg|
4、示例网页使用说明
打开网页IDcard.htm后,首先点击“取控件数据显示”,这样保证读卡信息和网页显示同步。

点击“开始读卡”,此时启动自动读卡方式,把身份证放在机具感应区,可以自动进行读卡。

点击“停止读卡”,停止自动读卡。

把身份证放在感应区,点击“手动读卡”可以进行手工读卡,每点击一次读一张卡。

当关闭网页后,读卡生成的图片自动删除。

每次退出程序或者关闭网页,请调用函数DeleteAllPicture和DeleteOutputFile,清除用户电脑上生成的读卡文件,以免长时间不清理,造成用户电脑上垃圾文件增多,影响速度。

相关文档
最新文档