Development Manual for Communication Development Kit of ZK Offline Serial Products
1
CATALOG 1.
DESCRIPTION OF THE OFFLINE DEVELOPMENT KIT ..................................................................................... 1
2.
SDK INSTALLATION .................................................................................................................................................... 2 3.1 FILE DIRECTORY ............................................................................................................................................................... 2 3.2 HOW TO INSTALL THE PRODUCT ........................................................................................................................................ 2
3.
FUNCTION ...................................................................................................................................................................... 2 3.1 DATA MANAGEMENT ........................................................................................................................................................ 2 3.1.1 BackupData............................................................................................................................................................... 2 3.1.2 RestoreData............................................................................................................................................................... 3 3.1.3 ClearAdministrators .................................................................................................................................................. 3 3.1.4 ClearAdministrators .................................................................................................................................................. 3 3.1.5 ClearGLog................................................................................................................................................................. 4 3.1.6 ClearSLog ................................................................................................................................................................. 4 3.1.7 DeleteEnrollData....................................................................................................................................................... 4 3.1.8 DelUserTmp.............................................................................................................................................................. 5 3.1.9 FPTempConvertNew................................................................................................................................................. 6 3.1.10 FPTempConvertNewStr .......................................................................................................................................... 6 3.1.11 FPTempConvertStr.................................................................................................................................................. 7 3.1.12 FPTempConvert ...................................................................................................................................................... 8 3.1.13 GetPIN2 .................................................................................................................................................................. 8 3.1.14 GetUserInfo............................................................................................................................................................. 8 3.1.15 SetUserInfo ............................................................................................................................................................. 9 3.1.16 GetUserIDByPIN2 ................................................................................................................................................ 10 3.1.17 GetFPTempLengthStr ........................................................................................................................................... 10 3.1.18 GetUserInfoByPIN2.............................................................................................................................................. 11 3.1.19 GetUserInfoByCard .............................................................................................................................................. 11 3.1.20 GetSMS................................................................................................................................................................. 12 3.1.21 SetSMS ................................................................................................................................................................. 12 3.1.22 GetEnrollDataStr................................................................................................................................................... 13 3.1.23 SetEnrollDataStr ................................................................................................................................................... 14 3.1.24 GetGeneralLogDataStr.......................................................................................................................................... 14 3.1.25 GetUserTmpStr ..................................................................................................................................................... 15 3.1.26 SetUserTmpStr...................................................................................................................................................... 16 3.1.27 GetAllUserInfo...................................................................................................................................................... 16 3.1.28 GetUserTmp.......................................................................................................................................................... 17 3.1.29 SetUserTmp .......................................................................................................................................................... 18 3.1.30 GetAllUserID ........................................................................................................................................................ 18 3.1.31 GetBackupNumber................................................................................................................................................ 19 3.1.32 GetFPTempLength ................................................................................................................................................ 19 3.1.33 GetSuperLogData.................................................................................................................................................. 20 3.1.34 GetAllSLogData.................................................................................................................................................... 22 3.1.35 GetAllGLogData................................................................................................................................................... 22 3.1.36 GetEnrollData ....................................................................................................................................................... 23 3.1.37 SetEnrollData ........................................................................................................................................................ 24 3.1.38 ModifyPrivilege .................................................................................................................................................... 24 1
3.1.39 PINWidth .............................................................................................................................................................. 25 3.1.40 ReadSuperLogData ............................................................................................................................................... 25 3.1.41 ReadAllSLogData ................................................................................................................................................. 25 3.1.42 ReadGeneralLogData............................................................................................................................................ 26 3.1.43 ReadAllGLogData ................................................................................................................................................ 26 3.1.44 ReadAllTemplate .................................................................................................................................................. 26 3.1.45 RefreshData........................................................................................................................................................... 27 3.1.46 ReadAllUserID...................................................................................................................................................... 27 3.2 ACCESS CONTROL........................................................................................................................................................... 27 3.2.1 ACUnlock ............................................................................................................................................................... 27 3.2.2 EnableUser.............................................................................................................................................................. 28 3.2.3 GetUserTZs............................................................................................................................................................. 28 3.2.4 SetUserTZs ............................................................................................................................................................. 29 3.2.5 GetUserGroup ......................................................................................................................................................... 29 3.2.6 SetUserGroup.......................................................................................................................................................... 30 3.2.7 GetACFun ............................................................................................................................................................... 30 3.2.8 GetTZInfo ............................................................................................................................................................... 31 3.2.9 SetTZInfo ................................................................................................................................................................ 31 3.2.10 GetUnlockGroups ................................................................................................................................................. 32 3.2.11 SetUnlockGroups .................................................................................................................................................. 32 3.2.12 GetGroupTZs ........................................................................................................................................................ 32 3.2.13 GetGroupTZStr ..................................................................................................................................................... 33 3.2.14 GetGroupTZStr ..................................................................................................................................................... 33 3.2.15 SetGroupTZStr...................................................................................................................................................... 34 3.2.16 GetUserTZStr........................................................................................................................................................ 34 3.2.17 SetUserTZStr ........................................................................................................................................................ 35 3.3 MACHINE OPTIONS ......................................................................................................................................................... 35 3.3.1 Beep ........................................................................................................................................................................ 35 3.3.2 ClearLCD................................................................................................................................................................ 36 3.3.3 Connect_Com ......................................................................................................................................................... 36 3.3.4 Connect_Net ........................................................................................................................................................... 36 3.3.5 DisableDeviceWithTimeOut ................................................................................................................................... 37 3.3.6 Disconnect............................................................................................................................................................... 37 3.3.7 EnableDevice .......................................................................................................................................................... 38 3.3.8 EnableClock............................................................................................................................................................ 38 3.3.9 GetDeviceStatus...................................................................................................................................................... 38 3.3.10 GetDeviceInfo....................................................................................................................................................... 39 3.3.11 GetWiegandDefine................................................................................................................................................ 41 3.3.12 GetDeviceIP .......................................................................................................................................................... 41 3.3.13 SetDeviceIP........................................................................................................................................................... 41 3.3.14 GetDeviceMAC .................................................................................................................................................... 42 3.3.15 GetDeviceTime ..................................................................................................................................................... 42 3.3.16 GetSerialNumber .................................................................................................................................................. 43 3.3.17 GetProductCode .................................................................................................................................................... 43 3.3.18 GetFirmwareVersion ............................................................................................................................................. 43 3.3.19 GetSDKVersion..................................................................................................................................................... 44 3.3.20 PowerOnAllDevice ............................................................................................................................................... 44 3.3.21 PowerOffDevice.................................................................................................................................................... 44 2
3.3.22 PlayVoiceByIndex................................................................................................................................................. 45 3.3.23 QueryState............................................................................................................................................................. 45 3.3.24 RestartDevice ........................................................................................................................................................ 45 3.3.25 SetDeviceInfo........................................................................................................................................................ 46 3.3.26 SetDeviceTime...................................................................................................................................................... 46 3.3.27 SetDeviceTime2.................................................................................................................................................... 47 3.3.28 SetDeviceMAC ..................................................................................................................................................... 47 3.3.29 SetWiegandDefine ................................................................................................................................................ 48 3.3.30 SetCommPassword ............................................................................................................................................... 48 3.3.31 UpdateFirmware.................................................................................................................................................... 48 3.3.32 WriteLCD.............................................................................................................................................................. 49 3.4 OTHERS .......................................................................................................................................................................... 49 3.4.1 CaptureImage .......................................................................................................................................................... 49 3.4.2 CancelOperation...................................................................................................................................................... 50 3.4.3 GetLastError ........................................................................................................................................................... 50 3.4.4 StartVerify ............................................................................................................................................................... 51 3.4.5 StartEnroll ............................................................................................................................................................... 51 3.4.6 StartIdentify ............................................................................................................................................................ 52
4.
SOLUTIONS TO FREQUENTLY ASKED QUESTIONS, FAQ.......................................................................... 52 4.1 How to download attendance record ....................................................................................................................... 52 4.2 How to create user online ........................................................................................................................................ 52 4.3 Data import and download for U disk ..................................................................................................................... 53 4.4 BIOKEY collect fingerprint template and write in offline .................................................................................... 53 4.5 Get all the information of all users .......................................................................................................................... 53 4.6 Machine connection ................................................................................................................................................. 53 4.7 Password is unusable after SetUserInfo .................................................................................................................. 53 4.8 Conversion from Online template to offline template ........................................................................................... 53 4.9 Demo program cannot connect the machine .......................................................................................................... 54 4.10 Offline fingerprint machine is in the operation mode after connection .............................................................. 54 4.11 Details are needed to be paid attention to when complex font letters are written in offline fingerprint machine ......................................................................................................................................................................................... 54
5.
AFTER-SALES SERVICE FOR SOFTWARE ....................................................................................................... 55
3
1. Description of the Offline Development Kit Offline Communication Development Kit is an interface program for data communication with an offline fingerprint machine. It is a development kit that can be easily used to manage user information & fingerprints and to download cardpunch logs on offline fingerprint machine as well as to manage settings and configuration for access control. Main features: 1. Download cardpunch logs on fingerprint machine. 2. Download and upload user information, card information and fingerprints. 3. Set fingerprint access control machine. 4. Configurations, such as setting time of offline fingerprint machine and matching threshold. 5. Excite real time the events of offline fingerprint machine such as pressing fingerprint, verifying and approving, etc. (pending perfection). 6. It can be used to set Message (available for the model with expressly description).
1
2. SDK Installation 3.1 File Directory 1 2 3
3.2 How to install the product Copy all dll files to system directory under System32. Click Start to run regsvr32 zkemkeeper.dll, and insert the Control into the development tool by easily moving to make it usable at once after successfully register. Instruction C Language syntax is applied to illustrate function Protocol, vb syntax applied to exemplify the function features. A function is categorized based on its feature. For example: CZKEM1 is the name of Control, machineNumber defined as a machine No., and SDK is the default offline development kit.
3. Function 3.1 Data Management 3.1.1 BackupData [Protocol] VARIANT_BOOL BackupData([in] BSTR DataFile) [Feature] Save user information, fingerprint and log as files.
[Parameter Declaration] DataFile The path name for saving file may be expressed with disk drive letter such as “c:\aaa.bak”. [Returned Value] Return True for success, or otherwise False. [Example] Dim dataFile dataFile = "c:\AAA.bak" 2
CZKEM1.BackupData dataFile [Instruction] This function can be available with RestoreData.
3.1.2 RestoreData [Protocol] VARIANT_BOOL RestoreData([in] BSTR DataFile) [Feature] Restore machine data from a backup file. [Parameter Declaration] DataFile Data file refers to the backup data file under function BackupData such as c:\xxx. [Returned Value] Return True for success, or otherwise False. [Example] Dim dataFile dataFile = "c:\AAA.bat" CZKEM1.BackupData dataFile [Instruction] Normal serial-port communication usually takes more time while restoring machine data using the function.
3.1.3 ClearAdministrators [Protocol] VARIANT_BOOL ClearAdministrators([in] LONG dwMachineNumber) [Feature] Clear the access permission of all administrators. [Parameter Declaration] dwMachineNumber Number of a machine to be operated [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.ClearAdministrators MACHINENUMBER [Instruction] This function is used to delete administrator’s access permission only and not to delete a corresponding user (administrator is a special user).
3.1.4 ClearAdministrators [Protocol] VARIANT_BOOL ClearAdministrators([in] LONG dwMachineNumber) 3
[Feature] Clear all data in offline fingerprint machine. [Parameter Declaration] dwMachineNumber Number of a machine to be operated [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.ClearKeeperData MACHINENUMBER [Instruction] This function is used to empty all data in offline fingerprint machine, so be careful in use.
3.1.5 ClearGLog [Protocol] VARIANT_BOOL ClearGLog([in] LONG dwMachineNumber) [Feature] Clear all attendance records. [Parameter Declaration] dwMachineNumber Number of a machine to be operated [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.ClearGLog MACHINENUMBER
3.1.6 ClearSLog [Protocol] VARIANT_BOOL ClearSLog([in] LONG dwMachineNumber) [Feature] Clear all management records. [Parameter Declaration] dwMachineNumber Number of a machine to be operated [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.ClearSLog MACHINENUMBER
3.1.7 DeleteEnrollData [Protocol] 4
VARIANT_BOOL DeleteEnrollData([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwEMachineNumber, [in] LONG dwBackupNumber) [Feature] Delete fingerprint template for a user. [Parameter Declaration] dwMachineNumber Number of a machine to be operated dwEnrollNumber User registered number dwEMachineNumber Number of machine to be operated dwBackupNumber Refer to Specification for more information of user backup number. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim dwEmachineNumber As Integer Dim dwBackupNumber As Integer dwEnrollNumber = 1 dwEmachineNumber = 1 CZKEM1.DeleteEnrollData MACHINENUMBER, dwEnrollNumber, dwEmachineNumber, dwBackupNumber [Instruction] User Backup Number is used to name the user fingerprint template that records many fingerprints. If user has register two fingerprints, the 2nd fingerprint template is to be deleted, and then dwBackupNumber is defined as 1, and the rest is deduced by analogy. If dwBackupNumber is larger than 9, it means that 10 is for password data, and 11 is for all fingerprint data, and 12 is for all Fingerprint and Password Data
3.1.8 DelUserTmp [Protocol] VARIANT_BOOL DelUserTmp([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwFingerIndex) [Feature] Deleting information on user fingerprint template is the same as the function DeleteEnrollData. [Parameter Declaration] dwFingerIndex Fingerprint number registered by user ranges from 0 to , i.e. 10 fingers. Please refer to descriptions for function DeleteEnrollData for other parameters. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim dwFingerIndex As Integer
5
dwEnrollNumber = 1 dwFingerIndex = 0 CZKEM1.DelUserTmp MACHINENUMBER, dwEnrollNumber, dwFingerIndex [Instruction] This function is the latest SDK function. DeleteEnrollData is defined for compatibility.
3.1.9 FPTempConvertNew [Protocol] VARIANT_BOOL FPTempConvertNew([in] BYTE* TmpData1, [in] BYTE* TmpData2, [in] LONG *Size) [Feature] Convert Biokey SDK template into fingerprint template used by offline fingerprint machine. [Parameter Declaration] TmpData1 Template Needed to Convert TmpData2 Converted Fingerprint Template Size Converted Template Length [Returned Value] Return True for success, or otherwise False. [Example] Dim tmpData1(1024) As Byte Dim tmpdata2(1024) As Byte Dim size As Integer CZKEM1.GetUserTmp MACHINENUMBER, 1, 0, tmpData1(0), size CZKEM1.FPTempConvertNew tmpData1(0), tmpdata2(0), size Explanation: fingerprint template of this example is picked-up from offline fingerprint machine. When using, fingerprint template can be picked up from online fingerprint sampler for the convenience of example. [Instruction] One byte array is needed to pass to parameter temData1 in the above programs used for example. tmpData1(0) means passing address, i.e. pass to binary variable in whole. For the purpose of convenience, it is recommended that the function FPTempConvertNewStr should be used for conversion since binary system is not easy to process. In addition, function FPTempConvert converts offline template into BIOKEY SDK template.
3.1.10 FPTempConvertNewStr [Protocol] VARIANT_BOOL FPTempConvertNewStr([in] BSTR TmpData1, [in] BSTR* TmpData2, [in] LONG *Size) [Feature] 6
Convert BIOKEY SDK template into fingerprint template in offline fingerprint machine in the form of character string. [Parameter Declaration] TmpData1 Template Needed to Convert TmpData2 Template Needed to Convert Size Converted Template Length [Returned Value] Return True for success, or otherwise False. [Example] Dim tmpData1 Dim tmpdata2 As String Dim size As Integer tmpData1="re2df3fd4fsfsfsddfnCTRXERcIQnkA8ghQqLUTCDBikWAIJGdKhTggWdMsDECE32o1RIqxm4wf3fwY fsMCNDFWdFDfJosIN" CZKEM1.FPTempConvertNewStr tmpData1, tmpdata2, size
3.1.11 FPTempConvertStr [Protocol] VARIANT_BOOL FPTempConvertStr([in] BSTR TmpData1, [in] BSTR* TmpData2, [in] LONG *Size) [Feature] Convert fingerprint template in offline fingerprint machine into BIOKEY SDK template in the form of character string. [Parameter Declaration] TmpData1 Template Needed to Convert TmpData2 Template Needed to Convert Size Converted Template Length [Returned Value] Return True for success, or otherwise False. [Example] Dim tmpData1 Dim tmpdata2 As String Dim size As Integer tmpData1 = "o0o0aoaoaoaaaa0oaooa" CZKEM1.FPTempConvertStr tmpData1, tmpdata2, size
7
3.1.12 FPTempConvert [Protocol] VARIANT_BOOL FPTempConvert([in] BYTE* TmpData1, [in] BYTE* TmpData2, [in] LONG *Size) [Feature] Convert fingerprint template in offline fingerprint machine into BIOKEY SDK template. [Parameter Declaration] TmpData1 Template Needed to Convert TmpData2 Converted Fingerprint Template Size Converted Template Length [Returned Value] Return True for success, or otherwise False. [Example] Please refer to Demo.
3.1.13 GetPIN2 [Protocol] VARIANT_BOOL GetPIN2([in] LONG UserID, [in] LONG* PIN2) [Feature] Get user PIN2 value by User Registration Number. [Parameter Declaration] UserID Distributed Number when user registers PIN2 User ID exceeding 5 digits [Returned Value] Return True for success, or otherwise False. [Example] Dim userID As Integer Dim pin3 As Integer userID = 1 CZKEM1.GetPIN2 userID, pin2 [Instruction] PIN2 are mainly used for user ID exceeding 5 digits and for development.This function has no actual meaning.
3.1.14 GetUserInfo [Protocol] 8
VARIANT_BOOL GetUserInfo([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] BSTR * Name, [in] BSTR * Password, [in] LONG * Privilege, [in] VARIANT_BOOL * Enabled) [Feature] Get user information by User Registration Number. [Parameter Declaration] Please refer to SetUserInfo. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber Dim name As String Dim password As String Dim privileg As Integer Dim enable As Boolean dwEnrollNumber = 1 CZKEM1.GetUserInfo machineNumber, dwEnrollNumber, name, password, privileg, enable
3.1.15 SetUserInfo [Protocol] VARIANT_BOOL SetUserInfo([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] BSTR Name, [in] BSTR Password, [in] LONG Privilege, [in] VARIANT_BOOL Enabled) [Feature] Equal to register a user and write in personal information of user. [Parameter Declaration] dwEnrollNumber User Registration Number Name User Name Password User Password Privilege User Authority: 0 for Normal User; 1 for Registrant; 2 for Administrator and 3 for Super Administrator. Enabled Whether user is prohibited, and false is for prohibition. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim name As String Dim password As String Dim privileg As Integer Dim enabled As Boolean
9
dwEnrollNumber = 1 name = "Beetfuxi pei" password = "12" privileg = 3 enabled = True CZKEM1.SetUserInfo MACHINENUMBER, CInt(dwEnrollNumber), CStr(name), CStr(password), CInt(privileg), CBool(enabled) [Instruction] The function of this function equals to register user without having written in fingerprint template. Function SetUsertmpStr can be used to write in data of fingerprint template.
3.1.16 GetUserIDByPIN2 [Protocol] VARIANT_BOOL GetUserIDByPIN2([in] LONG PIN2, [in] LONG* UserID) [Feature] Get user PIN2 value by User Registration Number. [Parameter Declaration] UserID Distributed Number when user registers PIN2 User ID exceeding 5 digits [Returned Value] Return True for success, or otherwise False. [Example] Dim pin2 As Integer Dim userID As Integer pin2 = 1 CZKEM1.GetUserIDByPIN2 pin2, userID [Instruction] This function has no actual meaning.
3.1.17 GetFPTempLengthStr [Protocol] LONG GetFPTempLengthStr([in] BSTR dwEnrollData) [Feature] Get fingerprint template length. [Parameter Declaration] dwEnrollData One Fingerprint Template [Returned Value] Fingerprint Template Length 10
[Example] Please refer to Demo for getting binary fingerprint template.
3.1.18 GetUserInfoByPIN2 [Protocol] VARIANT_BOOL GetUserInfoByPIN2([in] LONG dwMachineNumber, [in] BSTR * Name, [in] BSTR * Password, [in] LONG * Privilege, [in] VARIANT_BOOL * Enabled) [Feature] Get user information by PIN2 value. [Parameter Declaration] dwMachineNumber Machine Number Name User Name Password User Password Privilege User Authority Enabled User is disable or enable. [Returned Value] Return True for success, or otherwise False. [Example] Dim name As String Dim password As String Dim privilege As Integer Dim enabled As Boolean name = "Beetfuxi" CZKEM1.GetUserInfoByPIN2 MACHINENUMBER, name, password, privilege, enabled [Instruction] This function has been removed because it has no actual use.
3.1.19 GetUserInfoByCard [Protocol] VARIANT_BOOL GetUserInfoByCard([in] LONG dwMachineNumber, [in] BSTR * Name, [in] BSTR * Password, [in] LONG * Privilege, [in] VARIANT_BOOL * Enabled) [Feature] Get user information by card number. [Parameter Declaration] Please refer to function GetUserInfoByPIN2. [Returned Value] 11
Return True for success, or otherwise False. [Example] Dim name As String Dim password As String Dim privilege As Integer Dim enabled As Boolean CZKEM1.GetUserInfoByCard MACHINENUMBER, name, password, privilege, enabled
3.1.20 GetSMS [Protocol] VARIANT_BOOL GetSMS([in] LONG dwMachineNumber, [in] LONG *ID, [in] LONG Tag, [in] BSTR StartTime, [in] BSTR content) [Feature] Get short message by serial number. [Parameter Declaration] ID Serial Number of Short Message Tag Type of short message: 253 is for public short message and 254 is for user short message. StartTime Format of start time of short message is standard, such as YYYY-MM-DD HH: NN. Content Content of Short Message [Returned Value] Return True for success, or otherwise False. [Example] Dim Tag As Long Dim ValidMinutes As Long Dim StartTime As String Dim Content As String CZKEM1.GetSMS MACHINENUMBER, 0, Tag, ValidMinutes, StartTime, Content
3.1.21 SetSMS [Protocol] VARIANT_BOOL SetSMS([in] LONG dwMachineNumber, [in] LONG *ID, [in] LONG Tag, [in] BSTR StartTime, [in] BSTR content) [Feature] Write in short message. [Parameter Declaration] Please refer to explanation of function GetSMS. [Example] 12
Dim Tag As Long Dim StartTime As String Dim Content As String CZKEM1.GetSMS MachineNumber, Val(textID.Text), Tag, ValidMinutes, StartTime, Content [Instruction] This function only writes short message in machine, not for one user.
3.1.22 GetEnrollDataStr [Protocol] VARIANT_BOOL GetEnrollDataStr([in] LONG dwMachineNumber,[in] LONG dwEnrollNumber, [in] LONG dwEMachineNumber, [in] LONG dwBackupNumber, [in] LONG* dwMachinePrivilege, [in] BSTR* dwEnrollData, [in] LONG* dwPassWord) [Feature] Get user information, including data of fingerprint template. [Parameter Declaration] dwEnrollNumber and dwEMachineNumber are the same machine number. dwBackupNumber For Fingerprint Backup Number, please refer to explanation of function DeleteEnrollDate. DwMachinePrivilege User Authority DwEnrollData Fingerprint data is expressed by character string. DwPassWord User Password [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim dwEmachineNumber As Integer Dim dwBackupNumber As Integer Dim dwMachinePrivilege As Integer Dim dwEnrollData As String Dim dwPassWord As Integer dwEnrollNumber = 1 dwEmachineNumber = 1 CZKEM1.GetEnrollDataStr MACHINENUMBER, dwEnrollNumber, dwEmachineNumber, dwBackupNumber, dwMachinePrivilege, dwEnrollData, dwPassWord
13
3.1.23 SetEnrollDataStr [Protocol] VARIANT_BOOL SetEnrollDataStr([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwEMachineNumber, [in] LONG dwBackupNumber, [in] LONG dwMachinePrivilege, [in] BSTR dwEnrollData, [in] LONG dwPassWord) [Feature] User fingerprint template is written in character string. [Parameter Declaration] Please refer to explanation of function SetUserTmp. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim dwEmachineNumber As Integer Dim dwBackupNumber As Integer Dim dwMachinePrivilege As Integer Dim dwEnrollData Dim dwPassWord As Integer dwEnrollNumber = 1 dwEmachineNumber = 1 dwBackupNumber = 1 dwMachinePrivilege = 1 dwEnrollData = "32131opkdfopfd" dwPassWord = 1 CZKEM1.SetEnrollDataStr MACHINENUMBER, dwEnrollNumber, dwEmachineNumber, dwBackupNumber, dwMachinePrivilege, dwEnrollData, dwPassWord
3.1.24 GetGeneralLogDataStr [Protocol] VARIANT_BOOL GetGeneralLogDataStr([in] LONG dwMachineNumber, [in] LONG* dwEnrollNumber, [in] LONG* dwVerifyMode, [in] LONG* dwInOutMode, [in] BSTR *TimeStr) [Feature] A data of attendance record is gotten from computer memory. [Parameter Declaration] Value Description 1 Fingerprint 2 Password Attendance status is described as follows: Value Description 0
On-duty
1
Off-duty
2
Check out for going out 14
3
Check in for going out
4 5
Check in for working overtime Check out for working overtime
[Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As LONG Dim dwVerifyMode As LONG Dim dwInOutMode As LONG Dim timeStr As String Dim i As Long dwEnrollNumber = 1 CZKEM1.ReadAllGLogData machineNumber i=i+1 while CZKEM1.GetGeneralLogDataStr(machineNumber, dwEnrollNumber, dwVerifyMode, dwInOutMode, timeStr) MsgBox "get success " & i & " times" i=i+1 Wend
3.1.25 GetUserTmpStr [Protocol]
VARIANT_BOOL GetUserTmpStr([in] LONG dwMachineNumber,[in] LONG dwEnrollNumber,[in] LONG dwFingerIndex, [in] BSTR* TmpData, [in] LONG * TmpLength) [Feature] Get user information of fingerprint template in character string. [Parameter Declaration] dwFingerIndex The range of fingerprint index is between 0 and 9. TmpData Information of Fingerprint Template TmpLength Fingerprint Template Length [Returned Value] Return True for success, or otherwise False. [Example]
Dim Dim Dim Dim
dwEnrollNumber As Integer dwFingerIndex As Integer tmpData As String 'Finger data of enroll tmpLength As Integer
dwEnrollNumber = 1 dwFingerIndex = 0 CZKEM1.GetUserTmpStr MACHINENUMBER, dwEnrollNumber, dwFingerIndex, tmpData, tmpLength [Instruction] This function is suggested to get user information of fingerprint template, which is relevantly easy to handle with. 15
3.1.26 SetUserTmpStr [Protocol] VARIANT_BOOL SetUserTmpStr([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwFingerIndex, [in] BSTR TmpData) [Feature] User fingerprint template is written in character string. [Parameter Declaration] Please refer to explanation of function SetUserTmp. [Example] Dim dwEnrollNumber As Integer Dim dwFingerIndex As Integer Dim tmpData dwEnrollNumber = 1 dwFingerIndex = 0 tmpData="ocoRgZ68NQNCRb0rghBEuTnCTRXERcIQnkA8ghQqLUTCDBikWAIJGKhTggWMsDECE2o1RIMXhq xmwwYfMCNDFWFDJoINRjc0AiZbtx8CC1OgJAIJdz01QiY8JtQuD" CZKEM1.SetUserInfo machineNumber, dwEnrollNumber, "Beet", 0, 0, True CZKEM1.SetUserTmpStr MACHINENUMBER, dwEnrollNumber, dwFingerIndex, tmpData
3.1.27 GetAllUserInfo [Protocol]
VARIANT_BOOL GetAllUserInfo([in] LONG dwMachineNumber, [in] LONG *dwEnrollNumber, [in] BSTR * Name, [in] BSTR * Password, [in] LONG * Privilege, [in] VARIANT_BOOL * Enabled) [Feature] After getting user information, read all of it in sequence in one cycle. [Parameter Declaration] Please refer to explanation of function GetUserInfoByPIN2. [Returned Value] Return True if succeed, otherwise return False. [Example]
Dim Dim Dim Dim Dim Dim Dim Dim
enrollnumber1 As Integer enrollnumber As Integer dwBackupNumber As Integer dwMachinePrivilege As Integer dwEnable As Boolean name As String name1 As String pass As String 16
Dim pass1 As String Dim pri As Integer Dim en As Boolean While CZKEM1.GetAllUserInfo(MACHINENUMBER, enrollnumber, name, pass, pri, en) enrollnumber1 = enrollnumber dwMachinePrivilege = pri name1 = name pass1 = pass dwEnable = en Wend
3.1.28 GetUserTmp [Protocol]
VARIANT_BOOL GetUserTmp([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwFingerIndex, [in] BYTE* TmpData, [in] LONG * TmpLength) [Feature] Get user information of fingerprint template. [Parameter Declaration] dwEnrollNumber User Registration Number DwFingerIndex The range of fingerprint index is between 0 and 9. TmpData Byte Array of Fingerprint Template TmpLength Template Length [Returned Value] Return True for success, or otherwise False. [Example]
Dim Dim Dim Dim
dwEnrollNumber As Integer dwFingerIndex As Integer tmpData(1024) As Byte tmpLength As Integer
dwEnrollNumber = 1 CZKEM1.GetUserTmp MACHINENUMBER, dwEnrollNumber, dwFingerIndex, tmpData(0), tmpLength
17
3.1.29 SetUserTmp [Protocol] VARIANT_BOOL SetUserTmp([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwFingerIndex, [in] BYTE* TmpData) [Feature] User fingerprint template is written in binary system. [Parameter Declaration] dwFingerIndex Index Number corresponding to fingerprint TmpData Fingerprint template data is in binary format. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim dwFingerIndex As Integer Dim tmpData(255) As Byte dwEnrollNumber = 1 dwFingerIndex = 0 tmpData(0) = 160 CZKEM1.SetUserTmp MACHINENUMBER, dwEnrollNumber, dwFingerIndex, tmpData(0) [Instruction] Binary array tmpData(0) means passing address in vb6.0.
3.1.30 GetAllUserID [Protocol]
VARIANT_BOOL GetAllUserID([in] LONG dwMachineNumber, [in] LONG* dwEnrollNumber, [in] LONG* dwEMachineNumber, [in] LONG* dwBackupNumber, [in] LONG* dwMachinePrivilege, [in] LONG* dwEnable) [Feature] Get User Registration Number. [Parameter Declaration] dwMachinePrivilege User Authority: 0 for Normal User; 1 for Registrant; 2 for Administrator and 3 for Super Administrator. [Returned Value] Return True for success, or otherwise False. [Example]
Dim Dim Dim Dim Dim
dwEnrollNumber As Integer dwEmachineNumber As Integer dwBackupNumber As Integer dwMachinePrivilege As Integer dwEnable As Boolean 18
Dim i As Long 'Cyc get enroll number While CZKEM1.GetAllUserID(MACHINENUMBER, dwEnrollNumber, dwEmachineNumber, dwBackupNumber, dwMachinePrivilege, dwEnable) i = dwEnrollNumber Wend [Instruction] This function can use function ReadAllUserID to read all ID to memory, then read out user ID circularly.
3.1.31 GetBackupNumber [Protocol]
LONG GetBackupNumber([in] LONG dwMachineNumber) [Feature] Get User Backup Number. [Parameter Declaration] User Backup Number [Returned Value]
CZKEM1.GetBackupNumber MACHINENUMBER [Instruction]
This function has already been removed.
3.1.32 GetFPTempLength [Protocol]
LONG GetFPTempLength([in] BYTE* dwEnrollData) [Feature] Get the length of fingerprint template. [Parameter Declaration] dwEnrollData Template Length [Returned Value] Template Length [Example]
Dim Dim Dim Dim Dim Dim Dim
length glngEnrollPData As Long vEMachineNumber As Integer vEnrollNumber vFingerNumber As Integer glngEnrollData(500) As Long vPrivilege As Integer
vEnrollNumber = 1 CZKEM1.GetEnrollData machineNumber, _ 19
vEnrollNumber, _ machineNumber, _ vFingerNumber, _ vPrivilege, _ glngEnrollData(0), _ glngEnrollPData length = CZKEM1.GetFPTempLength(glngEnrollData(0))
3.1.33 GetSuperLogData [Protocol] VARIANT_BOOL GetSuperLogData([in] LONG dwMachineNumber, [in] LONG* dwTMachineNumber, [in] LONG* dwSEnrollNumber, [in] LONG* Params4, [in] LONG* Params1, [in] LONG* Params2, [in] LONG* dwManipulation, [in] LONG* Params3, [in] LONG* dwYear, [in] LONG* dwMonth, [in] LONG* dwDay, [in] LONG* dwHour, [in] LONG* dwMinute) [Feature] Management record data is gotten one by one from computer memory. [Parameter Declaration] Params4 Pointer pointing to long variable, which receives number value of Registration Machine performed by those managers in charge of management. Params1 Pointer pointing to long variable, which receives the value of registration number for management and operation object. If operation object is terminal itself (i.e. management operation modifying system information of terminal), this parameter value is 0. Params2 Pointer pointing to long variable, which receives the value of registration machine number for management and operation object. If operation object is terminal itself (i.e. management operation modifying system information of terminal), this parameter value is 0. dwManipulation Pointer pointing to long variable, which receives type value of management operation performed in terminal. Explanation for type value of management operation is as follows: Value Description 0
Power-on
1
Power-off
2
Warning for verification failure
3
Disassembly warning
4
Go to menu
5
Change settings
6
Fingerprint Backup Registration
7
Add password
8
Register HID card
9
Delete user
10
Delete fingerprint
11
Delete password 20
12
Delete radio frequency card
13
Clear data
14
Create MF card
15
Register MF card
16
Register MF card
17
Delete registration of MF card
18
Clear content of MF card
19
Move registered data into card
20
Copy data in the card to offline fingerprint machine
21
Set time of offline fingerprint machine
22
Restore to factory default
23
Delete attendance (in-out) record
24
Clear administrator authority
25
Modify setting of access control group
26
Modify setting of user access control
27
Modify duration of access control
28
Modify setting of unlock combination
29
Unlock
30
Register user
[Returned Value] Return True for success, or otherwise False. [Example] Dim dwTMachineNumber As Integer Dim dwSenrollNumber As Integer Dim params4 As Integer Dim params1 As Integer Dim params2 As Integer Dim dwManipulation As Integer Dim params3 As Integer Dim dwYear As Integer Dim dwMonth As Integer Dim dwDay As Integer Dim dwHour As Integer Dim dwMinute As Integer Dim i As Long ' dwTMachineNumber = 1 dwSenrollNumber = 1 CZKEM1.ReadAllSLogData machineNumber i=1 While CZKEM1.GetSuperLogData(machineNumber, dwTMachineNumber, dwSenrollNumber, params4, params1, params2, dwManipulation, params3, dwYear, dwMonth, dwDay, dwHour, dwMinute) MsgBox "Get super log successful " & i & " times" i=i+1 Wend
21
3.1.34 GetAllSLogData [Protocol] VARIANT_BOOL GetAllSLogData([in] LONG dwMachineNumber, [in] LONG* dwTMachineNumber, [in] LONG* dwSEnrollNumber, [in] LONG* Params4, [in] LONG* Params1, [in] LONG* Params2, [in] LONG* dwManipulation, [in] LONG* Params3, [in] LONG* dwYear, [in] LONG* dwMonth, [in] LONG* dwDay, [in] LONG* dwHour, [in] LONG* dwMinute) [Feature] Read out management record from computer memory by function ReadAllSLogData. [Parameter Declaration] Please refer to explanation of function GetSuperLogData. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwTMachineNumber As Integer Dim dwSenrollNumber As Integer Dim params4 As Integer Dim params1 As Integer Dim params2 As Integer Dim dwManipulation As Integer Dim params3 As Integer Dim dwYear As Integer Dim dwMonth As Integer Dim dwDay As Integer Dim dwHour As Integer Dim dwMinute As Integer Dim i As Long
CZKEM1.ReadAllSLogData machineNumber i=1 While CZKEM1.GetAllSLogData(machineNumber, dwTMachineNumber, dwSenrollNumber, params4, params1, params2, dwManipulation, params3, dwYear, dwMonth, dwDay, dwHour, dwMinute) MsgBox "get success " & i & " times" i=i+1 Wend
3.1.35 GetAllGLogData [Protocol] VARIANT_BOOL GetAllGLogData([in] LONG dwMachineNumber,[in] LONG* dwTMachineNumber, [in] LONG* dwEnrollNumber, [in] LONG* dwEMachineNumber, [in] LONG* dwVerifyMode, [in] LONG* dwInOutMode, [in] LONG* dwYear, [in] LONG* dwMonth, [in] LONG* dwDay, [in] LONG* dwHour, [in] LONG* dwMinute) [Feature] Read attendance record from computer memory, where attendance record in the memory is read by function ReadAllGLogData. [Parameter Declaration] 22
dwEnrollNumber User Registration Number dwEMachineNumber the same as that of dwMachineNumber dwVerifyMode Comparison mode is divided into 1:1 and 1:N. dwInOutMode Attendance Type [Example] Dim dwTMachineNumber As Integer Dim dwEnrollNumber As Integer Dim dwEmachineNumber As Integer Dim dwVerifyMode As Integer Dim dwInOutMode As Integer Dim dwYear As Integer Dim dwMomth As Integer Dim dwDay As Integer Dim dwHour As Integer Dim dwMinute As Integer Dim i As Long ' CZKEM1.ReadAllGLogData machineNumber i=1 While CZKEM1.GetAllGLogData(machineNumber, dwTMachineNumber, dwEnrollNumber, dwEmachineNumber, dwVerifyMode, dwInOutMode, dwYear, dwMomth, dwDay, dwHour, dwMinute) MsgBox "get success " & i & " times" i=i+1 Wend
3.1.36 GetEnrollData [Protocol] VARIANT_BOOL GetEnrollData([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwEMachineNumber, [in] LONG dwBackupNumber, [in] LONG* dwMachinePrivilege, [in] LONG* dwEnrollData, [in] LONG* dwPassWord) [Feature] Get user template. [Parameter Declaration] Please refer to explanation of function GetEnrollDataStr. [Returned Value] Return True for success, or otherwise False. [Example] Please refer to example of function GetFPTempLength. [Instruction] This function is old version of function SDK and can be replaced by GetUserTmpStr etc.
23
3.1.37 SetEnrollData [Protocol] VARIANT_BOOL SetEnrollData([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwEMachineNumber, [in] LONG dwBackupNumber, [in] LONG dwMachinePrivilege, [in] LONG* dwEnrollData, [in] LONG dwPassWord) [Feature] Write in his fingerprint template for one user. [Parameter Declaration] dwMachineNumber Write in his fingerprint template for one user. DwEnrollNumber User Registration Number DwEMachineNumber the same of dwMachineNumber. DwBackupNumber Fingerprint Backup Number refers to Fingerprint Index. dwMachinePrivilege User Authority DwEnrollData Fingerprint Data DwPassWord User Password [Returned Value] Return True for success, or otherwise False. [Example] Please refer to Demo.
3.1.38 ModifyPrivilege [Protocol] VARIANT_BOOL ModifyPrivilege( [in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwEMachineNumber, [in] LONG dwBackupNumber, [in] LONG dwMachinePrivilege) [Feature] Modify User Authority. [Parameter Declaration] dwBackupNumber Fingerprint Backup Number dwMachinePrivilege User Authority: 0 for Normal User; 1 for Registrant; 2 for Administrator and 3 for Super Administrator. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer 'user ID 24
Dim dwEmachineNumber As Integer Dim dwBackupNumber As Integer Dim dwMachinePrivilege As Integer dwEnrollNumber = 1 dwEmachineNumber = 1 dwBackupNumber = 0 dwMachinePrivilege = 3 CZKEM1.ModifyPrivilege MACHINENUMBER, dwEnrollNumber, dwEmachineNumber, dwBackupNumber, dwMachinePrivilege
3.1.39 PINWidth [Protocol] LONG PINWidth() [Feature] Get maximum length of User Registration Number. [Parameter Declaration] Return maximum length of User Registration Number. [Example] Dim tmpWidth As Integer
tmpWidth = CZKEM1.PINWidth()
3.1.40 ReadSuperLogData [Protocol] VARIANT_BOOL ReadSuperLogData([in] LONG dwMachineNumber) [Feature] Read all management records to memory. [Parameter Declaration] dwMachineNumber Number of machine to be operated at present [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.ReadSuperLogData MACHINENUMBER
3.1.41 ReadAllSLogData [Protocol] VARIANT_BOOL ReadAllSLogData([in] LONG dwMachineNumber) 25
[Feature] Please refer to function ReadSuperLogData for the same functions as it.
3.1.42 ReadGeneralLogData [Protocol] VARIANT_BOOL ReadGeneralLogData([in] LONG dwMachineNumber) [Feature] Read all attendance records to memory. [Parameter Declaration] dwMachineNumber Number of machine to be operated at present [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.ReadGeneralLogData MACHINENUMBER
3.1.43 ReadAllGLogData [Protocol] VARIANT_BOOL ReadAllGLogData([in] LONG dwMachineNumber) [Feature] Please refer to function ReadGeneralLogData for the same functions as it.
3.1.44 ReadAllTemplate [Protocol] VARIANT_BOOL ReadAllTemplate([in] LONG dwMachineNumber) [Feature] Read all fingerprint templates to memory. [Parameter Declaration] dwMachineNumber Number of machine to be operated at present [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.ReadAllTemplate MACHINENUMBER [Instruction] Main function of this function is to improve the speed of pick-up fingerprint template, which is faster than that of pick-up fingerprint template from offline fingerprint machine one by one.
26
3.1.45 RefreshData [Protocol] VARIANT_BOOL RefreshData([in] LONG dwMachineNumber) [Feature] Refresh data. [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.RefreshData MACHINENUMBER [Instruction] Call it after uploading user information or fingerprint, so modification is valid at once.
3.1.46 ReadAllUserID [Protocol] VARIANT_BOOL ReadAllUserID([in] LONG dwMachineNumber) [Feature] Read all User Registration Numbers to PC memory. [Parameter Declaration] Return True for success, or otherwise False. [Example] Dim userID As Integer CZKEM1.ReadAllUserID MACHINENUMBER [Instruction] After finishing execution of this function, call function GetAllUserID to get User Registration Number.
3.2 Access Control 3.2.1 ACUnlock [Protocol] VARIANT_BOOL ACUnlock([in] LONG dwMachineNumber, [in] LONG Delay) [Feature] Gate open makes lock controller output opening level. [Parameter Declaration] dwMachineNumber Number of machine to be operated at present Delay Gate Open Delay Time [Returned Value] Return True for success, or otherwise False.
27
[Instruction] Dim delay As Integer ' Delay time delay = 150 CZKEM1.ACUnlock MACHINENUMBER, delay
3.2.2 EnableUser [Protocol] VARIANT_BOOL EnableUser([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG dwEMachineNumber, [in] LONG dwBackupNumber, VARIANT_BOOL bFlag) [Feature] Set user as disabled or enabled user. [Parameter Declaration] dwMachineNumber Number of machine to be operated at present DwEnrollNumber User Registration Number DwEMachineNumber the same machine of dwMachineNumber. DwBackupNumber Fingerprint Index BFlag Whether user is disabled or enabled; It stands for “enabled” if True, otherwise it is “disabled”. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim dwEmachineNumber As Integer Dim dwBackNumber As Integer Dim bFlag dwEnrollNumber = 1 dwEmachineNumber = 1 dwBackNumber = 1 bFlag = True CZKEM1.EnableUser MACHINENUMBER, dwEnrollNumber, dwEmachineNumber, dwBackNumber, bFlag
3.2.3 GetUserTZs [Protocol] VARIANT_BOOL GetUserTZs([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG *TZs) [Feature] 28
Get User Duration [Parameter Declaration] TZs User Gate Open Duration [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim tzs As Integer dwEnrollNumber = 1 CZKEM1.GetUserTZs MACHINENUMBER, dwEnrollNumber, tzs
3.2.4 SetUserTZs [Protocol] VARIANT_BOOL SetUserTZs([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG *TZs) [Feature] Set User Duration. [Parameter Declaration]
dwEnrollNumber User Registration Number
TZs When duration is empty, restore it to group setting, otherwise specify a setting for user himself. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim tzs As Integer dwEnrollNumber = 1 tzs = “0002234” CZKEM1.SetUserTZs MACHINENUMBER, dwEnrollNumber, tzs
3.2.5 GetUserGroup [Protocol] VARIANT_BOOL GetUserGroup([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG *UserGrp) [Feature] Get User Group. [Parameter Declaration] UserGrp 29
User Group [Example] Dim dwEnrollNumber As Integer Dim userGrp As Integer dwEnrollNumber = 1 CZKEM1.GetUserGroup MACHINENUMBER, dwEnrollNumber, userGrp
3.2.6 SetUserGroup [Protocol] VARIANT_BOOL SetUserGroup([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] LONG UserGrp) [Feature] Set user to belong to one group. [Parameter Declaration] dwEnrollNumber User Registration Number UserGrp One Group [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim userGrp As String
dwEnrollNumber = 1 userGrp = 1 CZKEM1.SetUserGroup MACHINENUMBER, dwEnrollNumber, userGrp
3.2.7 GetACFun [Protocol] VARIANT_BOOL GetACFun([in] LONG* ACFun) [Feature] Get Unlock Delay Time. [Parameter Declaration] ACFun Unlock Time Length [Example] Dim acFun As Integer CZKEM1.GetACFun acFun 30
3.2.8 GetTZInfo [Protocol] VARIANT_BOOL GetTZInfo([in] LONG dwMachineNumber, [in] LONG TZIndex, [in] BSTR *TZ) [Feature] Get User Duration. [Parameter Declaration] Please refer to function GetUnlockGroups or other functions. [Returned Value] Return True for success, or otherwise False. [Example] Dim tzIndex As Integer Dim tz As String tzIndex = 1 CZKEM1.GetTZInfo MACHINENUMBER, tzIndex, tz
3.2.9 SetTZInfo [Protocol] VARIANT_BOOL SetTZInfo([in] LONG dwMachineNumber, [in] LONG TZIndex, [in] BSTR TZ) [Feature] Set Duration for group. [Parameter Declaration] TZIndex Group Indexes TZ Duration [Returned Value] Return True for success, or otherwise False. [Example] Dim tzIndex As Integer Dim tz tzIndex = 1 tz = "000024500002303" CZKEM1.SetTZInfo MACHINENUMBER, tzIndex, tz
31
3.2.10 GetUnlockGroups [Protocol] VARIANT_BOOL GetUnlockGroups([in] LONG dwMachineNumber, [in] BSTR *Grps) [Feature] Get Unlock Group Information. [Parameter Declaration] dwMachineNumber Machine Number, i.e number of machine in operation Grps Unlock Group Information [Returned Value] Return True for success, or otherwise False. [Example] Dim grps As String CZKEM1.GetUnlockGroups MACHINENUMBER, grps
3.2.11 SetUnlockGroups [Protocol] VARIANT_BOOL SetUnlockGroups([in] LONG dwMachineNumber, [in] BSTR Grps) [Feature] Create a group. [Parameter Declaration] Grps Group Name [Returned Value] Return True for success, or otherwise False. [Example] Dim grps grps = "AAA" CZKEM1.SetUnlockGroups MACHINENUMBER, grps
3.2.12 GetGroupTZs [Protocol] VARIANT_BOOL GetGroupTZs([in] LONG dwMachineNumber, [in] LONG GroupIndex, [in] LONG *TZs) [Feature] Get Group Duration. [Parameter Declaration] GroupIndex
32
Group Indexes TZs Group Duration [Returned Value] Return True for success, or otherwise False. [Example] Dim groupIndex As Integer Dim tzs As Integer groupIndex = 1 CZKEM1.GetGroupTZs MACHINENUMBER, groupIndex, tzs
3.2.13 GetGroupTZStr [Protocol] VARIANT_BOOL SetGroupTZs([in] LONG dwMachineNumber, [in] LONG GroupIndex, [in] BSTR *TZs) [Feature] Set Duration for a group. [Parameter Declaration] GroupIndex Group Indexes TZs Unlock duration [Returned Value] Return True for success, or otherwise False. [Example] Dim groupIndex As Integer Dim tzs As Integer groupIndex = 1 tzs = "000234300004324" CZKEM1.SetGroupTZs MACHINENUMBER, groupIndex, tzs
3.2.14 GetGroupTZStr [Protocol] VARIANT_BOOL GetGroupTZStr([in] LONG dwMachineNumber, [in] LONG GroupIndex, [in] BSTR *TZs) [Feature] Get Group Duration. [Parameter Declaration] GroupIndex Group Indexes TZs 33
Group Unlock Duration [Returned Value] Return True for success, or otherwise False. [Example] Dim groupIndex As Integer Dim tzs As String groupIndex = 1 CZKEM1.GetGroupTZStr MACHINENUMBER, groupIndex, tzs
3.2.15 SetGroupTZStr [Protocol] VARIANT_BOOL SetGroupTZStr([in] LONG dwMachineNumber, [in] LONG GroupIndex, [in] BSTR TZs) [Feature] Set Group Duration [Parameter Declaration] Refer to SetGroupTZs [Returned Value] Return True for success, or otherwise False. [Example] Dim groupIndex As Integer Dim tzs groupIndex = 1 tzs = "0005678" CZKEM1.SetGroupTZStr MACHINENUMBER, groupIndex, tzs
3.2.16 GetUserTZStr [Protocol] VARIANT_BOOL GetUserTZStr([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] BSTR *TZs) [Feature] Get user duration [Parameter Declaration] dwEnrollNumber User registration No. TZs User unlocking duration [Example] Dim dwEnrollNumber As Integer Dim tzs As Integer 34
dwEnrollNumber = 1 CZKEM1.GetUserTZs machineNumber, dwEnrollNumber, tzs
3.2.17 SetUserTZStr [Protocol] VARIANT_BOOL SetUserTZStr([in] LONG dwMachineNumber, [in] LONG dwEnrollNumber, [in] BSTR TZs) [Feature] Set group duration [Parameter Declaration] Refer to SetUserTZ [Returned Value] Return True for success, or otherwise False. [Example] Dim dwEnrollNumber As Integer Dim tzs dwEnrollNumber = 1 tzs = "0001" ' Retrun true success else false CZKEM1.SetUserTZStr MACHINENUMBER, dwEnrollNumber, tzs
3.3 Machine Options 3.3.1 Beep [Protocol] VARIANT_BOOL Beep([in] LONG DelayMS) [Feature] Machine beeps [Parameter Declaration]
DelayMS Extended period of beeps [Returned Value] Return True for success, or otherwise False. [Example] Dim delayMs As Integer ' Delay time delayMs = 150 CZKEM1.Beep delayMs 35
3.3.2 ClearLCD [Protocol] VARIANT_BOOL ClearLCD() [Feature] Clear screen to show nothing on LCD screen of the machine [Parameter Declaration] Return True for success, or otherwise False. [Example] CZKEM1.ClearLCD ' Clear scr
3.3.3 Connect_Com [Protocol] VARIANT_BOOL Connect_Com([in] LONG ComPort, [in] LONG MachineNumber, [in] LONG BaudRate) [Feature] Connect machine to PC serial-port. [Parameter Declaration]
ComPort Serial-port No.
MachineNumber Machine No.
BaudRate Baud rate. [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.Connect_Com MACHINECOM, MACHINENUMBER, RATE ' Connect with machine CZKEM1.Beep (150) ' Make machine beep CZKEM1.EnableDevice MACHINENUMBER, False ' Make machine in working state
3.3.4 Connect_Net [Protocol] VARIANT_BOOL Connect_Net([in] BSTR IPAdd, [in] LONG Port) [Feature] Set IP address for Connecting machine, i.e. network machine online. [Parameter Declaration]
IPAdd Set IP address of the machine via its keyboard or interface function SetDeviceIP.
Port Port number is usually 4370. 36
[Returned Value] Return True for success, or otherwise False. [Example] Dim ipAdd Dim port As Integer Dim flag As Boolean ipAdd = "192.168.1.159" port = 4370 flag = CZKEM1.Connect_Net(ipAdd, port) If flag = True Then CZKEM1.EnableDevice MACHINENUMBER, False End If
3.3.5 DisableDeviceWithTimeOut [Protocol] VARIANT_BOOL DisableDeviceWithTimeOut([in] LONG dwMachineNumber,[in] LONG TimeOutSec) [Feature] Set duration for a machine under operating mode. [Parameter Declaration]
TimeOutSec The unit of duration is second. [Returned Value] Return True for success, or otherwise False. [Example] Dim timeOutSec As Integer timeOutSec = 1200 CZKEM1.DisableDeviceWithTimeOut MACHINENUMBER, timeOutSec [Instruction] Set a machine into operating mode to keep data consistent and free from error after connect the machine; if required to stop the communication with the machine, and an application program remains connection, the machine will be automatically disconnected.
3.3.6 Disconnect [Protocol] Disconnect(void) [Feature] Disconnection. [Example] CZKEM1.Disconnect ' Disconnect with machine CZKEM1.EnableDevice MACHINENUMBER, True CZKEM1.Beep (150) ' Make machine beep 37
3.3.7 EnableDevice [Protocol] EnableDevice [in] LONG dwMachineNumber [in] VARIANT_BOOL Enabled [Feature] Set the machine into operating or non-operating mode [Parameter Declaration]
dwMachineNumber Operated machine No.
Enabled True shows the machine is under operating mode, or under non-operating mode. [Example] CZKEM1.EnableDevice MACHINENUMBER, True
3.3.8 EnableClock [Protocol] VARIANT_BOOL EnableClock([in] LONG Enabled) [Feature] Stop or turn on the clock of machine, “:” will displayed on the LCD screen without playing. [Parameter Declaration]
Enabled True shows the machine is under operating mode, or under non-operating mode. [Returned Value] Return True for success, or otherwise False. [Example] Dim enabled As Boolean enabled = False CZKEM1.EnableClock enabled
3.3.9 GetDeviceStatus [Protocol] VARIANT_BOOL GetDeviceStatus([in] LONG dwMachineNumber, [in] LONG dwStatus, [in] LONG* dwValue) [Feature] Get the stored information in the machine, such as the number of administrators, registered users and templates. [Parameter Declaration]
dwMachineNumber Operated machine No.
DwStatus The access information of the machine modes are described as follows: 38
Value 1 2 3 4 5 6
Description The number of Administrator The number of Registered user Fingerprint template quantity. The number of Password. Record times of administrator’s management. Record times of attendance
DwValue Access the value described through DwStatus.
[Returned Value] Return True for success, or otherwise False. [Example] Dim dwStatus As Integer Dim dwValue As Integer dwStatu = 1 ' Count of administrators CZKEM1.GetDeviceStatus MACHINENUMBER, dwStatus, dwValue
3.3.10 GetDeviceInfo [Protocol] VARIANT_BOOL GetDeviceInfo([in] LONG dwMachineNumber, [in] LONG dwInfo, [in] LONG* dwValue) [Feature] Access information of setting such as language setting and max record setting. [Parameter Declaration]
dwMachineNumber Access the operated machine number.
DwInfo Type of access information of the machine is described as follows: Value Description 1. Max number of administrators; 2. Machine No. 3. Language Value Description 0 English 1 Chinese 2 Korean 4. The duration for turning machine off automatically with the Unit of Minute 5. Output of locker signal control. Value Description 0 Control signal with outputting locker. 1 control signal without outputting locker. *** 39
6. Max number of warning for attendance record. 7. Max number of warning for management record. 8. Min interval between two attendance records. 9. Baud rate. Value Description 0 1200 bps 0 1200 bps 0 1200 bps 0 1200 bps 4 19200 bps 4 19200 bps 10. Parity verification Value Description 0 Null verification 1 Even 2 Odd 11. Zone bit for stop Value Description 0 1 Bit 1 2 Bits 12. Data decollator 13.Network is connected or not. 14.RS232 communication or not. 15.RS485 communication or not. 16.Tone tip 17. Verification speed 18. Idle time 19. Off time 20. Resume Time 21. Sleep time 22. Auto-beep 23. Match threshold 24. Match threshold 25.1:1 Match threshold 26. Whether to show fractional number. 27 Combination number of unlock persons. 28.Whether to use card for verification. 29.Network speed 30.Must register card No. 31.retention time for machine under temporary status 32.Type retention time 33.Retention time for menu 34.Date formate 35.Whether is 1: 1 match or not? [Example] Dim dwInfo As Integer Dim dwValue As Integer dwInfo =1 40
CZKEM1.GetDeviceInfo MACHINENUMBER, dwInfo, dwValue
3.3.11 GetWiegandDefine [Protocol] VARIANT_BOOL GetWiegandDefine([in] LONG dwMachineNumber, [in] BSTR *sWiegandDefine) [Feature] Get Wiegand format. [Parameter Declaration]
dwMachineNumber Number of machine to be operated at present
SWiegandDefine Wiegand format. [Example] Dim sWiegandDefine As String CZKEM1.GetWiegandDefine MACHINENUMBER, sWiegandDefine
3.3.12 GetDeviceIP [Protocol] VARIANT_BOOL GetDeviceIP([in] LONG dwMachineNumber, [in] BSTR *IPAddr) [Feature] Get IP address of machine. [Parameter Declaration]
IPAddr IP address [Example] Dim ipAddr As String CZKEM1.GetDeviceIP MACHINENUMBER, ipAddr
3.3.13 SetDeviceIP [Protocol] VARIANT_BOL SetDeviceIP([in] LONG dwMachineNumber, [in] BSTR IPAddr) [Feature] Set the IP address. [Parameter Declaration] Please refer to GetDeviceIP [Returned Value] Return True for success, or otherwise False. [Example] 41
Dim ipAddr Dim flag As Boolean ipAddr = "192.168.100.173" flag = CZKEM1.SetDeviceIP(MACHINENUMBER, ipAddr)
3.3.14 GetDeviceMAC [Protocol] VARIANT_BOOL GetDeviceMAC([in] LONG dwMachineNumber, [in] BSTR *sMAC) [Feature] Get MAC address of machine. [Parameter Declaration]
sMAC
MAC address [Returned Value] Return True for success, or otherwise False. [Example] Dim sMac As String CZKEM1.GetDeviceMAC MACHINENUMBER, sMac
3.3.15 GetDeviceTime [Protocol] VARIANT_BOOL GetDeviceTime([in] LONG dwMachineNumber, [in] LONG* dwYear, [in] LONG* dwMonth, [in] LONG* dwDay, [in] LONG* dwHour, [in] LONG* dwMinute, [in] LONG* dwSecond) [Feature] Get machine time. [Parameter Declaration]
dwYear
dwMonth
dwDay
dwHour
[Returned Value] Return True for success, or otherwise False. [Example] Dim dwYear As Long Dim dwMonth As Long Dim dwHour As Long Dim dwDay As Long Dim dwMinute As Long Dim dwSecond As Long
dwMinute
dwSecond
CZKEM1.GetDeviceTime MACHINENUMBER, dwYear, dwMonth, dwDay, dwHour, dwMinute, dwSecond ' Get machine time 42
3.3.16 GetSerialNumber [Protocol] VARIANT_BOOL GetSerialNumber([in] LONG dwMachineNumber, BSTR* dwSerialNumber) [Feature] Get product serial number. [Parameter Declaration]
dwMachineNumber Number of machine to be operated at present
dwSerialNumber Product serial number. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwSerialNumber As String CZKEM1.GetSerialNumber MACHINENUMBER, dwSerialNumber
3.3.17 GetProductCode [Protocol] VARIANT_BOOL GetProductCode([in] LONG dwMachineNumber, BSTR* lpszProductCode) [Feature] Get product serial number. [Parameter Declaration]
lpszProductCode Product model. [Returned Value] Return True for success, or otherwise False. [Example] Dim ipsxProductCode As String CZKEM1.GetProductCode MACHINENUMBER, ipsxProductCode
3.3.18 GetFirmwareVersion [Protocol] VARIANT_BOOL GetFirmwareVersion([in] LONG dwMachineNumber, [in] BSTR* strVersion) [Feature] Get firmware version number. [Parameter Declaration]
strVersion Firmware version number 43
[Returned Value] Return True for success, or otherwise False. [Example] Dim strVersion As String CZKEM1.GetFirmwareVersion MACHINENUMBER, strVersion
3.3.19 GetSDKVersion [Protocol] VARIANT_BOOL GetSDKVersion([in] BSTR* strVersion) [Feature] Get version number of offline SDK. [Parameter Declaration]
strVersion Version number of offline SDK. [Returned Value] Return True for success, or otherwise False. [Example] Dim strVersion As String CZKEM1.GetSDKVersion strVersion
3.3.20 PowerOnAllDevice [Protocol] PowerOnAllDevice() [Feature] Power on all machines. [Parameter Declaration] Return True for success, or otherwise False. [Example] CZKEM1.PowerOnAllDevice
3.3.21 PowerOffDevice [Protocol] VARIANT_BOOL PowerOffDevice([in] LONG dwMachineNumber) [Feature] Power off the machine. [Parameter Declaration]
dwMachineNumber Machine No. 44
[Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.PowerOffDevice MACHINENUMBER
3.3.22 PlayVoiceByIndex [Protocol] VARIANT_BOOL PlayVoiceByIndex([in] LONG Index) [Feature] Play audio files with index [Parameter Declaration]
Index Audio index. [Returned Value] Return True for success, or otherwise False. [Example] Dim i As Integer i=1 CZKEM1.PlayVoiceByIndex I
3.3.23 QueryState [Protocol] VARIANT_BOOL QueryState([in] LONG *State) [Feature] Get the machine status. [Parameter Declaration]
State Status value [Returned Value] Return True for success, or otherwise False. [Example] Dim state As Integer CZKEM1.QueryState state
3.3.24 RestartDevice [Protocol] VARIANT_BOOL RestartDevice([in] LONG dwMachineNumber) 45
[Feature] Restart the machine. [Parameter Declaration]
dwMachineNumber Machine No. [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.RestartDevice MACHINENUMBER
3.3.25 SetDeviceInfo [Protocol] VARIANT_BOOL SetDeviceInfo([in] LONG dwMachineNumber, [in] LONG dwInfo, [in] LONG dwValue) [Feature] Set the machine parameters [Parameter Declaration] Please refer to GetDeviceInfo [Returned Value Return True for success, or otherwise False. [Example] Dim dwInfo As Integer Dim dwValue As Integer dwInfo = 35 dwValue = 322 CZKEM1.SetDeviceInfo MACHINENUMBER, dwInfo, dwValue
3.3.26 SetDeviceTime [Protocol] VARIANT_BOOL SetDeviceTime([in] LONG dwMachineNumber) [Feature] Set the machine time [Parameter Declaration]
dwMachineNumber Number of machine to be operated [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.SetDeviceTime MACHINENUMBER ' Set machine time with sys
46
3.3.27 SetDeviceTime2 [Protocol] VARIANT_BOOL SetDeviceTime2([in] LONG dwMachineNumber, [in] LONG dwYear, [in] LONG dwMonth, [in] LONG dwDay, [in] LONG dwHour, [in] LONG dwMinute, [in] LONG dwSecond) [Feature] Set the time by the same means as that of SetDeviceTime. [Parameter Declaration] It includes machine number, year, month, date, hour, minute and second. [Returned Value] Return True for success, or otherwise False. [Example] Dim dwYear As Integer Dim dwMonth As Integer Dim dwDay As Integer Dim dwHour As Integer Dim dwMinute As Integer Dim dwSecond As Integer dwYear = 2008 dwMonth = 8 dwDay = 8 dwHour = 8 dwMinute = 8 dwSecond = 8 CZKEM1.SetDeviceTime2 MACHINENUMBER, dwYear, dwMonth, dwDay, dwHour, dwMinute, dwSecond
3.3.28 SetDeviceMAC [Protocol] VARIANT_BOOL SetDeviceMAC([in] LONG dwMachineNumber, [in] BSTR sMAC) [Feature] Set MAC value of the machine. [Parameter Declaration] Please refer to GetDeviceMAC [Returned Value] Return True for success, or otherwise False. [Example] Dim sMAC SMAc = “00:50:54:00:0C:FC” CZKEM1.SetDeviceMAC MACHINENUMBER, sMAC
47
3.3.29 SetWiegandDefine [Protocol] VARIANT_BOOL SetWiegandDefine([in] LONG dwMachineNumber, [in] BSTR sWiegandDefine) [Feature] Set Wiegand value of the machine [Parameter Declaration] Please refer to GetWiegandDefine [Returned Value] Return True for success, or otherwise False. [Example] Dim sWiegandDefine sWiegandDefine = "2322" CZKEM1.SetWiegandDefine MACHINENUMBER, sWiegandDefine
3.3.30 SetCommPassword [Protocol] VARIANT_BOOL SetCommPassword([in] LONG CommKey) [Feature] Set connection password [Parameter Declaration]
CommKey Connection password. [Returned Value] Return True for success, or otherwise False. [Example] Dim commkey As Integer commkey = 1234 CZKEM1.SetCommPassword commkey
3.3.31 UpdateFirmware [Protocol] VARIANT_BOOL UpdateFirmware([in] BSTR FirmwareFile) [Feature] Modify firmware. [Parameter Declaration]
FirmwareFile Firmware name including full path. 48
[Returned Value] Return True for success, or otherwise False. [Example] Dim firmwareFile firmwareFile = "c:\nananananan" CZKEM1.UpdateFirmware firmwareFile
3.3.32 WriteLCD [Protocol] VARIANT_BOOL WriteLCD([in] LONG Row, LONG Col, BSTR Text) [Feature] Display information in LCD screen. [Parameter Declaration]
Row The first row
Col The first line
BSTR Content displayed. [Returned Value] Return True for success, or otherwise False. [Example] Dim row As Integer Dim col As Integer Dim text row = 1 col = 1 text = "Hello Beetfuxi pei" CZKEM1.WriteLCD row, col, text
3.4 Others 3.4.1 CaptureImage [Protocol] VARIANT_BOOL CaptureImage([in] VARIANT_BOOL FullImage, [in] LONG *Width, [in] LONG *Height, [in] BYTE *Image,[in] BSTR ImageFile) [Feature] 49
Grab present fingerprint images of offline fingerprint machine. [Parameter Declaration] FullImage True to return the whole fingerprint image, otherwise return the feature section of the fingerprint. Width Width of specified image Height Width of specified height Image Save the collected images in the variant in the form of binary system. ImageFile Save the collected fingerprints in file form, including file paths, such as c:\aaa.bmp. [Returned Value] Return True for success, or otherwise False. [Example] Dim fullImage Dim width As Integer Dim height As Integer Dim image(1024 * 8) As Byte Dim imageFile fullImage = False width = 88 height = 88 imageFile = "c:\fp1.bmp" CZKEM1.CaptureImage fullImage, width, height, image(0), imageFile [Instruction] The necessity of the function existence is relative small due to little use, and the function is old version. Although it can be seen in SDK, it has been dropped.
3.4.2 CancelOperation [Protocol] VARIANT_BOOL CancelOperation() Read only [Feature] Cancel the present operation. If user registration is present, registration will be cancelled while performing function. [Parameter Declaration] Return True for success, or otherwise False. [Example] CZKEM1.CancelOperation
3.4.3 GetLastError [Protocol] 50
GetLastError([in] LONG* dwErrorCode) [Feature] Get error information. [Parameter Declaration] dwErrorCode Error numbers gotten are described as follows: Value Description 1 SUCCESSED 4 ERR_INVALID_PARAM 0 ERR_NO_DATA -1 ERROR_NOT_INIT -2 ERROR_IO -3 ERROR_SIZE -4 ERROR_NO_SPACE -100 ERROR_UNSUPPORT [Returned Value] Return True for success, or otherwise False. [Example] Dim errorCode As Long CZKEM1.GetLastError errorCode
3.4.4 StartVerify [Protocol] VARIANT_BOOL StartVerify([in] LONG UserID, [in] LONG FingerID) [Feature] Start to 1:1 match fingerprint. [Parameter Declaration] UserID User Registration Number FingerID Fingerprint index [Example] Dim UserID As Integer Dim fingerID As Integer UserID = 1 fingerID = 1 CZKEM1.StartVerify UserID, fingered
3.4.5 StartEnroll [Protocol] 51
VARIANT_BOOL StartEnroll([in] LONG UserID, [in] LONG FingerID) [Feature] Start to register user. [Parameter Declaration] Please refer to function StartVerify. [Example] Dim userID As Integer Dim fingerID As Integer userID = 6 fingerID = 0 CZKEM1.StartEnroll userID, fingered
3.4.6 StartIdentify [Protocol] VARIANT_BOOL StartIdentify() [Feature] Start to 1:N match. [Returned Value] Return True for success, or otherwise False. [Example] CZKEM1.StartIdentify
4.
Solutions to frequently asked questions, FAQ
4.1 How to download attendance record First of all, all attendance record can be read to memory with ReadGeneralLogData function, and then circularly use GetGeneralLogData to get it. When GetGeneralLogData function returns to False, reading attendance record is finished and read records are written in the database or shown in other forms, and then download of attendance record is finished. Download of management record is as above.
4.2 How to create user online Firstly, use SetuserInfo function to write relevant user record in the machine, such as registration number, password and name. Secondly, use SetUserTmpStr/SetUerTmp/SetEnrollDataStr/SetEnrollData function to write fingerprint template for user; the method is suitable for completing collecting user information and storing it in such media as database. It is unnecessary for users to reregister offline, so it improves registration efficiency.
52
4.3 Data import and download for U disk In the present offline products, A5 can supply U disk to download data. Many customers concern the data format of U disk. Due to complication of data format downloaded, we import the data in U disk to the tool software in the open database where customers can read the downloaded data.
4.4 BIOKEY collect fingerprint template and write in offline When fingerprint is collected with BIOKEY, fingerprint template is got generally while registering. For example, fingerprint template can be gotten in the event OnEnroll. Then gotten fingerprint template can be written in. Please refer to chapter 4.2 for the write procedure. 4.5 Get all the information of all users Firstly, use ReadAllUserID to read all user ID numbers to memory. Secondly, use GetAllUserID to circularly get user EnrollNumber. Finally, use GetUserInfo function to get user information. If the data of fingerprint templates is also needed, character string fingerprint templates can be got through GetUserTmpStr function. 4.6 Machine connection Machine can be viewed as an independent PC in the process of connection. But note that IP addresses of machine must exactly match with the connected IP addresses. There are serial port and network connection for some machines such as F4. In different processes of connection, different settings must be performed for machine and modifying communication way is also necessary, and you must adjust all controller switches to TCP/IP or 232/485, otherwise connection will fail. Sometimes the connection may fail due to busy serial port, it can be achieved by restarting program. If application connects machine but without manual cut-off, auto break time of machine can be set with DisableDeviceWithTimeOut function. In some process of connection, because download and modification of data through serial port or network are the same as database. In order to keep data conformity and avoid errors, EnableDevice can be set in the operating mode. 4.7 Password is unusable after SetUserInfo Because Password may be set to empty after performing function, then verification cannot be conducted with password. Before using SetUserInfo, it is necessary to get user password with GetUserInfo, then pass the password value to Password parameter of SetUserInfo, password can remain unchanged when writing in user information. 4.8 Conversion from Online template to offline template Collected fingerprint template can be converted to offline fingerprint template with 0FPTempConvertNew. Please refer to chapter 4.4/3.1.9 for how to get the template collected by BIOKEY. The function converts binary fingerprint template. The temp1 and temp2 parameter of the function are both binary. BIOKEY fingerprint template in character string format also can be converted to offline fingerprint template with FPTempConvertNewStr function.
53
4.9 Demo program cannot connect the machine Sometimes, user installs attendance management program that can be used to connect machine, but using Demo cannot connect machine. The reason is that dynamic link library is only copied in the directory of attendance management program without registration when stalling the attendance management software. The library can be registered in the system before running Demo, and then Demo program can be used to connect machine. 4.10 Offline fingerprint machine is in the operation mode after connection When communicating with offline fingerprint machine, generally use EnableDevice function to make offline fingerprint machine in the operating mode (refer to explanation of EnableDevice function) to ensure data conformity and avoid abnormal condition. In the operating mode, its keyboard and fingerprint read head stop work, i.e in the unusable status. After communication, you can cut-off the machine or reuse EnableDevice to restore offline fingerprint machine to normal status. 4.11 Details are needed to be paid attention to when complex font letters are written in offline fingerprint machine When complex font letters are written in the offline fingerprint machine, the property of ConvertBIG5 should be modified to 1, for example CZKEM1.ConvertBIG5 = 1. The purpose is to avoid displaying scrambling code when displaying complex font.
54
5.
After-sales service for software
Thanks for your concern on the product and we will continue to offer perfect service. Please enter our technology BBS and fill in whole registration information, to help us to contact with you in time. Our working hours is 9:00 am to 18:00 pm from Monday to Friday with attendance in Saturday, excluding legal holidays and Sunday. We welcome your calls at any time and provide fast solutions for you. Before call, Please confirm that all other applications used have been closed according to the manual. Address: Room 1008, Pacific International Building, #106, Zhichun Road, Zhongguancun, Beijing, 100086 P.R.China Post Code: 100086 Tel: 010-51518010, 51518011, 51518012, 51518013, 51518014 Fax: 010-51518015 E-mail
[email protected]
If you have any question about the product technology, please prepare the following information, so we can solve your problems and offer service in short time: 1. Software Name 2. Your Computer information, including brand, model, CPU, memory, CD-ROM and brand of mainboard. 3. Windows 95/98/NT4.0/2000/XP or other operating environments 4. Any application you are using 5. Details for your problem(s)
You may vist our website www.zksoftware.com to access Technical BBS and post your questions and precious suggestions. We will paste satisfied replies for you as earlier as I can.
55