Manual中控online sdk开发文档.docx
《Manual中控online sdk开发文档.docx》由会员分享,可在线阅读,更多相关《Manual中控online sdk开发文档.docx(12页珍藏版)》请在冰豆网上搜索。
Manual中控onlinesdk开发文档
ZKOnlineSDK2.0ForB/S
参考手册
(Rev2.0)
ZKSoftwareInc.
2003-03-22
1ZKOnlineSDK描述
主要目的是将指纹识别技术应用于浏览器/服务器环境中(B/S=Browser/Server)。
具体表现形式就是在前台浏览器中直接使用进行指纹登记和提取指纹模板,然后发送到后台服务器中进行比对,比对方式依赖后台使用的WEB服务器和脚本语言。
前台浏览器目前一般为IE(internetexplorer)浏览器,后台WEB服务器为IIS,APACHE等,后台使用脚本编程语言为ASP,JSP,PHP,JAVA等。
2ZKOnlineSDK架构
ZKOnlineSDK基于Biokey算法在B/S结构下使用的开发包。
ZKOnlineSDK针对后台服务器比对方式分为1:
1和1:
N两种,根据后台WEB服务器开发使用的不同脚本语言提供Com+组件和DLL两种方式;ZKOnlineSDK主要满足需要在前台浏览器端提取指纹模板,然后提交到后台进行1:
1或者1:
N指纹识别,后台一般包括专门的指纹识别服务软件系统。
ZKOnlineSDK1:
1版本对应于BiokeySDK1:
1版本,模板兼容。
ZKOnlineSDK1:
N版本对应于BiokeySDK1:
N版本,模板兼容。
前台浏览器和后台服务器操作系统要求为Windows,服务器为UnixorLinux,则需要单独建立比对Windows服务器。
ZKOnlineSDK2.0(SoftwareDevelopmentKit)前台浏览器部分以ActiveX的方式存在,使用者可以直接嵌入到IE浏览器的网页中使用,也可以使用各种开发语言(例如VC++,C++Builder,Delphi,VB,VisualFoxpro,PB等)来开发相对于指纹仪的应用程序,后台服务器部分以COM+组件(IIS+ASP使用)或者DLL的方式提供。
FilesIncluded
OS
Files
Description
Windows95
Windows98
WinodwsME
WinodwsNT
Windows2000
WindowsXP
Setup.exe
指纹仪和加密狗驱动安装程序
License.rtf
开发许可协议
Manual.doc/pdf
程序开发手册
One\Client\ZKOnline.ocx
ZKOnline1:
1Control
One\Client\ZKOnline.lic
ZKOnline1:
1ControlLicense
One\Server\FPCom.dll
1:
1IIS+ASP使用的COM+组件
One\Server\Match.dll
1:
1其它后台脚本调用的DLL库
Many\Client\ZKOnline.ocx
ZKOnline1:
NControl
Many\Client\ZKOnline.lic
ZKOnline1:
NControlLicense
Many\Server\FPCom.dll
1:
NIIS+ASP使用的COM+组件
Many\Server\Match.dll
1:
N其它后台脚本调用的DLL库
Sample\
网站演示代码
Sample.htm
ZKOnline.ocx插件htm使用代码
3ZKOnlineSDK特点
1、简化开发,快速使用
ZKonlineSDK基于BiokeySDK开发而来,主要目的可以帮助客户快速使用指纹产品,简化在B/S和程序开发使用中的开发困难,使得客户在短时间内在自己的项目和系统中使用指纹技术。
2、授权许可相同
ZKonlineSDK使用和BiokeySDK相同的授权许可文件或者硬件加密狗方式,即两者使用同一授权方式的Biokey.lic文件或者加密狗。
3、指纹模板兼容
ZKonlineSDK和BiokeySDK的1:
1模板互相可以通用,相互进行比对识别
ZKonlineSDK和BiokeySDK的1:
N模板互相可以通用,相互进行比对识别
4、ZKOnlineSDK的其它应用
ZKonlineSDK基于BiokeySDK开发,前台系统以ActiveX形式存在,因此也可以直接应用于一般的(客户/服务器)C/S结构或者脚本形式的应用程序和系统中,其特点是开发使用简单,快速,ZKonlineSDK可以应用于LotusNotes,MicrosoftOffice等办公系统软件之中。
4软件安装
1安装驱动程序
前台客户端和后台服务器都需要安装指纹仪驱动程序,如果已经安装BiokeySDK光盘所带的指纹仪驱动程序,请跳过继续下面的安装,在安装之前,请确定您的操作系统和计算机的配置符合软件运行的要求。
在进行安装之前,如果您的计算机接上了指纹采集器,最好将它拔下来。
1、将安装光盘放入计算机的光驱之中,安装软件将自动运行或者执行Setup.exe。
弹出窗口如下图所示:
点击下一步按钮,可以进入如下操作步骤:
请选择安装的目标目录,进入下一个操作界面:
点击安装按钮,就开始安装指纹驱动程序和加密狗驱动程序。
注意:
1、程序安装的只是指纹采集器的驱动程序和加密狗的驱动程序,其它开发所需的文件需要用户手动拷贝至相应的目录下
2、用加密狗许可方式,请确保加密狗正确连接在计算机的并口上。
3、使用许可文件方式,需要将许可文件拷贝到Windows系统目录
2注册客户端ZKonline插件
客户端需要注册ZKOnline插件,然后才能在网页和程序开发中使用。
拷贝下面文件到Windows系统目录(c:
\windows\system):
ZKOnline.ocx控件库文件
ZKOnline.lic控件库文件许可
注册控件ZKOline.ocx:
c:
\windows\system\regsvr32.exec:
\windows\system\ZKonline.ocx
注意:
Windows98,ME的系统目录为{Windows}\System
WindowsNT,2000,XP系统目录为{Windows}\System32
3注册安装后台服务器COM+组件(可选)
如果使用IIS+ASP开发,则后台WEB服务器需要注册安装COM+组件FPCom.dll,步骤如下:
1、进入 管理工具-〉组件服务,下图所示:
点击鼠标右键,选取菜单 新建-〉应用程序
2、创建新的COM+应用程序,下图所示:
3、选取”下一步”按钮,选择创建空应用程序,
4、输入新应用程序的名称(这里输入’Sample’),选取”下一步”按钮,一直到完成,这时COM+应用程序会新增一项,下图所示:
5、点击鼠标右键,选取菜单,新建-〉组件,下图所示
选择安装新组件,选择FPCom.dll,然后完成安装。
5ZKOnline.ocx控件参考
ZKOnlineSDK前台浏览器使用ActiveX插件ZKOnline.ocx,其中接口属性和方法在以下综合说明。
以下都采用VB语法说明。
1属性
1.1VerifyCountAsLong
设置验证指纹重试次数,调用Verify方法是使用。
1.2RegisterTemplateAsString
调用方法Register时,若指纹登记成功,则保存当前指纹登记模板,登记失败则为空。
另外,在调用Verify进行指纹比对时,RegisterTemplate存放要比对的登记模板。
1.3VerifyTemplateAsString
调用方法GetVerTemplate成功时,保存指纹比对模板,获取失败时为空。
1.4ThresholdAsLong(1:
N)
设定指纹识别系统比对识别阀值分数(1-100),默认为10,值越大,误判率越低同时拒绝率变大
注意:
1:
1控件没有这个属性
1.5OneToOneThresholdAsLong(1:
N)
设定Biokey低速指纹1:
1比对的识别阀值分数(1-100),默认为10,值越大,误判率越低同时拒绝率变大
注意:
1:
1控件没有这个属性
1.6CheckFingerAsString(1:
N)
设定指纹界面已登记手指的标志。
长度为10,格式为XXXXXXXXXX其中X为0或者1,0表示未登记,1表示已登记
每一字符从左到有代表1:
左小指;2:
左无明指;3:
左食指;4:
左中指;5:
左大拇指;6:
右大拇指7:
右中指;8:
右食指;9:
右无名指;10:
右小指
注意:
1:
1控件没有这个属性
1.7EnrollCountAsLong(1:
N)
调用方法GetVerTemplate成功时,保存指纹比对模板,获取失败时为空。
注意:
1:
1控件没有这个属性
1.8DefaultRegFingerAsLong(1:
N)
设置调用Regsiter方法进行指纹登记时手指序号,具体序号请参考CheckFinger属性。
注意:
1:
1控件没有这个属性
1.9DefaultWindowCloseAsLong(1:
N)
设置指纹比对界面自动关闭的时间,单位为秒。
注意:
1:
1控件没有这个属性
2方法
2.1FunctionRegisterAsBoolean
开始登记指纹,登记成功时返回True,登记失败返回False,RegisterTemplate保存当前的指纹登记模板。
2.2FunctionGetVerTemplateAsBoolean
获得指纹比对模板,提交到后台服务器进行比对,主要配合后台比对使用,提取成功返回True,失败返回False。
2.3FunctionVerifyAsBoolean
获取指纹比对模板然后进行比对指纹,调用之前必须设置属性RegisterTemplate为需要比对的指纹登记模板,比对成功返回True,失败返回False。
2.4FunctionMatchFinger(ARegTemplateAsString,AVerTemplateAsString)AsBoolean
比对指纹模板,ARegTemplate是登记模板,AVerTemplate是比对模板,比对成功返回True,失败返回False。
2.5FunctionGetRegFingerTemplate(AFingerOrderAsLong)AsString(1:
N)
得到已经登记成功的指纹模板,AFingerOrder是指纹手指顺序,参考属性CheckFinger,已登记手指返回模板字符串,未登记手指返回空字符串。
2.6SubSetVerHint(AHintAsString)(1:
N)
设置指纹比对界面的窗口。
2.7functionEncodeTemplate1(ASour)AsString(1:
N)
将控件使用的Variant模板ASour转换为BASE64格式的模板字符串。
参考方法EncodeTemplate1
2.8functionDecodeTemplate1(constASourAsString)AsVariant(1:
N)
将BASE64格式的模板字符串ASour转换为控件使用的Variant类型模板。
参考方法DecodeTemplate1
2.9functionCompressTemplate(constATemplateAsString)AsVariant(1:
N)
将BASE64格式的模板字符串ATemplate转换为Variant类型模板。
注意:
Variant类型模板主要为了兼容旧开发包模板
2.10functionMatchFingerAsVariant(constARegTemplateAsString,AVerTemplateAsString)AsBoolean(1:
N)
比对两个Variant类型指纹模板。
备注说明:
1:
N插件的登记和比对方法支持语音提示,具体对应语音文件如下(请将语音文件拷贝到系统目录下):
等待按压手指
waitfor.wav
移开手指
Acquired.wav
登记成功
RegSuc.wav
登记失败
RegFail.wav
验证通过
v-ok.wav
系统默认包含上面五个语音文件。
使用下面代码嵌入到网页中:
A318A9AC-E75F-424C-9364-6B40A848FC6B"width=20height=20id=zkonline>
classid="clsid:
A318A9AC-E75F-424C-9364-6B40A848FC6B"
codebase="ZKOnline.ocx"
width=20height=20
6后台服务器端指纹比对
后台服务器比对根据WEB服务器和使用的后台脚本语言不同,ZKOnlineSDK提供COM+组件(FPCom.dll)和DLL库(Match.dll)两种方式。
1IIS+ASP
对于后台使用IIS+ASP开发环境,调用COM+组件对象FPCom.FPProcess进行比对,请首先注册COM+组件FPCom.dll,参考原型代码如下:
SetfpProcess=Server.CreateObject("FPCom.FPProcess")
iffpProcess.Process(objRec("fingertemplate"),fingertemplate)then
fingerpass=true
endif
SetfpProcess=Nothing
FPCom.FPProcess对象说明:
1.1方法
Functionprocess(ARegTemplateAsString,AVerTemplateAsString)AsBoolean
比对指纹模板,ARegTemplate是登记模板,AVerTemplate是比对模板,比对成功返回True,失败返回False。
1.2属性
(1)ThresholdAsLong
设定指纹识别系统比对识别阀值分数(1-100),默认为10,值越大,误判率越低同时拒绝率变大
注意:
1:
1没有这个属性
(2)OneToOneThresholdAsLong
设定Biokey低速指纹1:
1比对的识别阀值分数(1-100),默认为10,值越大,误判率越低同时拒绝率变大
注意:
1:
1没有这个属性
2其它WEB服务器和脚本语言
通过DLL库方式解决后台比对的问题,如果后台服务器和脚本语言直接支持调用DLL库,则调用DLL库输出函数process进行比对,或者可以通过其它方式,例如,利用Java与DLL进行通讯技术按照一定的逻辑包装成java类,提供给JSP或者JAVA调用。
DLL库输出Process方法原型描述(stdcall方式):
(1)Functionprocess(ARegTemplateAsString,AVerTemplateAsString)AsBoolean
比对指纹模板,ARegTemplate是登记模板,AVerTemplate是比对模板,比对成功返回True,失败返回False。
(2)SubSetThreshold(AThresholdAsLong,AOneToOneThresholdAsLong)
设置比对指纹模板的阀值。
AThreshold设定指纹识别系统比对识别阀值分数(1-100),默认为10,值越大,误判率越低同时拒绝率变大
AOneToOneThreshold设定Biokey低速指纹1:
1比对的识别阀值分数(1-100),默认为10,值越大,误判率越低同时拒绝率变大
注意:
1:
1没有这个方法