关于考勤机

AC671,是新换的机器,以前的那部机器,通过网络死活连接不上,换了AC671网络连接是好用了.但是,我要吐槽

浩顺的考勤机应该是卖了很多了吧,可是自带的软件太不给力,最后分析出来的数据一大堆,并不好用.so,试试看二次开发

联系卖家要来了二次开发包,是一个EXE文件,安装,下一步直到完成.安装后的内容包含例程(VB程序,我没写错,是VB工程,不是VB.NET,为了看代码我又装了一个VB6.0),

DLL和OCX(功能基本一样,都是com组件),PDF(接口说明文档),可执行文件(测试用).

二次开发

看了两遍文档,基本上了解接口的使用,新建工程作下测试.工程就是普通的winform工程,工程建好后添加控件引用,

开始添加dll的引用,死活添加不了,转换成托管代码时也是报错,把能试的方法都用过了,dll的引用也没添加上.

dll的引用不行,还有一个OCX,添加对OCX的引用,具体方法是,在toolbox上添加自定义控件的方式来使用ocx控件

其中,FOWAttend.ocx是用来和考勤机通信的;FKRealSvr.ocx是用来建立考勤机实时监控的.两个OCX在安装后自动注册到系统中(我的是win7 32位中文)

下面两个控件使用后,得到的是你在登记指纹时的登记号,如我的是0000007,没有录名字,但是我们开发的软件不知道这个00000007是谁

所以还要用DB(文件)记录下登记号000007所对应的人的名字,以方便后续的分析

FOWAttend.ocx的使用

新建普通winform工程后,拖一个FOWAttend.ocx的控件到form1上,下面上代码

private void button1_Click(object sender, EventArgs e)

{

// 通过网络连接到考勤机

int machineNo = 1;

string IP = "192.168.1.240"; // 考勤机IP

int port = 5005;

int timeOut = 5000;

int protocolType = 0;

int netPassword = 0;

int license = 1261;

int ret = axFOWAttend1.ConnectNet(machineNo, IP, port, timeOut, protocolType, netPassword, license);

Debug.WriteLine("ret:" + ret); // 返回1,连接正常,其它有错误

}

private void button2_Click(object sender, EventArgs e)

{

// 断开连接

axFOWAttend1.DisConnect();

}

private void button3_Click(object sender, EventArgs e)

{

// 文档上有说明,要读取数据必须用两个方法,LoadGeneralLogData和GetGeneralLogData

int ret = axFOWAttend1.LoadGeneralLogData(0);

int ret2 = 0;

if (ret == 1)

{

int enrollNum = 7;

int verifyMode = 1;

int inOutMode = 1;

while (ret2 != -7) // -7是最后一条时的返回值

{

DateTime dt = DateTime.Now;

// GetGeneralLogData方法参数是ref的,是把考勤信息写到ref变量中,供后面使用,参数意义可参考文档.需要自己循环读取全部考勤记录

ret2 = axFOWAttend1.GetGeneralLogData(ref enrollNum, ref verifyMode, ref inOutMode, ref dt);

Debug.WriteLine(string.Format("ret:{0}, user:{1}, datetime:{2}", ret2, enrollNum, dt.ToString("yyyy-MM-dd HH:mm:ss")));

}

}

}

FKRealSvr.ocx的使用

新建普通winform工程,添加FKRealSvr.ocx到toobox上,并拖一个到form1上,接着上代码

public Form1()

{

InitializeComponent();

axFKRealSvr1.OnReceiveGLogData += new AxFKREALSVRLib._DFKRealSvrEvents_OnReceiveGLogDataEventHandler(axFKRealSvr1_OnReceiveGLogData);

}

private void button1_Click(object sender, EventArgs e)

{

int ret = axFKRealSvr1.OpenNetwork(7005);

Debug.WriteLine("open ret:" + ret);

}

private void button2_Click(object sender, EventArgs e)

{

int ret = axFKRealSvr1.CloseNetwork(7005);

Debug.WriteLine("close ret:" + ret);

}

public void axFKRealSvr1_OnReceiveGLogData(object sender , AxFKREALSVRLib._DFKRealSvrEvents_OnReceiveGLogDataEvent e)

{

// 这里的e还其它值,按需要使用

Debug.WriteLine(string.Format("num: {0}, date: {1}", e.anSEnrollNumber, e.anLogDate.ToString("yyyy-mm-dd HH:mm:ss")));

}

最后使用FKRealSvr.ocx还有一个要注意的地方,否则就不会得到任何数据

要注意的地方是,要在考勤机上作以下三个设置,服务器IP, 服务器端口, 是否同步传输选择是

这样就可以实时的收到打指纹的数据

最后

说明文档的说明写的有点绕口,而且我还没找到通过软件进行打卡的功能,如果找到这个,写个程序,每天在一定时间内自动打卡,呵呵!!!

最后的最后

