C# 海康DVR客户端开发系列(2)—— 封装API (2)

简介:
  ///   </summary>
             public   byte  bySendMode;
            
///   <summary>
            
///  解码设备连接的服务器的通道号
            
///   </summary>
             public   byte  byEncoderChannel;
            
///   <summary>
            
///  解码设备连接的服务器的端口号
            
///   </summary>
             public   ushort  wEncoderPort;
            
///   <summary>
            
///  保留
            
///      public byte reservedData[4];
            
///   </summary>
             public   byte [] reservedData;
        }

        
///   <summary>
        
///  NET_DVR_DECODERSTATE, *LPNET_DVR_DECODERSTATE;
        
///   </summary>
         public   struct  NET_DVR_DECODERSTATE
        {
            
///   <summary>
            
///  解码设备连接的服务器IP
            
///      public byte byEncoderIP[16];
            
///   </summary>
             public   byte [] byEncoderIP;
            
///   <summary>
            
///  解码设备连接的服务器的用户名
            
///      public byte byEncoderUser[16];
            
///   </summary>
             public   byte [] byEncoderUser;
            
///   <summary>
            
///  解码设备连接的服务器的密码
            
///      public byte byEncoderPasswd[16];
            
///   </summary>
             public   byte [] byEncoderPasswd;
            
///   <summary>
            
///  解码设备连接的服务器的通道号
            
///   </summary>
             public   byte  byEncoderChannel;
            
///   <summary>
            
///  解码设备连接的服务器的连接模式
            
///   </summary>
             public   byte  bySendMode;
            
///   <summary>
            
///  解码设备连接的服务器的端口号
            
///   </summary>
             public   ushort  wEncoderPort;
            
///   <summary>
            
///  解码设备连接服务器的状态
            
///   </summary>
             public   uint  dwConnectState;
            
///   <summary>
            
///  保留
            
///      public byte reservedData[4];
            
///   </summary>
             public   byte [] reservedData;
        }

        
#region  解码设备控制码定义
        
public   const   int  NET_DEC_STARTDEC  =   1 ;
        
public   const   int  NET_DEC_STOPDEC  =   2 ;
        
public   const   int  NET_DEC_STOPCYCLE  =   3 ;
        
public   const   int  NET_DEC_CONTINUECYCLE  =   4 ;
        
#endregion


        
#endregion

        
///   <summary>
        
///  Email
        
///      NET_DVR_EMAILPARA, *LPNET_DVR_EMAILPARA;
        
///   </summary>
         public   struct  NET_DVR_EMAILPARA
        {
            
///   <summary>
            
///  邮件账号
            
///      public byte sUsername[64];
            
///   </summary>
             public   string  sUsername;
            
///   <summary>
            
///  邮件密码
            
///      public byte sPassword[64];
            
///   </summary>
             public   string  sPassword;
            
///   <summary>
            
///      public byte sSmtpServer[64];
            
///   </summary>
             public   string  sSmtpServer;
            
///   <summary>
            
///      public byte sPop3Server[64];
            
///   </summary>
             public   string  sPop3Server;
            
///   <summary>
            
///  邮件地址
            
///      public byte sMailAddr[64];
            
///   </summary>
             public   string  sMailAddr;
            
///   <summary>
            
///  上传报警/异常等的email
            
///      public byte sEventMailAddr1[64];
            
///   </summary>
             public   byte [] sEventMailAddr1;
            
///   <summary>
            
///      public byte sEventMailAddr2[64];
            
///   </summary>
             public   byte [] sEventMailAddr2;
            
///   <summary>
            
///      public byte res[16];
            
///   </summary>
             public   byte [] res;
        }

        
///   <summary>
        
///  NET_DVR_NETCFG_OTHER, *LPNET_DVR_NETCFG_OTHER;
        
///   </summary>
         public   struct  NET_DVR_NETCFG_OTHER
        {
            
public   uint  dwSize;
            
///   <summary>
            
///      char    sFirstDNSIP[16];
            
///   </summary>
             public   string  sFirstDNSIP;
            
///   <summary>
            
///      char    sSecondDNSIP[16];
            
///   </summary>
             public   string  sSecondDNSIP;
            
///   <summary>
            
///  char    sRes[32];
            
///   </summary>
             public   string  sRes;
        }

        
