コード例 #1
0
        public static ICommand GetCommand(NVItemList nv, bool write, byte[] data)
        {
            Qcdm.Cmd qCDMCmd = Qcdm.Cmd.DIAG_NV_READ_F;
            if (write)
            {
                qCDMCmd = Qcdm.Cmd.DIAG_NV_WRITE_F;
            }
            switch (nv)
            {
            case NVItemList.NV_ESN_I:
                return(new Cmd_NV_ESN_I(qCDMCmd, nv, data, qCDMCmd.ToString() + ", " + nv.ToString()));

            case NVItemList.NV_MEID_I:
                return(new Cmd_NV_MEID_I(qCDMCmd, nv, data, qCDMCmd.ToString() + ", " + nv.ToString()));

            case NVItemList.NV_UE_IMEI_I:
                return(new Cmd_NV_UE_IMEI_I(qCDMCmd, nv, data, qCDMCmd.ToString() + ", " + nv.ToString()));

            case NVItemList.NV_LOCK_CODE_I:
                return(new Cmd_NV_LOCK_CODE_I(qCDMCmd, nv, data, qCDMCmd.ToString() + ", " + nv.ToString()));

            case NVItemList.NV_SEC_CODE_I:
                return(new Cmd_NV_SEC_CODE_I(qCDMCmd, nv, data, qCDMCmd.ToString() + ", " + nv.ToString()));
            }
            return(new Cmd_NV(qCDMCmd, nv, data, qCDMCmd.ToString() + ", " + nv.ToString()));
        }
コード例 #2
0
 public Cmd_DIAG_VERNO_F(Qcdm.Cmd QCDMCmd, string strConsoleOut) : base(QCDMCmd, strConsoleOut)
 {
     this.AppPath       = Application.StartupPath.ToString();
     this.fileMobModel  = this.AppPath + @"\QCDM\ENUMS\MobModel.txt";
     this.fileMobCAIRev = this.AppPath + @"\QCDM\ENUMS\MobCAIRev.txt";
     this.fileMSMRev    = this.AppPath + @"\QCDM\ENUMS\MSMRev.txt";
 }
コード例 #3
0
        public static ICommand GetCommand(Qcdm.Cmd qc, byte[] data)
        {
            switch (qc)
            {
            case Qcdm.Cmd.DIAG_SPC_F:
                return(new Cmd_DIAG_SPC_F(qc, data, qc.ToString()));

            case Qcdm.Cmd.DIAG_PASSWORD_F:
                return(new Cmd_DIAG_PASSWORD_F(qc, data, qc.ToString()));
            }
            return(new Command(qc, data, qc.ToString()));
        }
コード例 #4
0
 public Command(byte[] bytes, string strConsoleOut)
 {
     this._currQCDMCmd = Qcdm.Cmd.NOT_A_COMMAND;
     this._currNVItem  = NVItemList.NOT_AN_NV_ITEM;
     this._txBytes     = bytes;
     if (!string.IsNullOrEmpty(strConsoleOut))
     {
         this._consoleOut = "Raw Bytes(): " + strConsoleOut;
     }
     else
     {
         this._consoleOut = string.Empty;
     }
 }
コード例 #5
0
        public static ICommand GetCommand(Qcdm.Cmd qc)
        {
            switch (qc)
            {
            case Qcdm.Cmd.DIAG_ESN_F:
                return(new Cmd_DIAG_ESN_F(qc, qc.ToString()));

            case Qcdm.Cmd.DIAG_VERNO_F:
                return(new Cmd_DIAG_VERNO_F(qc, qc.ToString()));

            case Qcdm.Cmd.DIAG_EXT_BUILD_ID_F:
                return(new Cmd_DIAG_EXT_BUILD_ID_F(qc, qc.ToString()));
            }
            return(new QCDMCommand(qc));
        }
