天天看點

C# 海康DVR用戶端開發系列(2)—— 封裝API (2)

 /// </summary>

            public byte bySendMode;

            /// <summary>

            /// 解碼裝置連接配接的伺服器的通道号

            /// </summary>

            public byte byEncoderChannel;

            /// 解碼裝置連接配接的伺服器的端口号

            public ushort wEncoderPort;

            /// 保留

            ///     public byte reservedData[4];

            public byte[] reservedData;

        }

        /// <summary>

        /// NET_DVR_DECODERSTATE, *LPNET_DVR_DECODERSTATE;

        /// </summary>

        public struct NET_DVR_DECODERSTATE

        {

            /// 解碼裝置連接配接的伺服器IP

            ///     public byte byEncoderIP[16];

            public byte[] byEncoderIP;

            /// 解碼裝置連接配接的伺服器的使用者名

            ///     public byte byEncoderUser[16];

            public byte[] byEncoderUser;

            /// 解碼裝置連接配接的伺服器的密碼

            ///     public byte byEncoderPasswd[16];

            public byte[] byEncoderPasswd;

            /// 解碼裝置連接配接的伺服器的連接配接模式

            /// 解碼裝置連接配接伺服器的狀态

            public uint dwConnectState;

        #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

        /// Email

        ///     NET_DVR_EMAILPARA, *LPNET_DVR_EMAILPARA;

        public struct NET_DVR_EMAILPARA

            /// 郵件賬号

            ///     public byte sUsername[64];

            public string sUsername;

            /// 郵件密碼

            ///     public byte sPassword[64];

            public string sPassword;

            ///     public byte sSmtpServer[64];

            public string sSmtpServer;

            ///     public byte sPop3Server[64];

            public string sPop3Server;

            /// 郵件位址

            ///     public byte sMailAddr[64];

            public string sMailAddr;

            /// 上傳報警/異常等的email

            ///     public byte sEventMailAddr1[64];

            public byte[] sEventMailAddr1;

            ///     public byte sEventMailAddr2[64];

            public byte[] sEventMailAddr2;

            ///     public byte res[16];

            public byte[] res;

        /// NET_DVR_NETCFG_OTHER, *LPNET_DVR_NETCFG_OTHER;

        public struct NET_DVR_NETCFG_OTHER

            public uint dwSize;

            ///     char    sFirstDNSIP[16];

            public string sFirstDNSIP;

            ///     char    sSecondDNSIP[16];

            public string sSecondDNSIP;

            /// char    sRes[32];

            public string sRes;

        /// 連接配接的通道配置 2007-11-05

        ///     NET_DVR_MATRIX_DECCHANINFO, *LPNET_DVR_MATRIX_DECCHANINFO;

        public struct NET_DVR_MATRIX_DECCHANINFO

            /// 是否啟用 0-否 1-啟用

            public uint dwEnable;

            /// 輪循解碼通道資訊

            public NET_DVR_MATRIX_DECINFO struDecChanInfo;

        /// 壓縮參數?

        ///     NET_DVR_COMPRESSIONCFG_NEW, *LPNET_DVR_COMPRESSIONCFG_NEW;

        public struct NET_DVR_COMPRESSIONCFG_NEW

            /// 定時錄像

            public NET_DVR_COMPRESSION_INFO_EX struLowCompression;

            /// 事件觸發錄像

            public NET_DVR_COMPRESSION_INFO_EX struEventCompression;

        /// 抓圖模式

        public enum CAPTURE_MODE

            /// BMP模式

            BMP_MODE = 0,        //

            /// JPEG模式 

            JPEG_MODE = 1        //

        /// 實時聲音模式

        public enum REALSOUND_MODE

            /// 獨占模式

            MONOPOLIZE_MODE = 1,

            /// 共享模式

            SHARE_MODE = 2

        /// 錄象檔案參數(帶卡号)

        ///     NET_DVR_FINDDATA_CARD, *LPNET_DVR_FINDDATA_CARD;

        public struct NET_DVR_FINDDATA_CARD

            /// 檔案名

            ///     char sFileName[100];

            public string sFileName;

            /// 檔案的開始時間

            public NET_DVR_TIME struStartTime;

            /// 檔案的結束時間

            public NET_DVR_TIME struStopTime;

            /// 檔案的大小

            public uint dwFileSize;

            /// 卡号?

            ///     char sCardNum[32];

            public char sCardNum;

        /// 設定重新連接配接間隔

        ///     NET_DVR_API BOOL __stdcall NET_DVR_SetReconnect(DWORD dwInterval = 30000, BOOL bEnableRecon = TRUE);

        /// <param name="dwInterval"></param>

        /// <param name="bEnableRecon"></param>

        /// <returns></returns>

        [DllImport("HCNetSDK.dll")]

        public static extern bool NET_DVR_SetReconnect(uint dwInterval, bool bEnableRecon);

        /// 通過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);

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

本文轉自over140 51CTO部落格,原文連結:http://blog.51cto.com/over140/586620,如需轉載請自行聯系原作者

繼續閱讀