.版本 2
.支持库 Biokey
.支持库 iext
.支持库 eDB
.程序集 窗口程序集1
.程序集变量 FMatchType, 整数型
.程序集变量 fpcHandle, 整数型
.程序集变量 指纹数据, 文本型
.子程序 _窗口_指纹管理_创建完毕
.判断开始 (指纹控件.InitEngine () = 0) ' 初始化判断
指纹数据 = 指纹控件.SensorSN
状态条.置文本 (0, “指纹仪序列号:” + 到文本 (指纹控件.SensorIndex))
状态条.置文本 (1, “指纹仪个数:” + 到文本 (指纹控件.SensorCount))
' 状态条.置文本 (2, “当前使用:” + 到文本 (ZKFPEngX1.SensorIndex))
.默认
信息框 (“初始化硬件失败。”, 0, )
结束 ()
.判断结束
.如果真 (数据库连接.连接SQLServer (“127.0.0.1”, “jhzw”, “sa”, “123”) = 假)
信息框 (“连接数据库失败.”, 0, )
返回 ()
.如果真结束
记录集.置连接 (数据库连接)
初始化程序 ()
.子程序 _按钮_浏览_被单击
.如果真 (通用对话框.打开 () = 真)
图片框_头像.图片 = 读入文件 (通用对话框.文件名)
.如果真结束
.子程序 初始化程序
.局部变量 次数, 整数型
.局部变量 临时变量, 文本型
.局部变量 索引, 整数型
.如果真 (记录集.打开 (“select * from zhuwenxinxi”, #SQL语句) = 假)
信息框 (“连接数据表失败”, 0, )
结束 ()
.如果真结束
.计次循环首 (记录集.记录数量, 次数)
记录集.读文本 (“gonghao”, 临时变量)
索引 = 超级列表框_指纹库.插入表项 (, , , , , )
超级列表框_指纹库.置标题 (索引, 0, 临时变量)
记录集.读文本 (“touxiang”, 临时变量)
图片框_头像.图片 = 到字节集 (临时变量)
记录集.读文本 (“xingming”, 临时变量)
超级列表框_指纹库.置标题 (索引, 1, 临时变量)
记录集.读文本 (“shouji”, 临时变量)
超级列表框_指纹库.置标题 (索引, 2, 临时变量)
记录集.读文本 (“zhiwen1”, 临时变量)
.如果 (临时变量 ≠ “”)
超级列表框_指纹库.置标题 (索引, 3, “登记”)
.否则
超级列表框_指纹库.置标题 (索引, 3, “未登记”)
.如果结束
记录集.读文本 (“zhiwen2”, 临时变量)
.如果 (临时变量 ≠ “”)
超级列表框_指纹库.置标题 (索引, 4, “登记”)
.否则
超级列表框_指纹库.置标题 (索引, 4, “未登记”)
.如果结束
记录集.读文本 (“dengjirqi”, 临时变量)
超级列表框_指纹库.置标题 (索引, 5, 临时变量)
记录集.到下一条 ()
.计次循环尾 ()
记录集.关闭 ()
.子程序 _按钮_登记指纹_被单击
.如果真 (编辑框_姓名.内容 = “”)
信息框 (“请填写用户。”, 0, )
返回 ()
.如果真结束
.如果真 (编辑框_工号.内容 = “”)
信息框 (“请填写用户编号。”, 0, )
返回 ()
.如果真结束
.如果真 (图片框_头像.图片 = { })
信息框 (“请选择图片”, 0, )
返回 ()
.如果真结束
.如果真 (编辑框_手机.内容 = “”)
信息框 (“请输入手机号码。”, 0, )
返回 ()
.如果真结束
编辑框_日期.内容 = 到文本 (取现行时间 ())
指纹控件.BeginEnroll ()
透明标签_状态.标题 = “请输入3次指纹。”
.子程序 _窗口_指纹管理_将被销毁
指纹控件.EndEngine ()
.子程序 _指纹控件_OnEnroll
.参数 ActionResult1, 逻辑型
.参数 ATemplate, 变体型
.局部变量 索引, 整数型
.局部变量 次数, 整数型
.局部变量 临时变量, 文本型
.局部变量 sql, 文本型
指纹数据 = 指纹控件.GetTemplateAsString ()
.如果 (ActionResult1)
透明标签_状态.标题 = “注册成功”
索引 = 超级列表框_指纹登记.插入表项 (, , , , , )
超级列表框_指纹登记.置标题 (索引, 0, 编辑框_工号.内容)
超级列表框_指纹登记.置标题 (索引, 1, 编辑框_姓名.内容)
.如果真 (组合框.现行选中项 = 0)
sql = “insert into zhuwenxinxi(touxiang, gonghao, xingming, shouji,zhiwen1,dengjirqi) values('” + 到文本 (图片框_头像.图片) + “', '” + 编辑框_工号.内容 + “', '” + 编辑框_姓名.内容 + “', '” + 编辑框_手机.内容 + “', '” + 指纹数据 + “', '” + 编辑框_日期.内容 + “')”
输出调试文本 (数据库连接.执行SQL (sql))
.如果真结束
.如果真 (组合框.现行选中项 = 1)
数据库连接.执行SQL (“update zhuwenxinxi set zhiwen2='” + 指纹数据 + “' where gonghao='” + 编辑框_工号.内容 + “'”)
.如果真结束
.如果 (组合框.现行选中项 = 0)
超级列表框_指纹登记.置标题 (索引, 2, “录入成功”)
超级列表框_指纹登记.置标题 (索引, 3, 编辑框_日期.内容)
编辑框_日期.内容 = “”
图片框_指纹.图片 = { }
透明标签_状态.标题 = “”
组合框.现行选中项 = 1
.否则
超级列表框_指纹登记.置标题 (索引, 2, “录入成功”)
超级列表框_指纹登记.置标题 (索引, 3, 编辑框_日期.内容)
编辑框_姓名.内容 = “”
编辑框_工号.内容 = “”
图片框_头像.图片 = { }
编辑框_日期.内容 = “”
图片框_指纹.图片 = { }
透明标签_状态.标题 = “”
组合框.现行选中项 = 0
.如果结束
.' 如果真 (记录集.打开 (“select * from zhuwenxinxi”, #SQL语句) = 假)
' 信息框 (“连接数据表失败”, 0, )
' 结束 ()
.如果真结束
.' 如果真 (组合框.现行选中项 = 0)
' 记录集.添加 ()
' 记录集.写文本 (“gonghao”, 编辑框_工号.内容)
' 记录集.写文本 (“xingming”, 编辑框_姓名.内容)
' 记录集.写文本 (“shouji”, 编辑框_手机.内容)
' 记录集.写文本 (“zhiwen1”, 指纹数据)
' 记录集.写文本 (“dengjirqi”, 编辑框_日期.内容)
.如果真结束
.' 如果真 (组合框.现行选中项 = 1)
.' 计次循环首 (记录集.记录数量, 次数)
' 记录集.读文本 (“gonghao”, 临时变量)
.' 如果真 (临时变量 = 编辑框_工号.内容)
' 记录集.写文本 (“zhiwen2”, 指纹数据)
' 跳出循环 ()
.如果真结束
' 记录集.到下一条 ()
.' 计次循环尾 ()
.如果真结束
' 记录集.更新 ()
' 记录集.关闭 ()
.否则
透明标签_状态.标题 = “注册失败”
.如果结束
.子程序 图片到二进制, 文本型
.参数 图片数据, 字节集
.局部变量 tempText, 文本型
.局部变量 n, 整数型
.变量循环首 (取字节集长度 (图片数据), 1, -1, n)
tempText = 到文本 (图片数据 [n]) + “|” + tempText
.变量循环尾 ()
返回 (tempText)
.子程序 _指纹控件_OnFeatureInfo
.参数 AQuality, 整数型
.如果真 (指纹控件.IsRegister) ' 输入消息
透明标签_状态.标题 = “还要输入” + 到文本 (指纹控件.EnrollIndex - 1) + “次” ' <!!!>
.如果真结束
.子程序 _指纹控件_OnImageReceived
.参数 AImageValid, 逻辑型, 参考
指纹控件.PrintImageAt (获取DC句柄 (图片框_指纹.取窗口句柄 ()), 图片框_指纹.顶边, 图片框_指纹.左边, 图片框_指纹.宽度, 图片框_指纹.高度)
.子程序 _指纹控件_OnCapture
.参数 ActionResult, 逻辑型
.参数 ATemplate, 变体型
.局部变量 返回数据, 文本型
.局部变量 注册改变, 逻辑型
返回数据 = 指纹控件.GetTemplateAsString ()
.如果真 (FMatchType = 1)
.如果 (指纹控件.VerFingerFromStr (指纹数据, 返回数据, 假, 注册改变)) ' 开始对比数据
信息框 (“对比成功”, 0, )
.否则
信息框 (“对比失败”, 0, )
.如果结束
.如果真结束
- 1
- 2
前往页