| | |
| | |
|
| | | foreach (var data in verResult.PageData)
|
| | | {
|
| | | //固件版本显示:
|
| | | //10101 3个byte 显示为:ver.1.01.01
|
| | | if (data.FirmwareVersion.Length != 6 && data.FirmwareVersion.Length != 5)
|
| | | {
|
| | | //非正规的固件版本,不再考虑范围内
|
| | | continue;
|
| | | }
|
| | | //硬件分类
|
| | | FirmwareHardInfo hardInfo = null;
|
| | | string hardCode = data.HardwareVersion;
|
| | |
| | | //它不是升级固件, .bin是特殊的
|
| | | continue;
|
| | | }
|
| | | int testVersion = Convert.ToInt32(verInfo.FirmwareVersion.ToString().PadLeft(6, '0').Substring(2, 2));
|
| | | if (testVersion % 2 != 0)
|
| | | {
|
| | | //中间那个byte为奇数时,代表是测试版本,在显示最新版本时,不需要显示,但是在历史版本那里可以显示
|
| | | //中间那个byte为偶数时,代表是正式版本
|
| | | continue;
|
| | | }
|
| | |
|
| | | if (verInfo.FirmwareVersion > nowVersion)
|
| | | {
|
| | | nowVersion = verInfo.FirmwareVersion;
|
| | |
| | | Info.UpdateContent.AddRange(Arry);
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 将十六进制转为十进制
|
| | | /// </summary>
|
| | | /// <param name="text"></param>
|
| | | /// <returns></returns>
|
| | | private static int ConvertHexToInt(string text)
|
| | | {
|
| | | if (text.StartsWith("0x"))
|
| | | {
|
| | | text = text.Substring(2);
|
| | | }
|
| | | try
|
| | | {
|
| | | return Convert.ToInt32(text, 16);
|
| | | }
|
| | | catch { return -1; }
|
| | | }
|
| | | #endregion
|
| | | }
|
| | | }
|