序列号查询
您现在的位置:首页 > 常见问题

目录

一、概述?
二、常见问题问答?
1、脱机SDK触发事件前需要注册?
2、脱机SDKONATTTRANSACTION事件无法及时触发问题?
3、脱机SDK函数使用错误导致读到脏数据?
4、脱机SDK是否能够用于WEB开发?
5、脱机SDK能否上传考勤记录?
7、脱机SDK连接设备后是否一直不中断的问题?
8、脱机SDK TCP/IP通讯连接之后是否会超时?
9、脱机SDK动态生成SDK控件?
10、脱机SDK开发时ONDOOR事件无法触发?
11、脱机SDK关于上传用户信息时上传用户卡号的问题?
12、脱机SDK能够通过卡号获取工号?
13、脱机SDK 网络状况差导致数据丢失?
14、脱机SDK通过TCP/IP协议与机器连接失败?
15、脱机SDK忘记IP地址后能否找回?
16、脱机SDK写入卡信息?
17、脱机SDK下载的考勤记录数据不正确?
18、脱机SDK编写软件是否可以抓取指纹机的图像?
19、脱机SDK上传用户信息的具体过程?
20、脱机SDK从机器中下载用户指纹模板的过程?
21、脱机SDK中的函数SETUSERINFO密码参数设为空?
22、ICLOCK100没有标配定时喇叭响铃也不支持短消息?
23、ZKFINGER普通版和标准版的区别?
24、普通版的ZKFINGER SDK和指纹仪的对应?
25、普通版ZKFINGER SDK的授权许可问题?
26、ZK系列指纹仪使用的SDK?
27、ZKFINGER SDK中降低误判率的参数?
32、ZKFINGER SDK用于WEB开发无法触发某些事件?
33、ZKFINGER SDK的控件被杀毒软件当作病毒?
34、ZKONLINE SDK所支持的指纹仪?
35、固件升级是否需要收费?

一、概述

1.本文档所涉及的SDK技术问题包含中控目前主要的三种SDK,脱机SDK,ZKFinger SDK,ZKOnline SDK。

2.本文档中所涉及的问题不仅仅包括上述三种SDK,也包括与之相关的技术问题,比如固件、SDK与机器通信涉及到的机器操作、指纹仪、指纹仪与ZKFinger的通信涉及到的技术问题等等。

3.本文档所涉及到的DEMO或者软件案例,大多为VB、Delphi、C#、VC++,此外也包含使用java的特殊情况。SDK本身并不支持Java。

4.本文档中有些表述可能不太清楚,出现错误的地方在所难免,欢迎大家一起讨论,宝贵意见请Email至wjfen@zksoftwa。

 

二、常见问题

*********

1脱机SDK触发事件前需要注册

Q:客户自己开发软件,使用我们的指纹机,连接设备后在没有进行其他操作前,按压指纹,用户指纹验证通过后,没有触发OnAttTransaction事件(其他事件像OnFinger,OnVerify也没有触发)。

A:这种情况下提示客户使用在机器连接后调用RegEvent()函数,如果未调用此函数,那么所有的事件都不会触发。

2脱机SDKOnAttTransaction事件无法及时触发问题

Q:客户使用C#语言,软件使用vs2008,开发系统为vista(32位,实际上装了我们支持64位的控件才能用),Demo连接机器后,如果不进行其他操作,直接按压指纹,OnFinger、OnVerify事件均可触发,如果验证通过,那么OnAttTransaction事件也可以触发。但是如果连接后先进行下载考勤记录或者调用其他数据传输量相对大的函数后,将无法触发上述几个事件,断点跟踪后发现,如果此时点“断开”按钮,或者按刚才进行操作的按钮(也或者其他可能的按钮),那么代码会执行上述几个事件对应的代码。

A:让客户在窗体(Form)中加入一个计时器,然后调用ReadRTLog()和GetRTLog()两个函数。让程序定时主动去找机器“要”数据。

3脱机SDK函数使用错误导致读到脏数据

Q:客户通过自己开发的软件读取到的数据(考勤记录,用户信息等)为脏数据,比如时间不对,考勤记录一条变多条等等。

A:遇到这种问题就需要考虑客户是否在使用彩屏机,然后并没有使用我们的彩屏机专用的函数,如果函数使用错误,是会读到脏数据的。

4脱机SDK是否能够用于Web开发

Q:客户使用C#语言开发,询问脱机SDK是否能够用于Web开发。

