海康设备注册一直失败的问题

今天用JAVA对接海康设备,但是注册一直失败,ip、端口、用户名、密码都是正确的,一直百思不得其解,后来一番查询与排错,终于找到了原因,是因为没有初始化设备

初始化设备的代码(红框里的部分):

          if (!hCNetSDK.NET_DVR_Init()) {
                System.out.println(MachineName + ":初始化失败");
                return null;
            }

要初始化后才能注册,不然肯定注册失败,又上了一课

 

补充完整代码:
       

    //获取注册用户信息
	public static NativeLong getUser(String sDeviceIP, int sPort
			, String sDeviceUserName, String sDevicePassWord) {
            // 是否初始化成功
            if (!hCNetSDK.NET_DVR_Init()) {
                System.out.println(MachineName + ":初始化失败");
                return null;
            }
            // 注册设备
            NativeLong user = new NativeLong(-1);
            // 设备信息
            NET_DVR_DEVICEINFO_V30 devinfo = new HCNetSDK.NET_DVR_DEVICEINFO_V30();
            // 返回一个用户编号
            user = hCNetSDK.NET_DVR_Login_V30(sDeviceIP, sPort,
        		    sDeviceUserName, sDevicePassWord, devinfo);
            int Iuid = user.intValue();
            if (Iuid < 0) {
        	    int iErr = hCNetSDK.NET_DVR_GetLastError();
                System.out.println(MachineName + ":注册失败,错误号:" + iErr);
                return null;
            }
            System.out.println(MachineName + ":注册成功,代号:" + Iuid);
            return user;
	}

 

你可能感兴趣的:(java,海康)