【实例简介】

【实例截图】

【核心代码】

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using NetSDKCS;

using System.Diagnostics;

using System.IO;

using System.Runtime.InteropServices;

namespace CaptureDemo

{

public partial class CaptureDemo : Form

{

private IntPtr _LoginID = IntPtr.Zero;

private IntPtr _PlayID = IntPtr.Zero;

// private fSnapRevCallBack _SnapRevCallBack;

private NET_DEVICEINFO_Ex _DeviceInfo = new NET_DEVICEINFO_Ex();

private bool _IsSpanCapture = false;

public string[] Readdata;//= Environment.GetCommandLineArgs();

public string dataIP;//="10.207.159.169";

public string dataport;//="8000";

public string dataname;//="admin";

public string datapass;//="jzs123456";

public CaptureDemo(string[] datatext)

{

InitializeComponent();

try

{

// _SnapRevCallBack = new fSnapRevCallBack(SnapRevCallBack);

NETClient.Init(null, IntPtr.Zero, null);

// NETClient.SetSnapRevCallBack(_SnapRevCallBack, IntPtr.Zero);

if (datatext.Length == 4)

{

Readdata = datatext;

dataIP = Readdata[0];

dataport = Readdata[1];

dataname = Readdata[2];

datapass = Readdata[3];

foreach (string strID in Readdata)

{

// MessageBox.Show(strID);

}

}

else

{

MessageBox.Show("输入格式不对");

}

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

Process.GetCurrentProcess().Kill();

}

this.Load = new EventHandler(CaptureDemo_Load);

}

void CaptureDemo_Load(object sender, EventArgs e)

{

//this.comboBox_channel.Enabled = false;

//this.button_realplay.Enabled = false;

if (IntPtr.Zero == _LoginID)

{

ushort port = 0;

try

{

//port = Convert.ToUInt16(this.textBox_port.Text.Trim());

port = Convert.ToUInt16(dataport);

}

catch

{

MessageBox.Show("Input port error(输入端口错误)!");

return;

}

// _LoginID = NETClient.Login(this.textBox_ip.Text.Trim(), port, this.textBox_name.Text.Trim(), this.textBox_password.Text, EM_LOGIN_SPAC_CAP_TYPE.TCP, IntPtr.Zero, ref _DeviceInfo);

_LoginID = NETClient.Login(dataIP, port, dataname, datapass, EM_LOGIN_SPAC_CAP_TYPE.TCP, IntPtr.Zero, ref _DeviceInfo);

if (IntPtr.Zero == _LoginID)

{

MessageBox.Show(NETClient.GetLastError());

return;

}

for (int i = 0; i < _DeviceInfo.nChanNum; i )

{

this.comboBox_channel.Items.Add(i 1);

}

this.comboBox_channel.SelectedIndex = 0;

this.comboBox_channel.Enabled = true;

// this.button_realplay.Enabled = true;

this.button_login.Text = "注销";

//预览

if (IntPtr.Zero == _PlayID)

{

_PlayID = NETClient.RealPlay(_LoginID, comboBox_channel.SelectedIndex, this.pictureBox_preview.Handle);

if (IntPtr.Zero == _PlayID)

{

MessageBox.Show(NETClient.GetLastError());

return;

}

}

else

{

NETClient.StopRealPlay(_PlayID);

_PlayID = IntPtr.Zero;

this.pictureBox_preview.Refresh();

}

}

else

{

NETClient.Logout(_LoginID);

_LoginID = IntPtr.Zero;

this.comboBox_channel.Items.Clear();

this.comboBox_channel.Enabled = false;

this.button_login.Text = "登录";

this.pictureBox_preview.Refresh();

if (_IsSpanCapture)

{

_IsSpanCapture = false;

}

}

}

private void button_login_Click(object sender, EventArgs e)

{

}

///

///

///

///

//打开预览

/*

private void SnapRevCallBack(IntPtr lLoginID, IntPtr pBuf, uint RevLen, uint EncodeType, uint CmdSerial, IntPtr dwUser)

{

string path = AppDomain.CurrentDomain.BaseDirectory "image";

if (!Directory.Exists(path))

{

Directory.CreateDirectory(path);

}

if (EncodeType == 10) //.jpg

{

DateTime now = DateTime.Now;

string fileName = string.Format("{0}-{1}-{2}-{3}-{4}-{5}", now.Year, now.Month, now.Day, now.Hour, now.Minute, now.Second) ".jpg";

string filePath = path "\\" fileName;

byte[] data = new byte[RevLen];

Marshal.Copy(pBuf, data, 0, (int)RevLen);

try

{

//when the file is operate by local capture will throw expection.

using (FileStream stream = new FileStream(filePath, FileMode.OpenOrCreate))

{

stream.Write(data, 0, (int)RevLen);

stream.Flush();

stream.Dispose();

}

}

catch

{

return;

}

//this.BeginInvoke(new Action(() =>

//{

// if (pictureBox_image.Image != null)

// {

// pictureBox_image.Image.Dispose();

// }

// Image image = Image.FromFile(filePath);

// pictureBox_image.Image = image;

//}));

}

}

*/

protected override void OnClosed(EventArgs e)

{

base.OnClosed(e);

NETClient.Cleanup();

}

private void textBox_port_KeyPress(object sender, KeyPressEventArgs e)

{

if (e.KeyChar != 8 && !Char.IsDigit(e.KeyChar))

{

e.Handled = true;

}

}

}

}