A:不能,我们的脱机SDK主要用于与脱机的机器进行通讯,并不支持Web开发,我们的ZKOnline SDK支持Web,不过它是关于指纹比对算法在Web上的应用的。

5脱机SDK能否上传考勤记录

Q:能否通过我们的脱机SDK开发软件上传考勤记录(或者通过U盘上传),客户用来反复调试程序用。

A:不能,通过脱机SDK只能下载考勤记录,不能上传考勤记录。

 

6、脱机SDK将算法9.0机器中的指纹模板上产到10.0机器中能否使用。

Q:将算法9.0机器中的指纹模板上产到10.0机器中能否使用。

A:两种算法的指纹模板不能兼容,所以不能使用。9.0算法的指纹模板大概有608B(每个),10.0算法的指纹模板大概有1.2KB(每个)。

7、通过脱机SDK连接设备后是否一直不中断的问题

Q:通过我们的脱机SDK开发的软件连接设备后,连接会不会一直中断?

A:从软件角度来看,不会。但是如果外部条件发生变化,比如硬件或者其他人为、非人为

因素可能导致连接中断。

8、脱机SDK TCP/IP通讯连接之后是否会超时

Q:客户使用脱机SDK进行开发,通讯方式为TCP/IP,和机器连接之后过段将无法下载到数据(比如客户定时下载考勤记录),是否是因为应用程序和机器连接后过段时间会自动断开。

A:不会,可能是由于其他外部条件造成的连接中断,也有可能是应用程序本身的问题。

9、脱机SDK动态生成SDK控件

Q:如果我现在用脱机SDK写程序,同时连接多台机器,那么是否需要拖n(n为机器个数)个控件到窗体中呢?你们的控件能够动态生成(开发语言VB)?

A:可以。如果拖n个控件到窗体中的话,太多控件会导致程序运行缓慢。所以还是采用动态生成控件的形式来与机器建立连接。类似于我们门禁机里轮巡的概念,客户可以根据自己机器的数量进行编程。这种方法也适用于没有前台的程序,因为这种情况下只能动态生成。

10、脱机SDK开发时OnDoor事件无法触发

Q:客户使用脱机SDK(开发语言VC),OnDoor事件无法触发。客户使用门禁机F7。

A:发给客户我们的门禁机的demo,如果我们的demo中OnDoor事件触发正常,则让客户检查自己的程序。如果我们的demo中OnDoor事件没有触发,那么可能是由于用户门禁机的接线等各种外部因素造成的,请客户按照我们的说明书等文档进行检查。

11、脱机SDK关于上传用户信息时上传用户卡号的问题

Q:客户使用脱机SDK时,无法使用开发手册中的Cardnumber属性。

A:我们的开发手册中提到的Cardnumber属性实际上我们现行的SDK控件中并没有封装。建议可以使用Set_cardnumber函数或者SetStrCardNumber(开发手册中没有),其作用和开发手册中提及的Cardnumber属性相同。

12、脱机SDK能够通过卡号获取工号

Q:能否同时使用函数GetUserInfoByCard(结合set_cardnumber使用)来获取员工的工号,即通过卡号获取工号?

A:不能!我们通过卡号只能得到用户的姓名,却无法得到用户的工号。客户可以通过编写应用程序,通过对数据库的操作来实现相关的功能。

13、脱机SDK 网络状况差导致数据丢失

Q:我们自己开发软件来管理我们的考勤机,我们的局域网也比较大(距离也很远),相距比较远的考勤机网络不太好,然后会出现数据丢包现象(比较近的没什么问题)。怎么解决?

A:这种现象来看,通过我们的脱机SDK开发的软件是没问题的。主要问题在于您的网络,如果问题要解决,是必须要改善远端考勤机的网络状况才行的。

14、脱机SDK通过TCP/IP协议与机器连接失败

Q:使用脱机SDK通过TCP/IP协议与机器进行连接时,一直连接不上。

A:由于Connect_net()函数比较简单,一般来讲参数不会用错。这种情况下,主要是引导客户检查与网络连接相关的问题。比如,电脑和机器的连接方式,通过电脑是否能够ping通机器的IP地址,是否使用路由器或者集线器,如果是直接相连是否使用交叉线,机器和电脑ip是否存在相同网段(电脑多网段的情况下)。

15、脱机SDK忘记IP地址后能否找回