///   <summary>
        
///  连接的通道配置 2007-11-05
        
///      NET_DVR_MATRIX_DECCHANINFO, *LPNET_DVR_MATRIX_DECCHANINFO;
        
///   </summary>
         public   struct  NET_DVR_MATRIX_DECCHANINFO
        {
            
///   <summary>
            
///  是否启用 0-否 1-启用
            
///   </summary>
             public   uint  dwEnable;
            
///   <summary>
            
///  轮循解码通道信息
            
///   </summary>
             public  NET_DVR_MATRIX_DECINFO struDecChanInfo;
        }
        
///   <summary>
        
///  压缩参数?
        
///      NET_DVR_COMPRESSIONCFG_NEW, *LPNET_DVR_COMPRESSIONCFG_NEW;
        
///   </summary>
         public   struct  NET_DVR_COMPRESSIONCFG_NEW
        {
            
public   uint  dwSize;
            
///   <summary>
            
///  定时录像
            
///   </summary>
             public  NET_DVR_COMPRESSION_INFO_EX struLowCompression;
            
///   <summary>
            
///  事件触发录像
            
///   </summary>
             public  NET_DVR_COMPRESSION_INFO_EX struEventCompression;
        }
        
///   <summary>
        
///  抓图模式
        
///   </summary>
         public   enum  CAPTURE_MODE
        {
            
///   <summary>
            
///  BMP模式
            
///   </summary>
            BMP_MODE  =   0 ,         //
             ///   <summary>
            
///  JPEG模式 
            
///   </summary>
            JPEG_MODE  =   1          //
        }
        
///   <summary>
        
///  实时声音模式
        
///   </summary>
         public   enum  REALSOUND_MODE
        {
            
///   <summary>
            
///  独占模式
            
///   </summary>
            MONOPOLIZE_MODE  =   1 ,
            
///   <summary>
            
///  共享模式
            
///   </summary>
            SHARE_MODE  =   2
        }
        
///   <summary>
        
///  录象文件参数(带卡号)
        
///      NET_DVR_FINDDATA_CARD, *LPNET_DVR_FINDDATA_CARD;
        
///   </summary>
         public   struct  NET_DVR_FINDDATA_CARD
        {
            
///   <summary>
            
///  文件名
            
///      char sFileName[100];
            
///   </summary>
             public   string  sFileName;
            
///   <summary>
            
///  文件的开始时间
            
///   </summary>
             public  NET_DVR_TIME struStartTime;
            
///   <summary>
            
///  文件的结束时间
            
///   </summary>
             public  NET_DVR_TIME struStopTime;
            
///   <summary>
            
///  文件的大小
            
///   </summary>
             public   uint  dwFileSize;
            
///   <summary>
            
///  卡号?
            
///      char sCardNum[32];
            
///   </summary>
             public   char  sCardNum;
        }

        
///   <summary>
        
///  设置重新连接间隔
        
///      NET_DVR_API BOOL __stdcall NET_DVR_SetReconnect(DWORD dwInterval = 30000, BOOL bEnableRecon = TRUE);
        
///   </summary>
        
///   <param name="dwInterval"></param>
        
///   <param name="bEnableRecon"></param>
        
///   <returns></returns>
        [DllImport( " HCNetSDK.dll " )]
        
public   static   extern   bool  NET_DVR_SetReconnect( uint  dwInterval,  bool  bEnableRecon);
        
///   <summary>
        
///  通过IPSever获取设备动态IP地址[Ex]
        
///      NET_DVR_API BOOL  __stdcall NET_DVR_GetDVRIPByResolveSvr_EX(char *sServerIP, WORD wServerPort, unsigned char *sDVRName, WORD wDVRNameLen, BYTE *sDVRSerialNumber, WORD wDVRSerialLen, char* sGetIP, DWORD *dwPort);
        
///   </summary>
        
///   <param name="sServerIP"></param>
        
///   <param name="wServerPort"></param>
        
///   <param name="sDVRName"></param>
        
///   <param name="wDVRNameLen"></param>
        
///   <param name="sDVRSerialNumber"></param>
        
///   <param name="wDVRSerialLen"></param>
        
///   <param name="sGetIP"></param>
        
///   <param name="dwPort"></param>
        
///   <returns></returns>

        [DllImport("HCNetSDK.dll")]


