示例#1
0
 private void CMD_Save_btn_Click(object sender, EventArgs e)
 {
     NewCMD = CMD_bytesBox.GetCMD();
     if (NewCMD != null)
     {
         this.DialogResult = DialogResult.OK;
     }
 }
示例#2
0
 /// <summary>
 /// 校验和
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void MS_CheckSum_Click(object sender, EventArgs e)
 {
     Lib.CMD cmd = CMD_bytesBox.GetCMD();
     if (cmd != null)
     {
         byte check = Lib.BytesCheck.GetXOR(cmd.Bytes);
         CMD_bytesBox.AppendText(Convert.ToString(check, 16).PadLeft(2, '0'));
     }
 }
示例#3
0
        /// <summary>
        /// 获取命令对象
        /// </summary>
        /// <returns></returns>
        public Lib.CMD GetCMD()
        {
            try
            {
                Lib.CMD Cmd = null;
                if (this.Text.Trim() == string.Empty)
                {
                    MessageBox.Show("不允许内容为空!");
                    return(null);
                }

                byte[] data;
                switch (_EncodeType)
                {
                case EnumType.DataEncode.Hex:
                    string[] HexStr = this.Text.Trim().Split(' ');
                    data = new byte[HexStr.Length];
                    for (int i = 0; i < HexStr.Length; i++)
                    {
                        data[i] = (byte)(Convert.ToInt32(HexStr[i], 16));
                    }
                    Cmd = new Lib.CMD(EnumType.DataEncode.Hex, data);
                    break;

                case EnumType.DataEncode.ASCII:
                    data = new ASCIIEncoding().GetBytes(this.Text.Trim());
                    Cmd  = new Lib.CMD(EnumType.DataEncode.ASCII, data);
                    break;

                case EnumType.DataEncode.GB2312:
                    data = Encoding.GetEncoding("GB2312").GetBytes(this.Text);
                    Cmd  = new Lib.CMD(EnumType.DataEncode.GB2312, data);
                    break;
                }
                return(Cmd);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                return(null);
            }
        }
示例#4
0
 public CmdForm(Lib.CMD cmd)
 {
     InitializeComponent();
     CMD_bytesBox.SetCMD(cmd);
     SetType(CMD_bytesBox.EncodeType);
 }