Ejemplo n.º 1
0
        /// <summary>
        /// 收包这里不做分包合并,每一包都触发委托处理
        /// 在委托里面根据需要进行合包,分包信息在Header里面有,所以委托参数从Msg改为Packet,
        /// </summary>
        /// <param name="data">skt收到的报文字节</param>
        /// <param name="pkt">返回的自定义Packet类型对象</param>
        /// <returns>是否接收正确 0表示正常, 非0表示异常</returns>
        private int RecvOnePkt(byte[] data, out Packet pkt)
        {
            //Console.WriteLine("RecvOnePkt:");
            //Console.WriteLine("PktSN = " + pkt.Header.PktSN.ToString());
            //Console.WriteLine("MsgSn = " + pkt.Header.MsgSn.ToString());
            //Console.WriteLine("MsgType = 0x" + pkt.Header.MsgType.ToString("x"));
            //Console.WriteLine("MsgLen = " + pkt.Header.MsgLen.ToString());
            //Console.WriteLine("TotalMsgLen = " + pkt.Header.TotalMsgLen.ToString());

            pkt = new Packet(data);

            if (pkt.Data.Length < pkt.Header.MsgLen + Header.Length)
            {
                NLogHelper.DebugLog("pkt.Length<pkt.MsgLen + pkt.headerLen");
                return(-1);
            }

            if (pkt.Msg.Length < pkt.Header.TotalMsgLen)
            {
                NLogHelper.DebugLog("msg.data.Length < pkt.TotalMsgLen");
                return(-2);
            }

            return(0);   // rcv done
        }
Ejemplo n.º 2
0
        private void UsbDevices_DeviceRemoved(object sender, EventArgs e)
        {
            isConnect = false;
            USBEventArgs usbEvent = e as USBEventArgs;

            //Console.WriteLine(usbEvent.FriendlyName.ToString() + " Removed");
            NLogHelper.DebugLog(usbEvent.FriendlyName.ToString() + " Removed");
            MessageBox.Show(usbEvent.FriendlyName.ToString() + " Removed");
        }
Ejemplo n.º 3
0
        private int USBSend(byte[] data)
        {
            if (null == bepOut)
            {
                return(0);
            }

            int len = data.Length;

            if (bepOut.XferData(ref data, ref len))
            {
                Console.WriteLine($"Send One Msg MsgType:0x{BitConverter.ToInt32(data, 36):X2}");
                NLogHelper.DebugLog($"Send One Msg MsgType:0x{BitConverter.ToInt32(data, 36):X2}");
            }

            return(len);
        }