Q:机器一侧的复位键是否能够改变IP地址?如果我们把键盘取掉,那么一旦忘记IP,如何能够找回?能够通过脱机SDK找回。

A:复位键不能改变IP地址。键盘取掉后无法通过键盘是恢复出厂设置,而由于无法得知IP地址,也就无法连接设备,故不能通过软件恢复出厂设置,所以无法找回IP地址,可以建议客户开始时将IP地址在机器里“写死”,然后在机器外壳贴相应的标签,标签上注明IP地址和机器的编号,这样子就可以避免修改IP后忘记IP地址的情况。

16、脱机SDK写入卡信息

Q:客户使用vb.net开发。使用我们的脱机SDK无法写入卡信息(cardnumber)。

A:可能是客户在使用函数的时候,没有设置ID卡号,就直接用函数SetUserInfo()。在使用函数SetUserInfo()前,必须先上传ID卡号(比如使用函数set_cardnumber)。

17、脱机SDK下载的考勤记录数据不正确

Q:我们使用M300机器,使用一段时间后发现通过我们的脱机SDK开发的软件下载考勤记录中多了一些多余的不该有(也不会有)的记录,验证状态中也多了一些密码验证(实际上员工都不知道密码),请问是我们软件问题吗?(固件版本号Ver 6.20 Aug 12 2008,并非主流固件的版本号,客户机器是在市场上买的并没有做定制)

A:这个问题首先要排除是否是我们SDK开发出来的软件的问题,排除的方式是用我们的考勤软件读取机器的数据,如果数据正常,则是客户开发软件的问题,反之,则是由于机器的问题,一般情况下是固件的问题,可以考虑给客户升级下我们的主流固件(如果客户使用的功能只是我们机器标配中的功能),问题一般都可以解决。

18、脱机SDK编写软件是否可以抓取指纹机的图像

Q:使用脱机SDK编写软件是否可以抓取指纹机的图像?

A:可以。跟考勤软件中的功能类似。(尽管我们的开发手册中说函数CaptureImage仅适用于zem100,实际上其他核心板的机器也是可以使用的)

19、脱机SDK上传用户信息的具体过程

Q:脱机SDK上传用户信息的具体过程是什么?

A:假设现在有两个用户(设为A、B),每个用户有一个指纹模板(Ta,Tb),现在需要将他们传到指纹机中去。如果是普通的上传方式,那么先将用户A的信息读入缓存中,然后读入用户A的指纹模板Ta,此时将A的用户信息和Ta从缓存中上传到机器中,然后再将B的用户信息读入缓存中,然后读入用户B的指纹模板Tb,此时将B的信息和Tb从缓存中上传到机器中,至此整个上传过程结束。如果是批量上传方式(也就是通常所说的高速上传),则是那么先将用户A的信息读入缓存中,然后读入用户A的指纹模板Ta再将B的用户信息读入缓存中,然后读入用户B的指纹模板Tb,此时将A的信息和Ta以及B的信息和Ta从缓存中一次性上传到机器中,至此整个上传过程结束。(涉及函数:SetUserInfo(),SetUserTmp(),BeginBatchUpdate(),BatchUpdate())

20、脱机SDK从机器中下载用户指纹模板的过程

Q:脱机SDK从机器中下载用户指纹模板的过程是怎样的?

A:首先使用函数ReadAllUserID将所有用户信息(编号、姓名、密码不包含指纹)读取到

内存中。然后使用函数ReadAllTemplate将所有用户的指纹模板读到内存中,再使用函数GetUserInfo和GetUserTmp获取用户信息(包含指纹模板)。

21、脱机SDK中的函数SetUserInfo密码参数设为空

Q:SetUserInfo这个函数的的话,是表示密码为空还是不能使用密码验证?(天津合佳威立雅)

A:是不能使用密码验证。

22Iclock100没有标配定时喇叭响铃也不支持短消息

Q:为什么我用脱机SDK使用定时响铃(喇叭)和设置短消息的功能,均不能成功,调试程序时返回值均为空。是不是跟我的参数类型不对有关?(客户使用PB编程,机器为iClock100)。

A:iclock100,是iclock系列中唯一没有标配定时喇叭响铃的,但是可以定制。而短消息的功能则是iclock系列中唯一不支持该功能的。遇到这种情况,实现问清楚客户使用的机器型号,然后查看《产品功能总表》,这样更有利于解决问题。

 

★★★★★

23ZKFinger普通版和标准版的区别