コード例 #6
0
 public Command(Qcdm.Cmd QCDMCmd, string strConsoleOut)
 {
     this._currQCDMCmd = Qcdm.Cmd.NOT_A_COMMAND;
     this._currNVItem  = NVItemList.NOT_AN_NV_ITEM;
     this._currQCDMCmd = QCDMCmd;
     byte[] bs = new byte[] { byte.Parse(Conversions.ToString((int)QCDMCmd)) };
     this._txBytes = CRC.GetBufferWithCRC(bs);
     if (!string.IsNullOrEmpty(strConsoleOut))
     {
         this._consoleOut = strConsoleOut + " (CRC+7E)";
     }
     else
     {
         this._consoleOut = string.Empty;
     }
 }
コード例 #7
0
        public Command(Qcdm.Cmd QCDMCmd, byte[] data, string strConsoleOut)
        {
            this._currQCDMCmd = Qcdm.Cmd.NOT_A_COMMAND;
            this._currNVItem  = NVItemList.NOT_AN_NV_ITEM;
            this._currQCDMCmd = QCDMCmd;
            List <byte> list = new List <byte> {
                byte.Parse(Conversions.ToString((int)QCDMCmd))
            };

            foreach (byte num in data)
            {
                list.Add(num);
            }
            this._txBytes = CRC.GetBufferWithCRC(list.ToArray());
            if (!string.IsNullOrEmpty(strConsoleOut))
            {
                this._consoleOut = strConsoleOut + " (CRC+7E)";
            }
            else
            {
                this._consoleOut = string.Empty;
            }
        }
コード例 #8
0
        public Command(Qcdm.Cmd QCDMCmd, NVItemList NVItem, byte[] NVItemData, string strConsoleOut)
        {
            this._currQCDMCmd = Qcdm.Cmd.NOT_A_COMMAND;
            this._currNVItem  = NVItemList.NOT_AN_NV_ITEM;
            this._currQCDMCmd = QCDMCmd;
            this._currNVItem  = NVItem;
            string str = long.Parse(Conversions.ToString((long)NVItem)).ToString("X");

            while (str.Length < 4)
            {
                str = "0" + str;
            }
            List <byte> list = new List <byte> {
                byte.Parse(Conversions.ToString((int)QCDMCmd)),
                Convert.ToByte(Conversions.ToString(str[2]) + Conversions.ToString(str[3]), 0x10),
                Convert.ToByte(Conversions.ToString(str[0]) + Conversions.ToString(str[1]), 0x10)
            };

            foreach (byte num in NVItemData)
            {
                list.Add(num);
            }
            while (list.Count < 0x85)
            {
                list.Add(0);
            }
            this._txBytes = CRC.GetBufferWithCRC(list.ToArray());
            if (!string.IsNullOrEmpty(strConsoleOut))
            {
                this._consoleOut = strConsoleOut + " (CRC+7E)";
            }
            else
            {
                this._consoleOut = string.Empty;
            }
        }
コード例 #9
0
 public Cmd_NV_MEID_I(Qcdm.Cmd QCDMCmd, NVItemList NVItem, byte[] data, string strConsoleOut) : base(QCDMCmd, NVItem, data, strConsoleOut)
 {
 }
コード例 #10
0
 public QCDMCommand(Qcdm.Cmd qcCmd) : base(qcCmd, qcCmd.ToString())
 {
 }
コード例 #11
0
 public Cmd_DIAG_SPC_F(Qcdm.Cmd QCDMCmd, byte[] data, string strConsoleOut) : base(QCDMCmd, data, strConsoleOut)
 {
 }
コード例 #12
0
 public Cmd_DIAG_EXT_BUILD_ID_F(Qcdm.Cmd QCDMCmd, string strConsoleOut) : base(QCDMCmd, strConsoleOut)
 {
     this.AppPath        = Application.StartupPath.ToString();
     this.fileMSMHWRev   = this.AppPath + @"\QCDM\ENUMS\MSMHWRev.txt";
     this.fileMobModelID = this.AppPath + @"\QCDM\ENUMS\MobModel.txt";
 }
コード例 #13
0
 public Cmd_DIAG_ESN_F(Qcdm.Cmd QCDMCmd, string strConsoleOut) : base(QCDMCmd, strConsoleOut)
 {
 }