本文转自over140 51CTO博客,原文链接:http://blog.51cto.com/over140/586620,如需转载请自行联系原作者

相关文章
|
2月前
|
缓存 监控 前端开发
顺企网 API 开发实战:搜索 / 详情接口从 0 到 1 落地(附 Elasticsearch 优化 + 错误速查)
企业API开发常陷参数、缓存、错误处理三大坑?本指南拆解顺企网双接口全流程,涵盖搜索优化、签名验证、限流应对,附可复用代码与错误速查表,助你2小时高效搞定开发,提升响应速度与稳定性。
|
3月前
|
数据可视化 测试技术 API
从接口性能到稳定性:这些API调试工具,让你的开发过程事半功倍
在软件开发中,接口调试与测试对接口性能、稳定性、准确性及团队协作至关重要。随着开发节奏加快,传统方式已难满足需求,专业API工具成为首选。本文介绍了Apifox、Postman、YApi、SoapUI、JMeter、Swagger等主流工具,对比其功能与适用场景,并推荐Apifox作为集成度高、支持中文、可视化强的一体化解决方案,助力提升API开发与测试效率。
|
3月前
|
人工智能 自然语言处理 机器人
使用 API 编程开发扣子应用
扣子(Coze)应用支持通过 API 编程,将 AI 聊天、内容生成、工作流自动化等功能集成至自有系统。主要 API 包括 Bot API(用于消息交互与会话管理)及插件与知识库 API(扩展功能与数据管理)。开发流程包括创建应用、获取密钥、调用 API 并处理响应,支持 Python 等语言。建议加强错误处理、密钥安全与会话管理,提升集成灵活性与应用扩展性。
995 0
|
3月前
|
XML 测试技术 API
利用C#开发ONVIF客户端和集成RTSP播放功能
利用C#开发ONVIF客户端和集成RTSP播放功能
1415 123
|
2月前
|
API 开发者 数据采集
高效获取淘宝商品详情:API 开发实现链接解析的完整技术方案
2025反向海淘新机遇:依托代购系统,聚焦小众垂直品类,结合Pandabay数据选品,降本增效。系统实现智能翻译、支付风控、物流优化,助力中式养生茶等品类利润翻倍,新手也能快速入局全球市场。
高效获取淘宝商品详情:API 开发实现链接解析的完整技术方案
|
3月前
|
数据采集 缓存 API
小红书笔记详情 API 实战指南:从开发对接、场景落地到收益挖掘(附避坑技巧)
本文详解小红书笔记详情API的开发对接、实战场景与收益模式,涵盖注册避坑、签名生成、数据解析全流程,并分享品牌营销、内容创作、SAAS工具等落地应用,助力开发者高效掘金“种草经济”。
小红书笔记详情 API 实战指南:从开发对接、场景落地到收益挖掘(附避坑技巧)
|
2月前
|
存储 缓存 算法
淘宝买家秀 API 深度开发:多模态内容解析与合规推荐技术拆解
本文详解淘宝买家秀接口(taobao.reviews.get)的合规调用、数据标准化与智能推荐全链路方案。涵盖权限申请、多模态数据清洗、情感分析、混合推荐模型及缓存优化,助力开发者提升审核效率60%、商品转化率增长28%,实现UGC数据高效变现。
|
2月前
|
存储 缓存 算法
亚马逊 SP-API 深度开发:关键字搜索接口的购物意图挖掘与合规竞品分析
本文深度解析亚马逊SP-API关键字搜索接口的合规调用与商业应用,涵盖意图识别、竞品分析、性能优化全链路。通过COSMO算法解析用户购物意图,结合合规技术方案提升关键词转化率,助力卖家实现数据驱动决策,安全高效优化运营。
|
3月前
|
XML 前端开发 C#
C#编程实践:解析HTML文档并执行元素匹配
通过上述步骤,可以在C#中有效地解析HTML文档并执行元素匹配。HtmlAgilityPack提供了一个强大而灵活的工具集,可以处理各种HTML解析任务。
192 19
|
4月前
|
监控 算法 C#
C#与Halcon联合编程实现鼠标控制图像缩放、拖动及ROI绘制
C#与Halcon联合编程实现鼠标控制图像缩放、拖动及ROI绘制
571 0

热门文章

最新文章