Q:ZKFinger普通版和标准版有什么区别吗?

A:首先是价格上的差异,标准版比普通版价格贵(具体价格需联系商务)。在两个版本的函数构成中标准版比普通版多了一个函数AddImage(),但是如果这个函数不使用的话,那么二者则没有区别。另外,普通版是通过在购买指纹仪时在指纹仪中写入SDK的许可来授权客户使用我们的SDK的,这就是我们常说的一对一(指纹仪和SDK之间的1对1)。而标准版则可以用于所有写入授权的指纹仪。

24、普通版的ZKFinger SDK和指纹仪的对应

Q:我购买了一个uru4000B指纹仪和普通版的ZKFinger SDK,如果我现在再购买标准版的后,我以前的指纹仪是否可以使用?

A:由于前面购买的指纹仪已经写入授权许可,所以它是可以用于我们的标准版ZKFinger SDK的。

24、普通版ZKFinger SDK的授权许可问题

Q:我购买了一个uru4000B指纹仪和普通版的ZKFinger SDK进行开发使用,如果开发完毕后,原来的指纹仪需要留下继续做研发用,而给客户新购置指纹仪,应该是可以使用的吧?

A:可以。在这种情况下,购买普通版和标准版的区别主要在于,前者在购置新的指纹仪的情况下,需要多支付授权许可的费用(具体费用,商务决定)。

25ZK系列指纹仪使用的SDK

Q:ZK5000,ZK6000,ZK7000的指纹仪对应的SDK相同吗?

A:这三类指纹仪和包括uru在内的指纹仪,所使用的SDK均为与指纹识别算法有关的ZKFinger SDK或者用于Web的ZKOnline SDK。

26ZKFinger SDK中降低误判率的参数

Q:(使用ZKFinger SDK)有的人的手指会脱皮的,或者指纹不太清晰,这种情况下,U.are.U

4000B(实际上是我们的识别算法)好像很难识别出来,控件中有没有什么参数可以提高识别率。

A:通常情况下,我们的算法是可以识别那些疑难指纹的。客户也可以根据需要修改相关参数,比如1:1比对中的OneToOneThreshold ( Bool)设定ZKFinger低速指纹1:1比对的识别阀值分数(1-100),默认为10,值越大,误判率越低同时拒绝率变大。1:n比对中Threshold (Long)设定指纹识别系统比对识别阀值分数(1-100),默认为10,值越大,误判率越低同时拒绝率变大。

 

28ZKFinger无法使用AddImageFile函数

Q:客户购买了ZKFinger4.0,想用AddImageFile函数指定的图像文件来登记或者比对,但是找不到该函数,无法使用。

A:客户使用的可能是我们的ZKFinger普通版,该函数只有在普通版中无法使用,在其他版本(标准版、社保版、高级版)中都可以使用,建议客户购买更高版本的SDK。

 

29ZKFinger采集到的指纹模板上传到脱机考勤机中比对无法通过。

Q:客户使用ZKFinger SDK通过uru指纹仪采集到的指纹模板上传到我们的考勤机中比对时无法通过。

A:可能是因为指纹模板没有进行转换造成的。有ZKFinger采集到的指纹模板必须通过脱机SDK中的函数FPTempConvertNew(或者FPTempConvertNewStr)将其转换为脱机指纹机可以使用的指纹模板。

 

30、多次采集同一个手指的指纹模板转换成字符串后是否相等。

Q:客户使用ZKFinger将指纹仪采集到的指纹模板与数据库里的指纹模板比对验证,是否可以直接比对字符串是否相等即可。

A:同一个指纹多次按压时,一般转换生成的指纹模板字符串不尽相同,所以是不能通过比较数据库中对应的字符串是否相等来判断比对是否通过的。字符串不相等的两个指纹模板在比对时也有可能成功,因为其可能来自同一个手指。

 

31、能否缩减采集到的指纹模板所对应的字符串字符数到十一位。

Q:客户询问能否缩减采集到的指纹模板所对应的字符数到十一位,以利于比对。

A:不能。答案同上。

32ZKFinger SDK用于Web开发无法触发某些事件

Q:客户使用ZKFingerSDK用于B/S架构下的开发,无法触发OnCapture,OnEnroll事件。

A:原因可能有,控件版本较低,然后也可能没有取得授权许可。客户使用ZKFingerSDK用于Web开发,但我们可以跟客户推荐我们的ZKOnline SDK(或者SOAP SDK)。

