Advertisement
Guest User

sample

a guest
Jan 19th, 2015
391
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 8.49 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Runtime.InteropServices;
  5. using System.Text;
  6.  
  7. namespace DVRtest
  8. {
  9.     class Program
  10.     {
  11.         [STAThread]
  12.         static void Main(string[] args)
  13.         {
  14.             long userid = 0;
  15.  
  16.             _net_sdk_deviceinfo dinfo = new _net_sdk_deviceinfo();
  17.             short port = 6036;
  18.  
  19.             try
  20.             {
  21.  
  22.                 if (DVR.NET_SDK_Init())
  23.                 {
  24.                     Console.WriteLine("ok");
  25.                     userid = DVR.NET_SDK_Login("192.168.1.132", port, "admin", "123456", out dinfo);
  26.                     userid.ToString();
  27.                 }
  28.                 else
  29.                 {
  30.                     Console.WriteLine("err");
  31.                 }
  32.             }
  33.             catch (Exception ex)
  34.             {
  35.                 Console.WriteLine(ex.ToString());
  36.             }
  37.             Console.ReadKey();
  38.  
  39.         }
  40.     }
  41.  
  42.     public class DVR
  43.     {
  44.  
  45.         [DllImport("DVR_NET_SDK.dll", CallingConvention = CallingConvention.Cdecl)]
  46.         public static extern long NET_SDK_Login([MarshalAs(UnmanagedType.LPStr)] string sDVRIP, short wDVRPort, [MarshalAs(UnmanagedType.LPStr)] string sUserName, [MarshalAs(UnmanagedType.LPStr)] string sPassword, out _net_sdk_deviceinfo devinfo);
  47.         [DllImport("DVR_NET_SDK.dll", CallingConvention = CallingConvention.Cdecl)]
  48.         public static extern bool NET_SDK_CapturePicture_Other(short userID, short channel, StringBuilder filename);
  49.         [DllImport("DVR_NET_SDK.dll", CallingConvention = CallingConvention.Cdecl)]
  50.         public static extern bool NET_SDK_Init();
  51.         //public static extern bool NET_SDK_GetSDKVersion();
  52.     }
  53.  
  54.     public struct _net_sdk_deviceinfo
  55.     {
  56.         byte localVideoInputNum;        //±ľµŘĘÓƵĘäČëͨµŔĘýÄż
  57.         byte audioInputNum;         //ŇôƵĘäČëͨµŔĘýÄż
  58.         byte sensorInputNum;            //´«¸ĐĆ÷ĘäČëͨµŔĘýÄż
  59.         byte sensorOutputNum;       //ĽĚµçĆ÷ĘäłöĘýÄż
  60.         uint displayResolutionMask;  //ĽŕĘÓĆ÷żÉѡÔńµÄ·Ö±ćÂĘ
  61.  
  62.         byte videoOuputNum;         //ĘÓƵĘäłöĘýÄżŁ¨Ľ°Ö§łÖ»Ř·Ĺ×î´óͨµŔĘýŁ©
  63.         byte netVideoOutputNum;     //ÍřÂç»Ř·Ĺ×î´óͨµŔĘýÄż
  64.         byte netVideoInputNum;      //Ęý×ÖĐźŽÓČëͨµŔĘýÄż
  65.         byte IVSNum;                    //ÖÇÄÜ·ÖÎöͨµŔĘýÄż
  66.  
  67.         byte presetNumOneCH;            //Ăż¸öͨµŔÔ¤ÖõăĘýÄż
  68.         byte cruiseNumOneCH;            //Ăż¸öͨµŔѲş˝ĎßĘýÄż
  69.         byte presetNumOneCruise;        //Ăż¸öѲş˝ĎßµÄÔ¤ÖõăĘýÄż
  70.         byte trackNumOneCH;         //Ăż¸öͨµŔąěĽŁĘýÄż
  71.  
  72.         byte userNum;               //ÓĂ»§ĘýÄż
  73.         byte netClientNum;          //×î¶ŕżÍ»§¶ËĘýÄż
  74.         byte netFirstStreamNum;     //Ö÷ÂëÁ÷´«ĘäµÄͨµŔ×î´óĘýÄżŁ¬Ľ´Í¬Ę±żÉŇÔÓĐĽ¸¸öżÍ»§¶Ë˛éż´Ö÷ÂëÁ÷
  75.         byte deviceType;                //É豸ŔŕĐÍ
  76.  
  77.         byte doblueStream;          //ĘÇ·ńÓĐĚáą©Ë«ÂëÁ÷
  78.         byte audioStream;           //ĘÇ·ńÓĐĚáą©ŇôƵÁ÷
  79.         byte talkAudio;             //ĘÇ·ńÓжԽ˛ą¦ÄÜ: 1±íĘľÓжԽ˛ą¦ÄÜ;0±íʾûÓĐ
  80.         byte bPasswordCheck;            //˛Ů×÷ĘÇ·ńŇŞĘäČëĂÜÂë
  81.  
  82.         byte defBrightness;         //ȱʡÁÁ¶Č
  83.         byte defContrast;           //ȱʡ¶Ô±Č¶Č
  84.         byte defSaturation;         //ȱʡ±ĄşÍ¶Č
  85.         byte defHue;                    //ȱʡɫµ÷
  86.  
  87.         short videoInputNum;            //ĘÓƵĘäČëͨµŔĘýÄżŁ¨±ľµŘĽÓÍřÂ磩
  88.         short deviceID;             //É豸IDşĹ
  89.         uint videoFormat;            //ϵͳµ±Ç°ÖĆĘ˝
  90.  
  91.         //ĽŮČçĘÇFUNC_REMOTE_UPGRADE¶ÔÓ¦µÄą¦ÄÜŁ¬ÄÇĂ´µÚFUNC_REMOTE_UPGRADE¸ö±ČĚŘÎŞ1Ł¬·ńÔňÎŞÁ㡣
  92.         uint function;          //ą¦ÄÜĂčĘö
  93.  
  94.         uint deviceIP;              //É豸ÍřÂçµŘÖ·
  95.         byte deviceMAC;         //É豸ÎďŔíµŘÖ·
  96.         ushort devicePort;              //É豸¶ËżÚ
  97.  
  98.         uint buildDate;             //´´˝¨ČŐĆÚ:year<<16 + month<<8 + mday
  99.         uint buildTime;             //´´˝¨Ę±Ľä:hour<<16 + min<<8 + sec
  100.  
  101.         char deviceName;            //É豸ĂűłĆ
  102.  
  103.         char firmwareVersion;           //ąĚĽţ°ć±ľ
  104.         char kernelVersion;             //Äں˰汾
  105.         char hardwareVersion;           //Ó˛Ľţ°ć±ľ
  106.         char MCUVersion;                    //µĄĆ¬»ú°ć±ľ
  107.     };
  108.  
  109.     enum status
  110.     {
  111.         NET_SDK_SUCCESS,
  112.         NET_SDK_PASSWORD_ERROR,
  113.         NET_SDK_NOENOUGH_AUTH,
  114.         NET_SDK_NOINIT,
  115.         NET_SDK_CHANNEL_ERROR,
  116.         NET_SDK_OVER_MAXLINK,
  117.         NET_SDK_LOGIN_REFUSED,
  118.         NET_SDK_VERSION_NOMATCH,
  119.         NET_SDK_NETWORK_FAIL_CONNECT,
  120.         NET_SDK_NETWORK_NOT_CONNECT,
  121.         NET_SDK_NETWORK_SEND_ERROR,
  122.         NET_SDK_NETWORK_RECV_ERROR,
  123.         NET_SDK_NETWORK_RECV_TIMEOUT,
  124.         NET_SDK_NETWORK_ERRORDATA,
  125.         NET_SDK_ORDER_ERROR,
  126.         NET_SDK_OPER_BY_OTHER,
  127.         NET_SDK_OPER_NOPERMIT,
  128.         NET_SDK_COMMAND_TIMEOUT,
  129.         NET_SDK_ERROR_SERIALPORT,
  130.         NET_SDK_ERROR_ALARMPORT,
  131.         NET_SDK_PARAMETER_ERROR,
  132.         NET_SDK_CHAN_EXCEPTION,
  133.         NET_SDK_NODISK,
  134.         NET_SDK_ERROR_DISKNUM,
  135.         NET_SDK_DISK_FULL,
  136.         NET_SDK_DISK_ERROR,
  137.         NET_SDK_NOSUPPORT,
  138.         NET_SDK_BUSY,
  139.         NET_SDK_MODIFY_FAIL,
  140.         NET_SDK_PASSWORD_FORMAT_ERROR,
  141.         NET_SDK_DISK_FORMATING,
  142.         NET_SDK_DVR_NORESOURCE,
  143.         NET_SDK_DVR_OPRATE_FAILED,
  144.         NET_SDK_OPEN_HOSTSOUND_FAIL,
  145.         NET_SDK_DVR_VOICEOPENED,
  146.         NET_SDK_TIME_INPUTERROR,
  147.         NET_SDK_NOSPECFILE,
  148.         NET_SDK_CREATEFILE_ERROR,
  149.         NET_SDK_FILEOPENFAIL,
  150.         NET_SDK_OPERNOTFINISH,
  151.         NET_SDK_GETPLAYTIMEFAIL,
  152.         NET_SDK_PLAYFAIL,
  153.         NET_SDK_FILEFORMAT_ERROR,
  154.         NET_SDK_DIR_ERROR,
  155.         NET_SDK_ALLOC_RESOURCE_ERROR,
  156.         NET_SDK_AUDIO_MODE_ERROR,
  157.         NET_SDK_NOENOUGH_BUF,
  158.         NET_SDK_CREATESOCKET_ERROR,
  159.         NET_SDK_SETSOCKET_ERROR,
  160.         NET_SDK_MAX_NUM,
  161.         NET_SDK_USERNOTEXIST,
  162.         NET_SDK_WRITEFLASHERROR,
  163.         NET_SDK_UPGRADEFAIL,
  164.         NET_SDK_CARDHAVEINIT,
  165.         NET_SDK_PLAYERFAILED,
  166.         NET_SDK_MAX_USERNUM,
  167.         NET_SDK_GETLOCALIPANDMACFAIL,
  168.         NET_SDK_NOENCODEING,
  169.         NET_SDK_IPMISMATCH,
  170.         NET_SDK_MACMISMATCH,
  171.         NET_SDK_UPGRADELANGMISMATCH,
  172.         NET_SDK_MAX_PLAYERPORT,
  173.         NET_SDK_NOSPACEBACKUP,
  174.         NET_SDK_NODEVICEBACKUP,
  175.         NET_SDK_PICTURE_BITS_ERROR,
  176.         NET_SDK_PICTURE_DIMENSION_ERROR,
  177.         NET_SDK_PICTURE_SIZ_ERROR,
  178.         NET_SDK_LOADPLAYERSDKFAILED,
  179.         NET_SDK_LOADPLAYERSDKPROC_ERROR,
  180.         NET_SDK_LOADDSSDKFAILED,
  181.         NET_SDK_LOADDSSDKPROC_ERROR,
  182.         NET_SDK_DSSDK_ERROR,
  183.         NET_SDK_VOICEMONOPOLIZE,
  184.         NET_SDK_JOINMULTICASTFAILED,
  185.         NET_SDK_CREATEDIR_ERROR,
  186.         NET_SDK_BINDSOCKET_ERROR,
  187.         NET_SDK_SOCKETCLOSE_ERROR,
  188.         NET_SDK_USERID_ISUSING,
  189.         NET_SDK_PROGRAM_EXCEPTION,
  190.         NET_SDK_WRITEFILE_FAILED,
  191.         NET_SDK_FORMAT_READONLY,
  192.         NET_SDK_WITHSAMEUSERNAME,
  193.         NET_SDK_DEVICETYPE_ERROR,
  194.         NET_SDK_LANGUAGE_ERROR,
  195.         NET_SDK_PARAVERSION_ERROR,
  196.         NET_SDK_FILE_SUCCESS,
  197.         NET_SDK_FILE_NOFIND,
  198.         NET_SDK_NOMOREFILE,
  199.         NET_SDK_FILE_EXCEPTION,
  200.         NET_SDK_TRY_LATER,
  201.         NET_SDK_ERROR,
  202.     }
  203.  
  204.     enum NET_DEVICE_STATUS
  205.     {
  206.         NET_DEVICE_STATUS_CONNECTED,
  207.         NET_DEVICE_STATUS_DISCONNECT,
  208.     };
  209.  
  210.     enum NET_SDK_STREAM_TYPE
  211.     {
  212.         NET_SDK_MAIN_STREAM,
  213.         NET_SDK_SUB_STREAM,
  214.     };
  215.  
  216.     enum NET_SDK_PLAYCTRL_TYPE
  217.     {
  218.         NET_SDK_PLAYCTRL_PAUSE,
  219.         NET_SDK_PLAYCTRL_FF,
  220.         NET_SDK_PLAYCTRL_REW,
  221.         NET_SDK_PLAYCTRL_RESUME,
  222.         NET_SDK_PLAYCTRL_STOP,
  223.         NET_SDK_PLAYCTRL_FRAME,
  224.         NET_SDK_PLAYCTRL_NORMAL,
  225.         NET_SDK_PLAYCTRL_STARTAUDIO,
  226.         NET_SDK_PLAYCTRL_STOPAUDIO,
  227.         NET_SDK_PLAYCTRL_AUDIOVOLUME,
  228.         NET_SDK_PLAYCTRL_SETPOS,
  229.     };
  230.  
  231.     enum NET_SDK_RPB_SPEED
  232.     {
  233.         NET_SDK_RPB_SPEED_1_32X = 1,
  234.         NET_SDK_RPB_SPEED_1_16X,
  235.         NET_SDK_RPB_SPEED_1_8X,     //1/8
  236.         NET_SDK_RPB_SPEED_1_4X,     //1/4
  237.         NET_SDK_RPB_SPEED_1_2X,     //1/2
  238.         NET_SDK_RPB_SPEED_1X,       //1
  239.         NET_SDK_RPB_SPEED_2X,
  240.         NET_SDK_RPB_SPEED_4X,
  241.         NET_SDK_RPB_SPEED_8X,
  242.         NET_SDK_RPB_SPEED_16X,
  243.         NET_SDK_RPB_SPEED_32X,
  244.     };
  245.  
  246. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement