public static class NET_DVR_XML_CONFIG_INPUT extends Structure {
        public int dwSize;
        public Pointer lpRequestUrl;
        public int dwRequestUrlLen;
        public Pointer lpInBuffer;
        public int dwInBufferSize;
        public int dwRecvTimeOut;
        public byte[] byRes = new byte[32];
    public static class NET_DVR_XML_CONFIG_OUTPUT extends Structure {
        public int dwSize;
        public Pointer lpOutBuffer;
        public int dwOutBufferSize;
        public int dwReturnedXMLSize;
        public Pointer lpStatusBuffer;
        public int dwStatusSize;
        public byte[] byRes = new byte[32];
 boolean NET_DVR_STDXMLConfig(NativeLong lUserID, NET_DVR_XML_CONFIG_INPUT lpInputParam,
            NET_DVR_XML_CONFIG_OUTPUT lpOutputParam);

调用,注意 strURL 和 strInbuffer

public static void stdXMLConfigTest1() {
        int ISAPI_DATA_LEN = 1024 * 1024;
        int ISAPI_STATUS_LEN = 4 * 4096;
        HCNetSDK.NET_DVR_XML_CONFIG_INPUT struXMLInput = new HCNetSDK.NET_DVR_XML_CONFIG_INPUT();
        struXMLInput.read();
        struXMLInput.dwSize = struXMLInput.size(); 
              // URL                                   
        String strURL = "GET /ISAPI/System/deviceInfo";
        int iURLlen = strURL.length();
        HCNetSDK.BYTE_ARRAY ptrUrl = new HCNetSDK.BYTE_ARRAY(iURLlen);
        System.arraycopy(strURL.getBytes(), 0, ptrUrl.byValue, 0, strURL.length());
        ptrUrl.write();
        struXMLInput.lpRequestUrl = ptrUrl.getPointer();
        struXMLInput.dwRequestUrlLen = iURLlen;
              // 输入xml/json
        String strInbuffer = "";
        int iInBufLen = strInbuffer.length();
        if (iInBufLen == 0) {
            struXMLInput.lpInBuffer = null;
            struXMLInput.dwInBufferSize = 0;
            struXMLInput.write();
        } else {
            HCNetSDK.BYTE_ARRAY ptrInBuffer = new HCNetSDK.BYTE_ARRAY(iInBufLen);
            ptrInBuffer.read();
            ptrInBuffer.byValue = strInbuffer.getBytes();
            ptrInBuffer.write();
            struXMLInput.lpInBuffer = ptrInBuffer.getPointer();
            struXMLInput.dwInBufferSize = iInBufLen;
            struXMLInput.write();
        HCNetSDK.BYTE_ARRAY ptrStatusByte = new HCNetSDK.BYTE_ARRAY(ISAPI_STATUS_LEN);
        ptrStatusByte.read();
        HCNetSDK.BYTE_ARRAY ptrOutByte = new HCNetSDK.BYTE_ARRAY(ISAPI_DATA_LEN);
        ptrOutByte.read();
        HCNetSDK.NET_DVR_XML_CONFIG_OUTPUT struXMLOutput = new HCNetSDK.NET_DVR_XML_CONFIG_OUTPUT();
        struXMLOutput.read();
        struXMLOutput.dwSize = struXMLOutput.size();
        struXMLOutput.lpOutBuffer = ptrOutByte.getPointer();
        struXMLOutput.dwOutBufferSize = ptrOutByte.size();
        struXMLOutput.lpStatusBuffer = ptrStatusByte.getPointer();
        struXMLOutput.dwStatusSize = ptrStatusByte.size();
        struXMLOutput.write();
        if (!hCNetSDK.NET_DVR_STDXMLConfig(lUserID, struXMLInput, struXMLOutput)) {
            int iErr = hCNetSDK.NET_DVR_GetLastError();
            System.out.println("NET_DVR_STDXMLConfig失败,错误号:" + iErr);
            return;
        } else {
            struXMLOutput.read();
            ptrOutByte.read();
            ptrStatusByte.read();
            String strOutXML = new String(ptrOutByte.byValue).trim();
            System.out.println(strOutXML);
            String strStatus = new String(ptrStatusByte.byValue).trim();
            System.out.println(strStatus);
public void setThermal(Map<String, Object> params){
    Object ids = params.get("ids"); //设备id集
    if (ComnUtil.isEmpty(ids)){
        throw new ComnException(ComnStatusCode.ERRO
				
Net_Dvr_中文-注意事项 首先,感谢您选用我公司最新产品。 在使用本监控卡之前,请详细阅读本说明书所涉及的相关事项,熟悉硬件、软件各部分的功能后,方能使用,以确保该系统为您发挥最佳功能。否则一切后果自负。 本说明书将向您详细阐述全实时“视频监控系统”的安装、操作、设置和网络使用方法。 本系统工作主机供电电压为220V±10%,如果在电压不稳或者干扰大的场合,请您选用优质稳压电源(即UPS),保证系统正常良好的工作状态。 本系统在安装、拆卸视频采集卡时,必须将主机处于完全断电状态,否则主板上残留的电压将损坏采集卡。 本系统可切换D1与CIF分辨率,切换分辨率设置后,在主界面必须关闭通道视频,重新打开通道视频,设置才能生效。 本系统主机工作于常温(-10±3℃~55±2℃)、清洁的环境,并且保持良好的通风状态。 本系统软件属于我公司专有产品,未经同意,请勿复制,否则影响机器稳定概不负责,并将通过有关法律渠道追究盗版责任。
/全局错误码 begin***/ public static final int NET_DVR_NOERROR = 0; //没有错误 public static final int NET_DVR_PASSWORD_ERROR = 1; //用户名密码错误 public static final int NET_DVR_NOENOUGHPRI = 2;//权限不足 public static final int NET_DVR_NOINIT = 3;//没有初始化 1. 安装海康 SDK。在海康官方网站上下载海康 SDK,解压后进行安装。 2. 创建 .NET Core 项目。在 Visual Studio 中创建 .NET Core 项目,选中 ASP.NET Core Web 应用程序等适合的项目模板。 3. 引用海康 SDK。在项目中右键点击 “依赖项” -> “添加引用” -> “浏览”,在弹出的文件对话框中选择海康 SDK 相应的库文件,加入到项目中。 4. 配置海康 SDK。在项目的配置文件中,添加海康 SDK 的配置项,包括海康 SDK 的相关路径、端口号、设备 IP 等信息。 5. 编写代码。在项目中添加适当的代码,通过海康 SDK 实现对摄像头、录像机等设备的调用和操作。 总体上来说,使用 .NET Core 引用海康 SDK 不会比使用其他框架有太大的差别,关键在于要注意好配置和代码的编写,保证与海康 SDK 的集成和调用能够正常进行。