/// <summary> /// 生成要求码 /// </summary> /// <param name="serialNumber">序列号</param> /// <param name="mCode">MAC地址</param> /// <returns></returns> public string GenerateRequestCode(string serialNumber, string mCode) { string V_1 = mCode; if (string.IsNullOrEmpty(V_1)) { return(string.Empty); } SerialNumberInfo V_2 = this.DecodeSerialNumber(serialNumber); // 解密序列号 Random V_3 = new Random(); int V_10 = V_3.Next(0xff); // 随机数,最大值255(0~FF) int V_11 = V_3.Next(14) + 1; // 随机数,最大值15(1~F) string V_4 = V_10.ToString("X").PadLeft(2, V_11.ToString("X")[0]); // V_11生成的值填充V_10(二位) V_1 += V_4; // 与MAC地址连起来 string V_5 = V_2.NumberOfPowerUsers.ToString("X").PadLeft(3, (char)0x30); // 将授权数转换成16进制,用0填充到3位(最大FFF个授权码). System.Threading.Thread.Sleep(1); int V_12 = V_3.Next(14) + 1; // 随机数,最大值15(1~F) string V_6 = V_12.ToString("X"); // 转换成16进制 System.Threading.Thread.Sleep(1); int V_7 = V_3.Next(5) + 2; // 随机数,最大值5(2~7) string V_8 = V_1 + V_5 + V_6; // 与MAC地址连起来 V_8 = this.Reverse(V_8); // 反转 V_8 = this.Confuse(V_8, V_7); // 混淆 System.Threading.Thread.Sleep(1); int V_13 = V_3.Next(14) + 1; // 随机数,最大值15(1~F) string V_9 = V_8 + V_7.ToString("X") + V_13.ToString("X"); // 与MAC地址连起来 object[] V_14 = new object[7]; V_14[0] = V_9.Substring(0, 5); V_14[1] = (char)0x2d; // '-' V_14[2] = V_9.Substring(5, 5); V_14[3] = (char)0x2d; // '-' V_14[4] = V_9.Substring(10, 5); V_14[5] = (char)0x2d; // '-' V_14[6] = V_9.Substring(15, 5); return(string.Concat(V_14)); }
public bool ContainsPowerUserLicense(string serialNumber) { SerialNumberInfo V_0 = this.DecodeSerialNumber(serialNumber); return(V_0.NumberOfPowerUsers != 0); }