| | |
| | | public static NetSDKLib netsdk = NetSDKLib.NETSDK_INSTANCE; |
| | | public static NetSDKLib configsdk = NetSDKLib.CONFIG_INSTANCE; |
| | | |
| | | // 设备信息 |
| | | public static NetSDKLib.NET_DEVICEINFO_Ex m_stDeviceInfo = new NetSDKLib.NET_DEVICEINFO_Ex(); |
| | | |
| | | // 登陆句柄 |
| | | public static LLong m_hLoginHandle = new LLong(0); |
| | | |
| | | private static boolean bInit = false; |
| | | private static boolean bLogopen = false; |
| | | |
| | |
| | | * 登录设备 |
| | | * \endif |
| | | */ |
| | | public static long login(String m_strIp, int m_nPort, String m_strUser, String m_strPassword) { |
| | | public static LLong login(String m_strIp, int m_nPort, String m_strUser, String m_strPassword) { |
| | | //IntByReference nError = new IntByReference(0); |
| | | //入参 |
| | | NET_IN_LOGIN_WITH_HIGHLEVEL_SECURITY pstInParam = new NET_IN_LOGIN_WITH_HIGHLEVEL_SECURITY(); |
| | |
| | | pstInParam.szPassword = m_strPassword.getBytes(); |
| | | pstInParam.szUserName = m_strUser.getBytes(); |
| | | //出参 |
| | | //设备信息 |
| | | NetSDKLib.NET_DEVICEINFO_Ex m_stDeviceInfo = new NetSDKLib.NET_DEVICEINFO_Ex(); |
| | | NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY pstOutParam = new NET_OUT_LOGIN_WITH_HIGHLEVEL_SECURITY(); |
| | | pstOutParam.stuDeviceInfo = m_stDeviceInfo; |
| | | //m_hLoginHandle = netsdk.CLIENT_LoginEx2(m_strIp, m_nPort, m_strUser, m_strPassword, 0, null, m_stDeviceInfo, nError); |
| | | // 登陆句柄 |
| | | LLong m_hLoginHandle = new LLong(0); |
| | | m_hLoginHandle = netsdk.CLIENT_LoginWithHighLevelSecurity(pstInParam, pstOutParam); |
| | | log.info("大华登录"+m_hLoginHandle); |
| | | if (m_hLoginHandle.longValue() == 0) { |
| | | System.err.printf("Login Device[%s] Port[%d]Failed. %s\n", m_strIp, m_nPort, ToolKits.getErrorCodePrint()); |
| | | // System.err.printf("Login Device[%s] Port[%d]Failed. %s\n", m_strIp, m_nPort, ToolKits.getErrorCodePrint()); |
| | | } else { |
| | | System.out.println("Login Success [ " + m_strIp + " ]"); |
| | | log.info("登录成功"); |
| | | // System.out.println("Login Success [ " + m_strIp + " ]"); |
| | | // log.info("登录成功"); |
| | | } |
| | | |
| | | return m_hLoginHandle.longValue(); |
| | | return m_hLoginHandle; |
| | | } |
| | | |
| | | /** |
| | |
| | | * 登出设备 |
| | | * \endif |
| | | */ |
| | | public static boolean logout() { |
| | | if (m_hLoginHandle.longValue() == 0) { |
| | | return false; |
| | | } |
| | | |
| | | boolean bRet = netsdk.CLIENT_Logout(m_hLoginHandle); |
| | | if (bRet) { |
| | | m_hLoginHandle.setValue(0); |
| | | } |
| | | |
| | | public static boolean logout(LLong loginId) { |
| | | boolean bRet = netsdk.CLIENT_Logout(loginId); |
| | | return bRet; |
| | | } |
| | | |
| | | public static OSDResult getOsd() { |
| | | public static OSDResult getOsd(LLong loginId) { |
| | | OSDResult osdResult = new OSDResult(); |
| | | NetSDKLib.NET_TIME deviceTime = new NetSDKLib.NET_TIME(); |
| | | if (!netsdk.CLIENT_QueryDeviceTime(m_hLoginHandle, deviceTime, 3000)) { |
| | | log.error("CLIENT_QueryDeviceTime Failed!" + ToolKits.getErrorCodePrint()); |
| | | if (!netsdk.CLIENT_QueryDeviceTime(loginId, deviceTime, 3000)) { |
| | | // log.error("CLIENT_QueryDeviceTime Failed!" + ToolKits.getErrorCodePrint()); |
| | | return null; |
| | | } |
| | | Date checkTime = new Date(); |
| | |
| | | Date time = simpleDateFormat.parse(date); |
| | | osdResult.setOsdTime(time); |
| | | } catch (ParseException e) { |
| | | log.error("时间解析失败"); |
| | | // log.error("时间解析失败"); |
| | | } |
| | | NET_CFG_GBMODE_INFO reserve = new NET_CFG_GBMODE_INFO(); |
| | | |
| | | NET_CFG_GBMODE_INFO osdInfo = new NET_CFG_GBMODE_INFO(); |
| | | osdInfo.write(); |
| | | boolean b = netsdk.CLIENT_GetConfig(m_hLoginHandle, NET_EM_CFG_GBMODE, 0, osdInfo.getPointer(), osdInfo.size(), 3000, reserve.getPointer()); |
| | | boolean b = netsdk.CLIENT_GetConfig(loginId, NET_EM_CFG_GBMODE, 0, osdInfo.getPointer(), osdInfo.size(), 3000, reserve.getPointer()); |
| | | if (!b) { |
| | | log.error("CLIENT_GetConfig Failed!" + ToolKits.getErrorCodePrint()); |
| | | // log.error("CLIENT_GetConfig Failed!" + ToolKits.getErrorCodePrint()); |
| | | return null; |
| | | } else { |
| | | osdInfo.read(); |