门禁获取门禁记录-公用部分说明
公用部分
-
NET_DVR_Init
(初始化)bool CHCNetSDK.NET_DVR_Init()
初始化海康组件返回值:
true:初始化成功
false:失败,失败原因:
- 海康SDK分32位和64位,项目中目标平台一定要与SDK一致(项目右键->属性->生成->目标平台)
- DllImport的HCNetSDK.dll路径不对,如果使用绝对路径也不对时,路径不要带中文再试试。
-
NET_DVR_Login_V40
(获得登录句柄)- 引用方法
[DllImport(@"..\..\runtime\hk\HCNetSDK.dll")] public static extern int NET_DVR_Login_V40(ref NET_DVR_USER_LOGIN_INFO pLoginInfo, ref NET_DVR_DEVICEINFO_V40 lpDeviceInfo);
-
参数说明
参数 说明 pLoginInfo 登录时需要的信息:
sDeviceAddress:设备地址
wPort:端口号
sUserName:用户名
sPassword:密码lpDeviceInfo 声明即可,一般不用赋值,如果赋值请参看海康SDK说明 返回值 登录句柄,当返回值不等于-1时即为登录成功,该句柄后期会一直使用 -
代码举例
//声明两个需要的变量 CHCNetSDK.NET_DVR_USER_LOGIN_INFO struLoginInfo = new CHCNetSDK.NET_DVR_USER_LOGIN_INFO(); CHCNetSDK.NET_DVR_DEVICEINFO_V40 struDeviceInfoV40 = new CHCNetSDK.NET_DVR_DEVICEINFO_V40(); // new一个byte数组,应该可以忽略 struDeviceInfoV40.struDeviceV30.sSerialNumber = new byte[CHCNetSDK.SERIALNO_LEN]; // 设置门禁的ip地址 struLoginInfo.sDeviceAddress = System.Text.Encoding.Default.GetBytes("门禁ip地址".Trim().PadRight(129, '\0').ToCharArray()); // 设置门禁的端口号,默认为8000 ushort.TryParse(端口号, out struLoginInfo.wPort); // 设置门禁的用户名,默认为admin struLoginInfo.sUserName = System.Text.Encoding.Default.GetBytes("admin".Trim().PadRight(64, '\0').ToCharArray()); // 设置门禁的密码 struLoginInfo.sPassword = System.Text.Encoding.Default.GetBytes("密码".Trim().PadRight(64, '\0').ToCharArray()); // 获得登录句柄 int lUserID = CHCNetSDK.NET_DVR_Login_V40(ref struLoginInfo, ref struDeviceInfoV40);
-
NET_DVR_Logout
(注销)bool NET_DVR_Logout(int iUserID)
注销当前账户,iUserId即为登录句柄 -
NET_DVR_Cleanup
(结束)bool NET_DVR_Cleanup()
释放SDK资源