zkteco iface702 (也可能叫IF702+ic) 中控考勤机java开发步骤一---连接考勤机 ,开门

龙哥8个月前软硬件集成308

中控脱机通讯开发包-6.3.1.38 里面有zkemkeeper.dll


链接:https://pan.baidu.com/s/1kC5chunZmquh1ucKY7jNIw 

提取码:1234



java使用jacob调用中控考勤机sdk方法

1、jacob-1.19版本

2、jdk1.8 64位(经过测试jacob.1.19支持64为jdk);


3、将jacob.jar 放入项目 WEB-INFO/lib下导入:


4、将jacob-1.19-x64.dll 放入64位 jre/bin目录下,我的是:D:\java\jdk1.8.0_101\jre\bin;


5、将中控考勤机sdk 的dll文件全部放入 c:\windows\system32 目录下


6、运行cmd 注册zkemkeeper.dll  --->regsvr32 c:\windows\system32\zkemkeeper.dll    (也可以使用  自动注册.bat)


7、成功后如下提示:会有弹框


8、已经配置完毕,进行代码测试:


  //zkemkeeper.ZKEM.1 为zkemkeeper.dll 注册成功后 在注册表可以查看:HKEY_CLASSES_ROOT最下面

package utils;

import com.jacob.activeX.ActiveXComponent;

/**
 * @ClassName:${type_name}
 * @Description:${todo}(考勤机连接测试)
 * @author: ZHOUPAN
 * @date ${date} ${time}
 * @Copyright: 2018 www.zsplat.com Inc. All rights reserved.
 * ${tags}
 */

public class ZkemSDK {

    private static ActiveXComponent zkem = new ActiveXComponent("zkemkeeper.ZKEM.1");

    /**
     * 链接考勤机
     *
     * @param address 考勤机地址
     * @param port    端口号
     * @return
     */
    public boolean connect(String address, int port) {
        boolean result = zkem.invoke("Connect_NET", address, port).getBoolean();
        return result;
    }

    /**
     * 断开考勤机链接
     */
    public void disConnect() {
        zkem.invoke("Disconnect");
    }

    public static void main(String[] args) {
        ZkemSDK sdk = new ZkemSDK();
        boolean  connFlag = sdk.connect("192.168.1.201", 4370);
        System.out.println("conn:"+connFlag);
    }
}
package utils;

import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
import net.sf.json.JSONObject;
import java.util.*;

/**
 * @ClassName:${type_name}
 * @Description:${todo}(连接、获取考勤机数据)
 * @author: ZHOUPAN
 * @date ${date} ${time}
 * @Copyright: 2018 www.zsplat.com Inc. All rights reserved.
 * ${tags}
 */
public class ZkemSDKUtils {

    //zkemkeeper.ZKEM.1 为zkemkeeper.dll 注册成功后 在注册表可以查看:HKEY_CLASSES_ROOT最下面
    private static ActiveXComponent zkem = new ActiveXComponent("zkemkeeper.ZKEM.1");

    /**
     * 连接考勤机
     *
     * @param address 考勤机地址
     * @param port    端口号
     * @return
     */
    public static boolean connect(String address, int port) {
        boolean result = zkem.invoke("Connect_NET", address, port).getBoolean();
        return result;
    }
    
    /**
     * 开门
     * @param dwMachineNumber 机器号
     * @param delay 开门延迟时间  秒
     * @return
     */
    public static boolean acUnlock(String dwMachineNumber , int delay) {
    	boolean result = zkem.invoke("ACUnlock", dwMachineNumber, delay).getBoolean();
    	return result;
    }

    public static void main(String[] args) {
        ZkemSDKUtils sdk = new ZkemSDKUtils();
        Map<String, Object> map = new HashMap<String, Object>();
        boolean connFlag = sdk.connect("192.168.1.201", 4370);
        if (connFlag) {
            boolean flag = sdk.acUnlock("001",5);//001机器号随便写的,请自行查找
            System.out.println("flag" + flag);
            System.out.println(JSONObject.fromObject(map).toString());
        }
    }

}


参考

https://www.cnblogs.com/zhou-pan/p/9365256.html

作者:龙哥leon
链接:http://anool.net
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 如果觉得文章对你有帮助,可以请我喝杯咖啡

相关文章

TM机械臂对接,智慧档案抓取机器人

TM机械臂对接机械臂监听服务器广播的指令,进行一系列机械臂操作,目前,用于档案的抓取...

涂鸦iot实战

涂鸦iot实战批量获取灯光id,循环调用灯光开关和亮度...

转-AI语音大成 构筑智慧家居语音生态系统 | 科大讯飞魔飞麦克风深度评测

转-AI语音大成 构筑智慧家居语音生态系统 | 科大讯飞魔飞麦克风深度评测

评测工程师 / Zorro科大讯飞作为国家四大人工智能创新平台,拥有中文智能语音最前沿的技术实力,正在引领AIoT时代将语音产业推向新高潮,讯飞在AI领域全面的技术积累和引领示范,可以轻松支撑智能家居...

热成像模块对接

热成像模块对接头部热成像系统,将人脸照片和温度数据上传到我们的安卓app或者网页,进行展示...

室内蓝牙定位技术

一个基站布置好后,厂商的服务装好之后,44444端口下有些接口可以查询,当前蓝牙设备的xy坐标和数据更新时间...

对接中控门禁

厂商提供了一个java项目叫attpush大概流程就是启动这个项目比如192.168.1.19:8085门禁上去设置服务器的ip和端口门禁的用户和通行记录他会上传到attpush,这样你就可以选择上传...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。