将海康提供的c++的dll封装为C#代码方便调用
using System;
using System.Text;
using System.Runtime.InteropServices; //用于加入两外一个代码,防止内存被自动释放掉
namespace HikVisionClient
{
#region 结构体的重写
public struct VIDEO_INFO
{
public byte m_bRemoteChannel; //用于连接服务器端指定的通道
public byte m_bSendMode; //用于指定与服务器连接的通讯方式
public byte m_bImgFormat; //图像的显示方式
public string m_sIPAddress; //设置需要连接的服务器的ip地址
public string m_sUserName; //当前通道发送到服务器的用户名
public string m_sUserPassword; //当前通道发送到服务器的密码
public bool m_bUserCheck; //设置是否进行用户检测
public IntPtr m_hShowVideo; //用于显示图像的句柄
}
#endregion
#region 枚举类型重写
public enum SENDMODE
{
UDPMODE=0,TCPMODE=1,MULTIMODE=2,DIALING=3,AUDIODETACH=4
}
public enum TTYPE
{
T_UYVY=1,T_YV12=3,T_RGB32=7
}
#endregion
#region 封装功能函数
public class HikClient
{
public static readonly uint WM_USER=0x0400; //用于消息的序列号
//对客户端进行初始化的函数 !在其他所有客服端函数之前调用
[DllImport("hikclient.dll")]
public static extern bool MP4_ClientStartup(uint nMessage, IntPtr hwnd); //利用wm_user和窗口句柄初始化客户端
//结束调用客户端函数
[DllImport("hikclient.dll")]
public static