Foxtable(狐表)用户栏目专家坐堂 → 求教中控考勤机指纹和面部下载


  共有4019人关注过本帖树形打印复制链接

主题:求教中控考勤机指纹和面部下载

帅哥哟,离线,有人找我吗?
KB2020
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:50 积分:371 威望:0 精华:0 注册:2023/4/25 10:09:00
求教中控考勤机指纹和面部下载  发帖心情 Post By:2023/7/12 9:33:00 [只看该作者]

执行函数GetUserTmpEx报错,这里要怎么写
Dim axCZKEM1 As New zkemkeeper.CZKEM
Dim bIsConnected = axCZKEM1.Connect_Net("10.11.1.5", "4370")
If bIsConnected = False Then
    MsgBox("Please connect the device first", MsgBoxStyle.Exclamation, "Error")
    Return ""
End If
Dim iGLCount = 0
Dim idwErrorCode As Integer
Dim iMachineNumber As Integer = 1
Dim dwEnrollNumber As String
Dim dwFingerIndex As Integer
Dim Flag As Integer
Dim TmpData As Integer
Dim TmpLength As Integer
If AxCZKEM1.ReadAllTemplate(iMachineNumber) Then
    Output.Show("OK")
    ''''下载指纹代码有问题
    While AxCZKEM1.GetUserTmpEx(iMachineNumber, dwEnrollNumber, dwFingerIndex, Flag, TmpData, TmpLength)
            iGLCount += 1
            output.show(iGLCount.ToString())
            output.show(dwEnrollNumber) 
            output.show(dwFingerIndex.ToString())
            output.show(Flag.ToString())
            output.show(TmpData.ToString())
            output.show(TmpLength.ToString())
            output.show("-----------------------------")
    End While
Else
    AxCZKEM1.GetLastError(idwErrorCode)
    If idwErrorCode <> 0 Then
        MsgBox("Reading data from terminal failed,ErrorCode: " & idwErrorCode, MsgBoxStyle.Exclamation, "Error")
    Else
        MsgBox("No data from terminal returns!", MsgBoxStyle.Exclamation, "Error")
    End If
End If

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/12 9:35:00 [只看该作者]

调试
……
    ''''下载指纹代码有问题
msgbox(1)
    While AxCZKEM1.GetUserTmpEx(iMachineNumber, dwEnrollNumber, dwFingerIndex, Flag, TmpData, TmpLength)
msgbox(2)
            iGLCount += 1
msgbox(3)
            output.show(iGLCount.ToString())
msgbox(4)
            output.show(dwEnrollNumber) 
msgbox(5)
            output.show(dwFingerIndex.ToString())
msgbox(6)
            output.show(Flag.ToString())
msgbox(7)
            output.show(TmpData.ToString())
msgbox(8)
            output.show(TmpLength.ToString())
msgbox(9)
            output.show("-----------------------------")
    End While
……
看哪个提示不能弹出来

 回到顶部
帅哥哟,离线,有人找我吗?
KB2020
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:50 积分:371 威望:0 精华:0 注册:2023/4/25 10:09:00
  发帖心情 Post By:2023/7/12 9:37:00 [只看该作者]

msgbox(2)弹不出来

 回到顶部
帅哥哟,离线,有人找我吗?
KB2020
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:50 积分:371 威望:0 精华:0 注册:2023/4/25 10:09:00
  发帖心情 Post By:2023/7/12 9:39:00 [只看该作者]

报这个错误
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20230712093806.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2023/7/12 9:39:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/12 9:41:00 [只看该作者]

AxCZKEM1.GetUserTmpEx这个是第三方硬件厂家提供的函数,如果有问题只能找硬件厂家了。

试试这个参数给个初始值看看,看看开发文档这个参数是不是有什么特殊要求

Dim dwEnrollNumber As String = ""

 回到顶部
帅哥哟,离线,有人找我吗?
KB2020
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:50 积分:371 威望:0 精华:0 注册:2023/4/25 10:09:00
  发帖心情 Post By:2023/7/12 9:45:00 [只看该作者]

加了初始值之后,就弹出"1",后面不弹出,也没报错

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/12 9:47:00 [只看该作者]

看看开发文档这个参数是不是有什么特殊要求。函数说明发上来看看

 回到顶部
帅哥哟,离线,有人找我吗?
KB2020
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:50 积分:371 威望:0 精华:0 注册:2023/4/25 10:09:00
  发帖心情 Post By:2023/7/12 9:53:00 [只看该作者]

VARIANT_BOOL GetUserTmpEx ( LONG  dwMachineNumber,

BSTR  dwEnrollNumber,

LONG  dwFingerIndex,

LONG   *Flag,

BYTE   *TmpData,

LONG   *TmpLength 

)

以二进制方式获得用户ZKFinger 10.0指纹模板 ,和GetUserTmpExStr不同的仅是指纹模板格式不同而已。

参数

参数说明如下表:

name

type

param direction

description of param

dwMachineNumber

LONG

[in]

机器号

dwEnrollNumber

BSTR

[in]

用户号

dwFingerIndex

LONG

[in]

指纹索引号

Flag

LONG*

[out]

标示指纹模板是否有效或者是否为胁迫指纹

TmpData

BYTE*

[out]

指纹模板

TmpLength

LONG*

[out]

指纹模板长度

返回

返回值说明如下:

name

type

description of value

True

BOOL

函数执行成功

False

BOOL

函数执行失败

 

 

 

 

参见

注意

1.要求机器固件支持胁迫指纹功能(固件内部版本号 Ver6.60 及以上)。
2.Flag参数标示指纹模板是否有效或者是否为胁迫指纹,其具体表示为:0 表示指纹模板无效,1 表示指纹模板有效,3 表示胁迫指纹。

注解

适用于BW,TFT,IFACE设备 


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110574 积分:562760 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/7/12 9:58:00 [只看该作者]

Dim dwEnrollNumber As String
改为
Dim dwEnrollNumber As new Stringbuilder

然后试试
dim 返回值 as boolean = AxCZKEM1.GetUserTmpEx(iMachineNumber, dwEnrollNumber, dwFingerIndex, Flag, TmpData, TmpLength)
if 返回值 then
msgbox("执行成功")
else
msgbox("执行失败")
end if

 回到顶部
帅哥哟,离线,有人找我吗?
KB2020
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:50 积分:371 威望:0 精华:0 注册:2023/4/25 10:09:00
  发帖心情 Post By:2023/7/12 10:06:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20230712100519.png
图片点击可在新窗口打开查看

这样不行,报错

 回到顶部
总数 17 1 2 下一页