33ZKFinger SDK的控件被杀毒软件当作病毒

Q:我们在给客户装ZKFinger SDK的控件时,诺顿把控件当作病毒杀了,怎么办?

A:可能是控件在拷贝的过程中中毒,更换一个新控件。

 

★★★★★

34ZKOnline SDK所支持的指纹仪

Q:客户先前使用我们的ZKOnline SDK开发的程序,使用我们的uru指纹仪,现在如果换成ZK6000或者ZK7000是否支持。

A:支持。

35、固件升级是否需要收费

Q:如果需要给客户机器中的固件升级是否需要收费?

A:如果是客户增加新的功能(比如5位码变九位码等),那么请客户联系商务,然后下定制申请单。如果是为了解决客户问题而给客户升级固件,则不需要收费。有些客户的问题需要通过固件升级来排除是否是SDK使用出现错误。

 

36,黑白屏和彩屏设备SDK接口是否一致。

问:我以前用的是旧的黑白屏的机器,软件是我公司自行开发的软件,现在我需要新购买一批设备,但是我发现新购买的机器,不能搭配我以前的软件使用。

答:接口是一致的,都用的是同一个开发包。请在我们官方网站上下载中心中下载相应的最新开发包。另外:黑白屏和彩屏的函数使用不一致,需要重新做软件接口。彩屏机使用的是SSR扩展函数。

 

37 ,几种开发包的介绍,以及区别

脱机通讯开发包

收费情况:免费

机器型号:除K6和M100以外的所有机器。

开发平台:只支持windows平台

开发语言:VB、Delphi、VC、PB、VF等

功能简介:客户购买了脱机指纹/射频卡机器,但是不想使用我们标配的考勤/门禁软件时,可以推荐客户选用此SDK开发他们自己的考勤/门禁软件。只用于脱机机器与电脑之间的数据通讯,不可进行指纹识别。

获取方法:进入“中控网站->下载中心->脱机指纹考勤系统->脱机考勤通讯开发包”下载

 

 

 

ZKFinger SDK

收费情况:收费

机器型号:URU指纹仪,ZK6000

开发平台:Windows 平台、Linux平台可定制

开发语言:VB、Delphi、VC、PB、VF

功能介绍:客户想自行开发指纹比对程序时,可以选择此SDK,它包含中控科技自主知识产权的指纹识别算法。另外需要购买我们的指纹仪或使用他们自己的指纹采集仪进行指纹图像的采集。

获取方法:开销售单到库房领光盘

备注:共有两个版本(普通版和标准版),其区别为:

1、对指纹仪的SDK许可收费不同。配合此SDK使用的指纹仪必须由我们写入SDK许可。购买普通版SDK的客户,他们每购买一个指纹仪就需要收取一次许可费,而购买标准版SDK的客户,购买指纹仪时免收许可费用。

2、基本的登记、比对功能都一样,唯一的区别是标准版SDK在1:1的控件中包含从图像中提取模板的功能,普通版则没有。也就是说标准版可以支持其他指纹仪采集的图像功能。

 

ZKOnline SDK

收费情况:收费

机器型号:URU指纹仪,ZK6000

开发平台:Windows 平台

开发语言:ASP,JSP,PHP,JAVA

功能介绍: ZKFinger SDK的补充,由于ZKFinger SDK不支持基于web开发,客户需要在浏览器中使用指纹的本地及远程比对,可推荐ZKOnline SDK。其实ZKFinger SDK和ZKOnline SDK是隶属于的关系。只有购买了ZKFinger SDK(标准版8000元)的客户,再购买ZKOnline SDK(2000元)才能开发基于WEB的程序。如果没有购买过ZKFinger SDK

的客户则需要ZKFinger SDK加ZKOnline SDK(8000+2000元)。

获取方法:开销售单到库房领光盘

问:我们URU? SDK? 是否支持FOXpro

答:不支持。

 

注:

1-22主要涉及脱机SDK。23-33主要为ZKFinger和指纹仪相关的。34和35则涉及ZKOnline和SDK技术支持中可能涉及到的固件升级问题。

 

 

 

 

中控科技版权所有

 


网站导航  |  使用条款  |  隐私声明  |  人才招聘  |  会员中心  |  中控智慧学院  |  联系我们     
版权所有 © 中控科技 粤ICP备13004468号 技术支持:中企动力
Copyright 2013 www.zkteco.com All Rights Reserved