1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > Java调用大华车牌识别摄像头_第三方软件调用大华网络摄像头监控

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

时间:2023-04-06 03:25:59

相关推荐

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

【实例简介】

【实例截图】

【核心代码】

using System;

using System.Collections.Generic;

using ponentModel;

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)

{

//boBox_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 )

{

boBox_channel.Items.Add(i 1);

}

boBox_channel.SelectedIndex = 0;

boBox_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;

boBox_channel.Items.Clear();

boBox_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;

}

}

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。