java二次开发考勤机_浩顺AC671指纹考勤机二次开发(demo)相关推荐

  1. 浩顺AC671指纹考勤机二次开发(demo)

    关于考勤机 AC671,是新换的机器,以前的那部机器,通过网络死活连接不上,换了AC671网络连接是好用了.但是,我要吐槽 浩顺的考勤机应该是卖了很多了吧,可是自带的软件太不给力,最后分析出来的数据一 ...

  2. tipask二次开发总结_测试经验总结(“二次开发”)

    不知不觉已经工作五年时间了,从茁壮.康拓普.利鑫云端到现在的惠卡世纪,经历过机顶盒软件(嵌入式).企业管理软件(供电局管理系统).门户网站.互联网彩票.互联网金融.O2O.电商等各种不同业务.不同平台 ...

  3. python 大数据开发工程师_大数据系列之大数据开发工程师

    继续介绍大数据系列岗位的要求,今天是"最热门"的岗位大数据开发工程师,之所以说热门主要是基于2个原因,一是因为很多应届生或者想转入大数据行业的同学,都是期望从事"大数据开 ...

  4. 安卓app开发工具_四川智慧社区安卓手机app开发多少钱

    四川智慧社区安卓手机app开发多少钱 注册登录应用公园后,有两种APP制作模式: 1.主题模式: 应用公园平台提供了上百个配置好的APP模板,可以直接使用,把图片文字替换就可以直接使用.如下图所示: ...

  5. 项目开发流程_绿维文旅:旅游项目开发模式与流程

    一.旅游项目开发模式 旅游综合开发是立足旅游项目自有资源基础,以旅游产业为主导,以市场为导向,以资本为驱动,以资源整合为核心,通过集中土地.资本.技术.交通.劳动力等生产要素,推进土地开发.交通建设. ...

  6. python数据分析开发环境_在MAC上搭建python数据分析开发环境

    最近工作转型到数据开发领域,想在本地搭建一个数据开发环境.自己有三年python开发经验,马上想到使用numpy.scipy.sklearn.pandas搭建一套数据开发环境. ubuntu的环境,百 ...

  7. python生成二维码教程_使用Python生成个性二维码

    任务目的 这一步会介绍通过Python中的MyQR包实现生成二维码的操作,包括生成普通二维码.带有静态图和动态图的二维码,同时也会对MyQR生成二维码的常用参数进行介绍说明. 任务步骤注:CVM适合用 ...

  8. java restful接口开发实例_实战:基于Spring Boot快速开发RESTful风格API接口

    写在前面的话 这篇文章计划是在过年期间完成的,示例代码都写好了,结果亲戚来我家做客,文章没来得及写.已经很久没有更新文章了,小伙伴们,有没有想我啊.言归正传,下面开始,今天的话题. 目标 写一套符合规 ...

  9. JAVA线程并发数量控制_线程同步工具(二)控制并发访问多个资源

    声明:本文是< Java 7 Concurrency Cookbook>的第三章, 作者: Javier Fernández González 译者:郑玉婷 控制并发访问多个资源 在并发访 ...

  10. java内存分配模型优点_高并发实战(二)-并发基础 缓存 MESI 内存模型

    左图为高速缓存 右图为多级缓存 数据的读取和存储都经过高速缓存,CPU核心与高速缓存有一条特殊的快速通道.主存与高速缓存都是连接在系统总线上,当然其他组件也是在此基础上进行通信的. 在高速缓存出现后不 ...

最新文章

  1. Android——电脑蓝屏重启后,studio无法认出Android环境 setup JDK(缓存!缓存!缓存)...
  2. linux ssh编译命令,linux下升级 OpenSSH
  3. 《JavaScript启示录》——1.7 原始值(或简单值)
  4. java点歌系统_Java实现模拟KTV点歌系统
  5. springboot蛋糕甜品点销售商城系统java
  6. matlab学习增强学习,使用 MATLAB 和 Simulink 进行强化学习
  7. 小样本学习数据集||Omniglot和miniImagenet||MAML算法测试
  8. Word高效指南 - 快速合并多个文档
  9. 科大讯飞离线语音命令词识别的使用说明
  10. L1-030 一帮一(c++实现)
  11. c++计算数组的中值
  12. 2022电大国家开放大学网上形考任务-纳税筹划非免费(非答案)
  13. 软件测试中7个看透不说透的真理
  14. 菜鸟说有线网络连接故障
  15. H265/HEVC编解码系列(1):图像分割(Slice、Tile、CTU)
  16. SLURM 安装与配置
  17. AB153x(检测洛达芯片) 专治华强北
  18. Linux/macOS 安装 Kaldi
  19. 系统试运行报告是谁写的_费控系统项目实施情况说明
  20. python fontsize_python – Matplotlib图例fontsize

热门文章

  1. html document转换,mshtml.HTMLDocumentClass转换为IHTMLDocument2问题
  2. JavaScript 文件下载,二进制下载,文本下载的几种方式
  3. 提升效率之串口监控工具
  4. SQL Server维护工作详解
  5. 新版FMEA软件:特殊特性自动分类 免费申请试用(FMEAHunter)
  6. 淘宝新手开店从入门到精通→一路护航
  7. ghost系统之优劣?
  8. 免费的谷歌翻译api,Google Translate API
  9. php卡盟主站_《卡盟源码秒卡购》运营级别卡盟系统源码支持API站对接站[带有SUP+商户+支持秒搭建主站]...
  10. CSS - 盒子模型(下)