// 回调方式接收识别结果 public void CallbackFuntion() { sIp1 = textBox1.Text.ToString(); sIp2 = textBox2.Text.ToString(); txtbox1 = sIp1; txtbox2 = sIp2; //新增代码 int nNum = 0; int ret; rbMessage.IsEnabled = false; rbCallBack.IsChecked = true; IntPtr pIP = IntPtr.Zero; this.ConnectCallback = new WTY.KHTSDK.WTYConnectCallback(this.ConnectStatue); this.JpegExCallback = new WTY.KHTSDK.WTYJpegCallback(this.JpegCallback); this.DataExCallbcak = new WTY.KHTSDK.WTYDataExCallback(this.WTYDataExCallback); // 注册通讯状态的回调函数(必选) WTY.KHTSDK.WTY_RegWTYConnEvent(this.ConnectCallback); // 注册获取JPEG流的回调函数(可选) WTY.KHTSDK.WTY_RegJpegEvent(this.JpegExCallback); // 注册获取识别结果的回调函数(必选) WTY.KHTSDK.WTY_RegDataExEvent(this.DataExCallbcak); // 设置图片保存的路径。(根据需求来调用此函数) //WTY.KHTSDK.WTY_SetSavePath("E:\\videos\\"); WTY.KHTSDK.WTY_SetSavePath(rootpath3 + "\\" + "photos"); // IP地址1的设备初始化 if (textBox1.Text != "") { pIP = Marshal.StringToHGlobalAnsi(textBox1.Text.Trim()); // 链接设备 ret = WTY.KHTSDK.WTY_InitSDK(8080, IntPtr.Zero, 0, pIP); if (ret != 0) { listBox1.Items.Add(textBox1.Text.ToString() + "初始化失败!"); } else { nNum = 1; button2.IsEnabled = true; g_bRecgoRuing = true; listBox1.Items.Add(textBox1.Text.ToString() + "初始化成功!"); button1.Content = "断开连接"; } } // IP地址2的设备初始化 if (textBox2.Text != "") { pIP = Marshal.StringToHGlobalAnsi(textBox2.Text.Trim()); // 链接设备 ret = WTY.KHTSDK.WTY_InitSDK(8080, IntPtr.Zero, 0, pIP); if (ret != 0) { listBox1.Items.Add(textBox2.Text.ToString() + "初始化失败!"); } else { nNum = 2; button2.IsEnabled = true; g_bRecgoRuing = true; listBox1.Items.Add(textBox2.Text.ToString() + "初始化成功!"); button1.Content = "断开连接"; } } // 启用线程,用来显示识别结果到界面上 if (nNum > 0) { Thread thread = new Thread(DeviceSelect); thread.Start(); } }
// 回调方式接收识别结果 public void CallbackFuntion() { sIp1 = Model.IPConfig.IP1; sIp2 = Model.IPConfig.IP2; txtbox1 = sIp1; txtbox2 = sIp2; //新增代码 int nNum = 0; int ret; IntPtr pIP = IntPtr.Zero; this.ConnectCallback = new WTY.KHTSDK.WTYConnectCallback(this.ConnectStatue); this.JpegExCallback = new WTY.KHTSDK.WTYJpegCallback(this.JpegCallback); this.DataExCallbcak = new WTY.KHTSDK.WTYDataExCallback(this.WTYDataExCallback); // 注册通讯状态的回调函数(必选) WTY.KHTSDK.WTY_RegWTYConnEvent(this.ConnectCallback); // 注册获取JPEG流的回调函数(可选) WTY.KHTSDK.WTY_RegJpegEvent(this.JpegExCallback); // 注册获取识别结果的回调函数(必选) WTY.KHTSDK.WTY_RegDataExEvent(this.DataExCallbcak); // 设置图片保存的路径。(根据需求来调用此函数) WTY.KHTSDK.WTY_SetSavePath(Model.DicValue.Rootpath + "\\" + "photos"); // IP地址1的设备初始化 if (sIp1 != "") { pIP = Marshal.StringToHGlobalAnsi(sIp1.Trim()); // 链接设备 ret = WTY.KHTSDK.WTY_InitSDK(8080, IntPtr.Zero, 0, pIP); if (ret != 0) { listBox1.Items.Add(sIp1.ToString() + "初始化失败!"); } else { nNum = 2; listBox1.Items.Add(sIp2.ToString() + "初始化成功!"); } } // IP地址2的设备初始化 if (sIp2 != "") { pIP = Marshal.StringToHGlobalAnsi(sIp2.Trim()); // 链接设备 ret = WTY.KHTSDK.WTY_InitSDK(8080, IntPtr.Zero, 0, pIP); if (ret != 0) { listBox1.Items.Add(sIp2.ToString() + "初始化失败!"); } else { nNum = 2; listBox1.Items.Add(sIp2.ToString() + "初始化成功!"); } } // 启用线程,用来显示识别结果到界面上 if (nNum > 0) { Thread thread = new Thread(DeviceSelect); thread.Start(); } }