`
suigara
  • 浏览: 81879 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java 使用JNA连接海康的硬盘录像机

    博客分类:
  • java
阅读更多

这回不废话了

 

HCNetSDK.dll的JNA代理(网上有个哥们写完了,3000多行啊,虽然我用了不到100行)

不发了,看后面附件吧

 

主要使用的方法:

1.初始化

		// 第一步
		INSTANCE.NET_DVR_Init();
                INSTANCE.NET_DVR_SetConnectTime(2000, 1);

 2。登录

NET_DVR_DEVICEINFO_V30 lpDeviceInfo = new NET_DVR_DEVICEINFO_V30();
		// 第二步
		userid = INSTANCE.NET_DVR_Login_V30("172.16.16.44", (short) 8000,
				"admin", "12345", lpDeviceInfo);
		if (INSTANCE.NET_DVR_GetLastError() != 0) {
			System.out.println("登录失败:" + INSTANCE.NET_DVR_GetLastError());
			return;
		}

 3.播放

Panel cardPanel = panels[i];
					HWND hwnd = createHWNDByComponent(cardPanel);
					NET_DVR_CLIENTINFO lpClientInfo = new NET_DVR_CLIENTINFO();
					lpClientInfo.hPlayWnd = hwnd;
					lpClientInfo.lChannel = new NativeLong(i + 1);
					lpClientInfo.sMultiCastIP = "";
					lpClientInfo.lLinkMode = new NativeLong(0);
					// 第三步
					NativeLong handle = INSTANCE.NET_DVR_RealPlay_V30(userid,
							lpClientInfo, null, null, true);

 附件是工程

右键HCNetMain 直接运行就可以了

 

 

分享到:
评论

相关推荐

    java 使用JNA连接天敏VC4000采集卡

    Java 使用JNA(Java Native Access)连接天敏VC4000采集卡是一个涉及多方面技术的实践过程,包括Java编程、JNA库的使用、硬件接口通信以及视频采集技术。下面将详细介绍这个主题。 首先,JNA是Java平台的一个开源库...

    java 使用jna开启关闭第三方应用程序.txt

    java使用jna开启关闭第三方应用程序,附简单的例子,打开一个记事本,朋友们也可以改为自己需要打开的应用程序

    java 使用JNA读取ddl文件

    java 使用JNA读取ddl文件,亲测有效!

    java使用jna连接华视CVR-100UC读卡器

    由于java提供jni有诸多不便,再加上我很菜,c这些东西全还给了老师了,所以还是选用jna调用,代码什么的都放在附件中了,jna的使用其实还是挺简单的,网上有很多相关的示例,但是就是需要注意一些dll文件路径,参数...

    Java通过JNA调用系统API

    本文将详细介绍如何使用Java通过JNA调用系统API,以Windows系统为例,重点讲解如何调用`Kernel32.dll`中的`GetLocalTime()`, `GetSystemTime()` 和 `SetLocalTime()` 方法。 1. **Java Native Access (JNA)**: JNA...

    java_jna包

    在标题中提到的"java_jna包",很可能是包含JNA库的Java项目或库的压缩文件,便于开发者下载和使用。这个包可能包含了JNA的核心库、平台依赖的库文件,以及相关的示例和文档,帮助开发者快速理解和使用JNA。 描述中...

    java 使用jna连接kpci-1847(847)等板卡(继电器相关)

    Java 使用 JNA 连接 KPCI-1847(847)等板卡涉及到的是在Java程序中与硬件设备进行通信的技术。JNA(Java Native Access)是Java平台上的一个库,允许Java代码直接调用操作系统级别的API,而无需编写C/C++的桥接代码...

    java用JNA调用dll实例,包含各种参数调用

    对于引用,JNA会在Java对象和DLL函数之间建立连接,确保改变一方会影响到另一方。 3. **结构体**:JNA提供了一个Struct类,允许你在Java中定义结构体并映射到DLL中的结构体类型。你需要继承Struct类,定义成员变量...

    java通过jna返回结构体例子.rar

    本示例是关于如何在Java中使用JNA处理C语言返回的结构体数据。下面将详细介绍这个过程,以及如何在Linux环境下实现。 首先,我们需要了解JNA的基本概念。JNA是一种纯Java库,允许Java代码直接调用本地库(如C库)的...

    Java JNA使用参考手册.pdf

    ### Java JNA 使用参考手册知识点概述 #### 一、JNA简介 JNA(Java Native Access)是一个基于经典JNI技术的Java开源框架,它允许Java应用程序动态地访问本机库,例如Windows系统的.dll文件,而无需编写任何JNI或...

    JAVA-JNA简单使用

    Java Native Access(JNA)是Java平台上的一个开源库,它允许Java代码与本地操作系统功能进行交互,无需编写C语言的动态链接库(DLL)或JNI(Java Native Interface)代码。JNA通过一种声明式的接口,使Java程序员...

    海康威视SDK JNA 全部

    在使用JNA进行调用时,首先需要对SDK的C/C++接口有深入理解,因为JNA需要映射这些接口到Java世界。每个接口都对应一个特定的功能,例如`HIConnect_Init()`用于初始化连接,`HIPlay_Start()`用于启动播放等。 JNA的...

    Java实现获取窗口句柄并操作窗口jna-4.4.0

    为了弥补这个不足,开发人员可以使用Java Native Access (JNA),这是一个Java平台上的库,允许Java代码调用本机库函数,与操作系统进行更直接的交互。 JNA是Java与本机代码之间的一个桥梁,它消除了编写C/C++头文件...

    java使用(jna)调用c/c++第三方动态库 dll文件 所用jar包

    Java 使用 JNA(Java Native Access)调用C/C++编写的第三方动态库(DLL文件)是一种常见的技术,它允许Java程序直接与本地操作系统接口交互,而无需编写JNI(Java Native Interface)代码。JNA 提供了一种相对简洁...

    使用JNA获取窗口句柄,并发送消息

    JNA提供了一种无需编写C代码或使用JNI(Java Native Interface)即可调用操作系统API的方法。本话题将详细介绍如何使用JNA获取窗口句柄并发送消息,以及在CS(Client-Server)架构中实现SSO(Single Sign-On)。 ...

    通过JNA让Java调用Dll方法

    研究java调用dll的时候,大部分都是通过jni,比较麻烦,我找到了通过jna方法调用dll的方法,用起来比较方便,只需要引用jna.jar包,这个jar包已经包含在程序中,还包含了我调用dll的遇到难道的解决办法。

    JNA例子包含jna.jar已经java调用JNA的例子

    Java Native Access(JNA)是Java平台上的一个开源库,它允许Java代码无需编写C/C++的JNI(Java Native Interface)代码,即可直接调用本地操作系统API。在本压缩包中,包含了一个JNA的使用示例,以及必要的库文件`...

    jna 现成的java调用jna项目 包括jna.jar

    Java Native Access (JNA) 是一个Java库,它允许Java代码与本地库进行交互,无需编写C语言的JNI(Java Native Interface)代码。这个技术极大地简化了Java应用程序调用操作系统功能或者使用非Java编写的库的过程。在...

    使用JNA替代JNI调用DLL,并解决内存溢出问题

    相比之下,JNA(Java Native Access)作为一种更简洁、更易于使用的框架,逐渐成为开发者的首选。 - **JNI** 的调用过程较为复杂,需要编写额外的C/C++代码来作为桥梁,增加了开发成本和维护难度。 - **JNA** 极大...

Global site tag (gtag.js) - Google Analytics