Java调用大华车牌识别摄像头_第三方软件调用大华网络摄像头监控相关推荐

  1. 禁用ubuntu 摄像头_如何禁用您的网络摄像头(以及为什么要这么做)

    禁用ubuntu 摄像头 Once a concern that was the province of the paranoid, years worth of reports and revela ...

  2. 数码相机做摄像头_如何将数码相机用作网络摄像头

    数码相机做摄像头 Many of the popular digital SLRs and mirrorless cameras released over the past few years no ...

  3. python读取网络摄像头_使用Python/Linux读取网络摄像头的选项

    我正在寻找一种方法,将网络摄像头集成到我的python程序中. 我运行的是Raspberry Pi型号,频率为900mHz,因此解决方案需要与ARM兼容,并且(希望)轻量级. 我看到的大多数帖子都推荐 ...

  4. python ffmpeg读取摄像头_使用ffmpegpython库捕获网络摄像头

    嗨,我正在尝试使用ffmpeg python包装库(https://github.com/kkroening/ffmpeg-python)捕获一个使用python的网络摄像头流 我有一个有效的ffmp ...

  5. 使用java调用阿里云车牌识别API

    实现车牌识别功能我采用调用阿里云车牌识别API的方法,我使用的是eclipse,jdk 1.8,Tomcat 9.0 1.进入阿里云主页先创建阿里云账号 2.在控制台的头像那里找到AccessKey管 ...

  6. 人生苦短,使用百度云SDK,编写python代码调用接口的车牌识别

    两个想法 调云在线的接口或者使用SDK做开发(配置环境和编译第三方库很麻烦,当然使用python可以避免这些问题) 自己实现车牌识别算法(复杂) 一开始准备使用百度云文字识别C++ SDK来做,发现需 ...

  7. java车牌识别系统_基于jsp的车牌识别系统-JavaEE实现车牌识别系统 - java项目源码...

    基于jsp+servlet+pojo+mysql实现一个javaee/javaweb的车牌识别系统, 该项目可用各类java课程设计大作业中, 车牌识别系统的系统架构分为前后台两部分, 最终实现在线上 ...

  8. Java海康SDK车牌识别 二次开发

    项目场景: 通过海康摄像头进行车牌识别. 注意避坑: (1)将官方文档的[库文件]里的HCNetSDK.dll.HCCore.dllHCNetSDKCom文件夹.libssl-1_1-x64.dll. ...

  9. python 车牌识别简单_智能车牌识别 停车如此简单

    随着人们经济.生活水平的提高,我国民用汽车保有量不断攀升,产生了巨量的停车需求,而在国家"新基建"的政策推动以及市场需求的驱动下,停车产业将迎来更广阔的发展空间,智慧停车解决方案的 ...

  10. python的opencv 车牌识别 开源_毕节进出口车牌识别系统怎么样

    毕节进出口车牌识别系统怎么样 gzheu8il 毕节进出口车牌识别系统怎么样 系统拓扑图如下:该系统以社区中心机房为枢纽,有机的将智慧家居住户.社区数字化服务.物业数字化管理.社区智能化管理结合起来, ...

最新文章

  1. Windows 2008 R2 SP1部署Lync2010标准版(1)
  2. 手动升级oracle,ORACLE 10.2.0.1手动升级到10.2.0.4
  3. 200个模块,怎么用有线的方式进行组网通信
  4. 设置python路径
  5. Android7.0 emui主题,全新EMUI5.0基于Android7.0 天生快,一生快!
  6. 【SeaJS】【1】初识SeaJS
  7. 使用pyspark将hive数据库中的数据保存为CSV文件
  8. 验证码~正则表达式【整理汇总】
  9. gentoo 修改键盘映射
  10. 词云python_词牌名大全
  11. x99对应服务器芯片,x99主板配什么cpu 几款x99主板介绍【详细介绍】
  12. Jmeter进行SOAP协议接口性能测试
  13. 隐藏IP地址的方法利弊
  14. 清翔电子51单片机小结——可调表时钟
  15. 网易云音乐中你见过最扎心的热评是什么
  16. 【POJ1021】Intervals (最短路解差分约束)
  17. 免费美食网页设计成品
  18. 直流电机驱动电路中L298与电机间二极管的作用
  19. Android4.0新特性 中文翻译
  20. webpack高级应用篇(九):tree shaking(usedExports) 与 sideEffects

热门文章

  1. Python100道经典练习题(附PDF)
  2. tcping下载安装步骤,如何ping端口,tcping详解
  3. Ubuntu下Vim的常用操作命令——vi编辑器常用命令
  4. c语言计算器程序代码有优先级,C语言计算器小程序(源代码+实习报告).doc
  5. 全网最细JAVA窗口背景图片设置
  6. project安装包_Microsoft project 2019软件功能介绍(附安装包)
  7. mysql安装教程【安装版】
  8. java程序设计精编教程第3版电子版课后答案_java程序设计精编教程第3版答案
  9. java图书管理系统源码免费_Java图书管理系统 附源码
  10. Java 学习如逆水行舟,不进则退,100 本 java 电子书推荐