Beispiel #1
0
        // 回调方式接收识别结果
        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();
            }
        }
Beispiel #2
0
        // 回调方式接收识别结果
        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();
            }
        }