From 2830cce39c0f3e677993bb19c031eb61b43659a3 Mon Sep 17 00:00:00 2001
From: ccy <3140717620@qq.com>
Date: 星期四, 21 五月 2026 10:25:23 +0800
Subject: [PATCH] 同步与CNNCSIM的加密解密的方式

---
 mainwindow.cpp |  281 ++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 173 insertions(+), 108 deletions(-)

diff --git a/mainwindow.cpp b/mainwindow.cpp
index 9499d6c..1292e42 100644
--- a/mainwindow.cpp
+++ b/mainwindow.cpp
@@ -1,6 +1,8 @@
 锘�#include "mainwindow.h"
 #include "ui_mainwindow.h"
 #include "qaesencryption.h"
+#include "licensedata.h"
+#include "shortcrypto.h"
 
 #include <QClipboard>
 #include <QDateTime>
@@ -48,6 +50,12 @@
     ui->label_biosnum->setVisible(false);
     ui->label_basenum_2->setVisible(false);
     ui->label_biosnum_2->setVisible(false);
+    QTextOption opt = ui->textEdit_localid->document()->defaultTextOption();
+    opt.setWrapMode(QTextOption::WrapAnywhere);
+    ui->textEdit_localid->document()->setDefaultTextOption(opt);
+    QTextOption opt_lic = ui->textEdit_licensekey->document()->defaultTextOption();
+    opt_lic.setWrapMode(QTextOption::WrapAnywhere);
+    ui->textEdit_licensekey->document()->setDefaultTextOption(opt_lic);
     //鍓嶄竷鏉℃槸绠�鍖栧姞瀵嗘暟鎹繀鐢ㄧ殑,鍦ㄨ繖閲岃瀹氬ソ鏂逛究瀵瑰簲
     m_numToInfo.insert("1","Baseboard_Uuid");
     m_numToInfo.insert("2","CPU_Processorid");
@@ -269,57 +277,73 @@
 void MainWindow::on_pushButton_decrypt_clicked()
 {
     QString encryptlocalid = ui->textEdit_localid->toPlainText();
-    QString localid = getDecrypt(encryptlocalid,key);
-    QByteArray localidbyte = localid.toLocal8Bit();
-    QJsonParseError err_rpt;
-    QJsonDocument localidjsondoc(QJsonDocument::fromJson(localid.toUtf8(), &err_rpt));//瀛楃涓叉牸寮忓寲涓篔SON
-    if(err_rpt.error != QJsonParseError::NoError)
-    {
-        localinfo = LicenseInfo();
-        licenseinfo = LicenseInfo();
-        workingjsondoc = QJsonDocument();
-        ui->textEdit_licensekey->setPlainText("");
-        changeUIstate();
-        qDebug() << QStringLiteral("localid JSON鏍煎紡閿欒");
-        QMessageBox msgbox(QMessageBox::Information,QStringLiteral(""),QStringLiteral("瑙f瀽澶辫触锛屼笉鏄竴涓纭殑璁惧ID搴忓垪"),QMessageBox::Ok);
-        msgbox.setButtonText(QMessageBox::Ok,QStringLiteral("纭畾"));
-        msgbox.exec();
-    }
-    else    //JSON鏍煎紡姝g‘
-    {
-        QMessageBox msgbox(QMessageBox::Information,QStringLiteral(""),QStringLiteral("瑙f瀽鎴愬姛"),QMessageBox::Ok);
-        msgbox.setButtonText(QMessageBox::Ok,QStringLiteral("纭畾"));
-        msgbox.exec();
-        ui->textEdit_licensekey->setPlainText(ui->textEdit_localid->toPlainText());
-        workingjsondoc = QJsonDocument(QJsonDocument::fromJson(localidbyte));
+    // 涓�閿В瀵�
+    lic2.fromBinary(ShortCrypto::decrypt(encryptlocalid, key));
+    qDebug()<<"on_pushButton_decrypt_clicked"<<lic2.toDebugString();
+    //涓庝箣鍓嶇殑鍔犲瘑瀵瑰簲,涓斿幓鎺夊啑浣欎俊鎭�
+    localinfo.Baseboard_Uuid = LicenseData::uuidBinaryToString(lic2.boardUuid);
+    localinfo.CPU_Processorid = LicenseData::binaryToHexString(lic2.cpuSerial);
+    localinfo.Username = lic2.userName;
+    localinfo.LicensedDuration_end = lic2.expireDate.toString("yyyy-MM-dd");
+//    localinfo.LicensedDuration_start = localid_Obj.value(m_numToInfo.key("LicensedDuration_start")).toString();
+    localinfo.Productid = QString::number(lic2.productId);
+    localinfo.Versionid = QString::number(lic2.verMajor)+"."+QString::number(lic2.verMinor);
+    localinfo.ActiveState = static_cast<int>(lic2.activeState);
+    licenseinfo = LicenseInfo(localinfo);
+    ui->textEdit_licensekey->setPlainText(ui->textEdit_localid->toPlainText());
+    changeUIstate();
 
-        QJsonObject localid_Obj = localidjsondoc.object();
-//        localinfo.Baseboard_Serialnumber = localid_Obj.value("Baseboard_Serialnumber").toString();
-//        localinfo.Baseboard_Uuid = localid_Obj.value("Baseboard_Uuid").toString();
-//        localinfo.Bios_Serialnumber = localid_Obj.value("Bios_Serialnumber").toString();
-//        localinfo.CPU_Processorid = localid_Obj.value("CPU_Processorid").toString();
-//        localinfo.Username = localid_Obj.value("Username").toString();
-//        localinfo.IsEnabled_cell = localid_Obj.value("IsEnabled_cell").toInt();
-//        localinfo.IsEnabled_aquifer = localid_Obj.value("IsEnabled_aquifer").toInt();
-//        localinfo.IsEnabled_pipe = localid_Obj.value("IsEnabled_pipe").toInt();
-//        localinfo.IsEnabled_network = localid_Obj.value("IsEnabled_network").toInt();
-//        localinfo.LicensedDuration_end = localid_Obj.value("LicensedDuration_end").toString();
-//        localinfo.LicensedDuration_start = localid_Obj.value("LicensedDuration_start").toString();
-//        localinfo.Productid = localid_Obj.value("Productid").toString();
-//        localinfo.Versionid = localid_Obj.value("Versionid").toString();
+//    QString localid = getDecrypt(encryptlocalid,key);
+//    QByteArray localidbyte = localid.toLocal8Bit();
+//    QJsonParseError err_rpt;
+//    QJsonDocument localidjsondoc(QJsonDocument::fromJson(localid.toUtf8(), &err_rpt));//瀛楃涓叉牸寮忓寲涓篔SON
+//    if(err_rpt.error != QJsonParseError::NoError)
+//    {
+//        localinfo = LicenseInfo();
+//        licenseinfo = LicenseInfo();
+//        workingjsondoc = QJsonDocument();
+//        ui->textEdit_licensekey->setPlainText("");
+//        changeUIstate();
+//        qDebug() << QStringLiteral("localid JSON鏍煎紡閿欒");
+//        QMessageBox msgbox(QMessageBox::Information,QStringLiteral(""),QStringLiteral("瑙f瀽澶辫触锛屼笉鏄竴涓纭殑璁惧ID搴忓垪"),QMessageBox::Ok);
+//        msgbox.setButtonText(QMessageBox::Ok,QStringLiteral("纭畾"));
+//        msgbox.exec();
+//    }
+//    else    //JSON鏍煎紡姝g‘
+//    {
+//        QMessageBox msgbox(QMessageBox::Information,QStringLiteral(""),QStringLiteral("瑙f瀽鎴愬姛"),QMessageBox::Ok);
+//        msgbox.setButtonText(QMessageBox::Ok,QStringLiteral("纭畾"));
+//        msgbox.exec();
+//        ui->textEdit_licensekey->setPlainText(ui->textEdit_localid->toPlainText());
+//        workingjsondoc = QJsonDocument(QJsonDocument::fromJson(localidbyte));
 
-        //涓庝箣鍓嶇殑鍔犲瘑瀵瑰簲,涓斿幓鎺夊啑浣欎俊鎭�
-        localinfo.Baseboard_Uuid = localid_Obj.value(m_numToInfo.key("Baseboard_Uuid")).toString();
-        localinfo.CPU_Processorid = localid_Obj.value(m_numToInfo.key("CPU_Processorid")).toString();
-        localinfo.Username = localid_Obj.value(m_numToInfo.key("Username")).toString();
-        localinfo.LicensedDuration_end = localid_Obj.value(m_numToInfo.key("LicensedDuration_end")).toString();
-        localinfo.LicensedDuration_start = localid_Obj.value(m_numToInfo.key("LicensedDuration_start")).toString();
-        localinfo.Productid = localid_Obj.value(m_numToInfo.key("Productid")).toString();
-        localinfo.Versionid = localid_Obj.value(m_numToInfo.key("Versionid")).toString();
-        localinfo.ActiveState = localid_Obj.value(m_numToInfo.key("ActiveState")).toInt();
-        licenseinfo = LicenseInfo(localinfo);
-        changeUIstate();
-    }
+//        QJsonObject localid_Obj = localidjsondoc.object();
+////        localinfo.Baseboard_Serialnumber = localid_Obj.value("Baseboard_Serialnumber").toString();
+////        localinfo.Baseboard_Uuid = localid_Obj.value("Baseboard_Uuid").toString();
+////        localinfo.Bios_Serialnumber = localid_Obj.value("Bios_Serialnumber").toString();
+////        localinfo.CPU_Processorid = localid_Obj.value("CPU_Processorid").toString();
+////        localinfo.Username = localid_Obj.value("Username").toString();
+////        localinfo.IsEnabled_cell = localid_Obj.value("IsEnabled_cell").toInt();
+////        localinfo.IsEnabled_aquifer = localid_Obj.value("IsEnabled_aquifer").toInt();
+////        localinfo.IsEnabled_pipe = localid_Obj.value("IsEnabled_pipe").toInt();
+////        localinfo.IsEnabled_network = localid_Obj.value("IsEnabled_network").toInt();
+////        localinfo.LicensedDuration_end = localid_Obj.value("LicensedDuration_end").toString();
+////        localinfo.LicensedDuration_start = localid_Obj.value("LicensedDuration_start").toString();
+////        localinfo.Productid = localid_Obj.value("Productid").toString();
+////        localinfo.Versionid = localid_Obj.value("Versionid").toString();
+
+//        //涓庝箣鍓嶇殑鍔犲瘑瀵瑰簲,涓斿幓鎺夊啑浣欎俊鎭�
+//        localinfo.Baseboard_Uuid = localid_Obj.value(m_numToInfo.key("Baseboard_Uuid")).toString();
+//        localinfo.CPU_Processorid = localid_Obj.value(m_numToInfo.key("CPU_Processorid")).toString();
+//        localinfo.Username = localid_Obj.value(m_numToInfo.key("Username")).toString();
+//        localinfo.LicensedDuration_end = localid_Obj.value(m_numToInfo.key("LicensedDuration_end")).toString();
+//        localinfo.LicensedDuration_start = localid_Obj.value(m_numToInfo.key("LicensedDuration_start")).toString();
+//        localinfo.Productid = localid_Obj.value(m_numToInfo.key("Productid")).toString();
+//        localinfo.Versionid = localid_Obj.value(m_numToInfo.key("Versionid")).toString();
+//        localinfo.ActiveState = localid_Obj.value(m_numToInfo.key("ActiveState")).toInt();
+//        licenseinfo = LicenseInfo(localinfo);
+//        changeUIstate();
+//    }
 }
 
 void MainWindow::on_pushButton_accreditall_clicked()
@@ -505,31 +529,25 @@
 
 void MainWindow::giveLicense(int time)
 {
-    QJsonObject licensekey_Obj = workingjsondoc.object();
-//    licensekey_Obj[m_numToInfo.key("IsEnabled_cell")] = 1;
-//    licensekey_Obj[m_numToInfo.key("IsEnabled_aquifer")] = 1;
-//    licensekey_Obj[m_numToInfo.key("IsEnabled_pipe")] = 1;
-//    licensekey_Obj[m_numToInfo.key("IsEnabled_network")] = 1;
-    licensekey_Obj[m_numToInfo.key("ActiveState")] = 1;
-//    QDateTime licensedate = QDateTime::fromString(licensekey_Obj[m_numToInfo.key("LicensedDuration_end")].toString(),"yyyy-MM-dd hh:mm:ss");
-//    if(licensedate.isNull()){
-//        qDebug()<<"licenseTime is Null";
-//        licensedate = QDateTime::currentDateTime();
-//    }
     //鐜板湪鐐瑰嚮鎺堟潈鏄粠褰撳墠鐨勬椂闂村姞鎺堟潈鏃堕棿
     QDateTime licensedate = QDateTime::currentDateTime();
     QDateTime newlicensedate = licensedate.addMonths(time);
-    QString licensedatestr = newlicensedate.toString("yyyy-MM-dd hh:mm:ss");
-    licensekey_Obj[m_numToInfo.key("LicensedDuration_start")] = licensedate.toString("yyyy-MM-dd hh:mm:ss");
-    licensekey_Obj[m_numToInfo.key("LicensedDuration_end")] = licensedatestr;
-    workingjsondoc.setObject(licensekey_Obj);
-    //鏁版嵁鍘嬬缉锛屽幓绌烘牸鎹㈣绛夊浣欐棤鐢ㄤ俊鎭�
-    QByteArray compressedArray = QJsonDocument(licensekey_Obj).toJson(QJsonDocument::Compact);
-    QByteArray jsonbytearray = qCompress(compressedArray,9);
-    QString testid = jsonbytearray.toBase64();
-    ui->textEdit_licensekey->setPlainText("");
-    ui->textEdit_licensekey->setPlainText(getEncrypt(QString(testid),key));
-    setLicenseinfo(licensekey_Obj);
+    QString licensedatestr = newlicensedate.toString("yyyy-MM-dd");
+    lic2.expireDate = QDate::fromString(licensedatestr,"yyyy-MM-dd");
+//    lic2.expireDate = lic2.expireDate.addMonths(time);
+    lic2.activeState = 1;
+    QString cipher = ShortCrypto::encrypt(lic2.toBinary(), key);
+    ui->textEdit_licensekey->clear();
+    ui->textEdit_licensekey->setPlainText(cipher);
+    // 涓�閿В瀵�
+    LicenseData lic3;
+    lic3.fromBinary(ShortCrypto::decrypt(cipher, key));
+    qDebug()<<"change"<<cipher<<lic3.toDebugString()<<cipher.size();
+    //鏇存柊licenseinfo锛屽彧闇�瑕佹洿鏂癓icensedDuration_end銆丩icensedDuration_start銆丄ctiveState
+    licenseinfo.LicensedDuration_end = newlicensedate.toString("yyyy-MM-dd");
+    licenseinfo.LicensedDuration_start = licensedate.toString("yyyy-MM-dd");
+    licenseinfo.ActiveState = 1;
+    changeUIstate();
     //灏嗘巿鏉冧俊鎭褰曞埌excel琛ㄤ腑
     QString edition ="";
     if(time == 3){
@@ -539,12 +557,12 @@
     }else if(time == 12){
         edition = QStringLiteral("涓撲笟鐗�");
     }
-    ActiveRecord(licensekey_Obj,edition,ui->textEdit_licensekey->toPlainText());
+    ActiveRecord(lic2,edition,ui->textEdit_licensekey->toPlainText());
 }
 
-void MainWindow::ActiveRecord(QJsonObject jsonObj,QString edition, QString licenseKey)
+void MainWindow::ActiveRecord(LicenseData lic,QString edition, QString licenseKey)
 {
-    QString Baseboard_Uuid = jsonObj[m_numToInfo.key("Baseboard_Uuid")].toString();
+    QString Baseboard_Uuid = LicenseData::uuidBinaryToString(lic.boardUuid);
     QString src = QApplication::applicationDirPath();
     QDir dir(src);
     QString file_name(QStringLiteral("瀹夊叏璇勪环杞欢鎺堟潈浜烘暟缁熻琛�.xlsx"));
@@ -587,24 +605,58 @@
         int rowCount = xlsx.dimension().rowCount()+1;
         int id = xlsx.read(rowCount-1,1).toInt();
         xlsx.write(rowCount, 1, id+1);
-        xlsx.write(rowCount, 2, jsonObj[m_numToInfo.key("Baseboard_Uuid")].toString());
+        xlsx.write(rowCount, 2, LicenseData::uuidBinaryToString(lic.boardUuid));
         xlsx.write(rowCount, 3, edition);
-        xlsx.write(rowCount, 4, jsonObj[m_numToInfo.key("LicensedDuration_start")].toString());
-        xlsx.write(rowCount, 5, jsonObj[m_numToInfo.key("LicensedDuration_end")].toString());
-        xlsx.write(rowCount, 6, jsonObj[m_numToInfo.key("Productid")].toString());
-        xlsx.write(rowCount, 7, jsonObj[m_numToInfo.key("Versionid")].toString());
+        xlsx.write(rowCount, 4, QDate::currentDate().toString("yyyy-MM-dd"));
+        xlsx.write(rowCount, 5, lic.expireDate.toString("yyyy-MM-dd"));
+        xlsx.write(rowCount, 6, QString::number(lic2.productId));
+        xlsx.write(rowCount, 7, QString::number(lic2.verMajor)+"."+QString::number(lic2.verMinor));
         xlsx.write(rowCount, 8, licenseKey);
     }else{
         //濡傛灉瀛樺湪杩欐潯璁板綍灏辨洿鏂版暟鎹俊鎭�
-        xlsx.write(uuidColumn, 2, jsonObj[m_numToInfo.key("Baseboard_Uuid")].toString());
+        xlsx.write(uuidColumn, 2, LicenseData::uuidBinaryToString(lic.boardUuid));
         xlsx.write(uuidColumn, 3, edition);
-        xlsx.write(uuidColumn, 4, jsonObj[m_numToInfo.key("LicensedDuration_start")].toString());
-        xlsx.write(uuidColumn, 5, jsonObj[m_numToInfo.key("LicensedDuration_end")].toString());
-        xlsx.write(uuidColumn, 6, jsonObj[m_numToInfo.key("Productid")].toString());
-        xlsx.write(uuidColumn, 7, jsonObj[m_numToInfo.key("Versionid")].toString());
+        xlsx.write(uuidColumn, 4, QDate::currentDate().toString("yyyy-MM-dd"));
+        xlsx.write(uuidColumn, 5, lic.expireDate.toString("yyyy-MM-dd"));
+        xlsx.write(uuidColumn, 6, QString::number(lic2.productId));
+        xlsx.write(uuidColumn, 7, QString::number(lic2.verMajor)+"."+QString::number(lic2.verMinor));
         xlsx.write(uuidColumn, 8, licenseKey);
     }
     xlsx.save();
+}
+
+QString MainWindow::getEncrypt_New()
+{
+    QString localid = "";
+    LicenseInfo localinfo;
+    //鏌ヨ绯荤粺鐢ㄦ埛鍚�
+    localinfo.Username = qgetenv("USER"); // Linux绯荤粺
+    if (localinfo.Username.isEmpty())
+        localinfo.Username = qgetenv("USERNAME"); // Windows绯荤粺
+    //鏌ヨCPU搴忓垪鍙�
+    localinfo.CPU_Processorid = getWindowsInfo("wmic cpu get processorid");
+    //鏌ヨ涓绘澘搴忓垪鍙�
+    localinfo.Baseboard_Serialnumber = getWindowsInfo("wmic baseboard get serialnumber");
+    //鏌ヨBIOS搴忓垪鍙�
+    localinfo.Bios_Serialnumber = getWindowsInfo("wmic bios get serialnumber");
+    //鏌ヨ涓绘澘鍞竴鏍囪瘑
+    localinfo.Baseboard_Uuid = getWindowsInfo("wmic csproduct get uuid");
+
+    //灏濊瘯鏂扮殑鍔犲瘑鏂规硶
+    LicenseData lic;
+    lic.boardUuid  = LicenseData::hexStringToBinary(localinfo.Baseboard_Uuid);
+    lic.cpuSerial  = LicenseData::hexStringToBinary(localinfo.CPU_Processorid);
+    lic.userName   = localinfo.Username;
+    lic.expireDate = QDate::fromString(localinfo.LicensedDuration_end,"yyyy-MM-dd");
+    lic.productId  = localinfo.Productid.toUInt();
+    QString version = localinfo.Versionid;
+    lic.verMajor   = version.split(".").at(0).toUInt();
+    lic.verMinor   = version.split(".").at(1).toUInt();
+    lic.activeState = localinfo.ActiveState;
+    // 涓�閿姞瀵�
+    QString cipher = ShortCrypto::encrypt(lic.toBinary(), key);
+//    ui->textEdit_localid->setText(cipher);
+    return  cipher;
 }
 
 
@@ -612,6 +664,9 @@
 {
     QString localid = getLocalID();
     QString encryptid = getEncrypt(localid,key);
+
+    //鏂扮殑鍔犲瘑鏂规硶
+    encryptid = getEncrypt_New();
     ui->textEdit_localid->setText(encryptid);
 
     localinfo = LicenseInfo();
@@ -725,38 +780,48 @@
 
 void MainWindow::on_pushButton_setproid_clicked()
 {
-    QJsonObject licensekey_Obj = workingjsondoc.object();
-    licensekey_Obj[m_numToInfo.key("Productid")] = ui->lineEdit_setproid->text();
-    workingjsondoc.setObject(licensekey_Obj);
+//    QJsonObject licensekey_Obj = workingjsondoc.object();
+//    licensekey_Obj[m_numToInfo.key("Productid")] = ui->lineEdit_setproid->text();
+//    workingjsondoc.setObject(licensekey_Obj);
 
-    QByteArray compressedArray = QJsonDocument(licensekey_Obj).toJson(QJsonDocument::Compact);
-    QByteArray jsonbytearray = qCompress(compressedArray,9);
-    QString testid = jsonbytearray.toBase64();
-    ui->textEdit_licensekey->setPlainText("");
-    ui->textEdit_licensekey->setPlainText(getEncrypt(QString(testid),key));
-
-//    QByteArray jsonbytearray = workingjsondoc.toJson();
+//    QByteArray compressedArray = QJsonDocument(licensekey_Obj).toJson(QJsonDocument::Compact);
+//    QByteArray jsonbytearray = qCompress(compressedArray,9);
+//    QString testid = jsonbytearray.toBase64();
 //    ui->textEdit_licensekey->setPlainText("");
-//    ui->textEdit_licensekey->setPlainText(getEncrypt(QString(jsonbytearray),key));
-    setLicenseinfo(licensekey_Obj);
+//    ui->textEdit_licensekey->setPlainText(getEncrypt(QString(testid),key));
+
+    lic2.productId = ui->lineEdit_setproid->text().toUInt();
+    QString cipher = ShortCrypto::encrypt(lic2.toBinary(), key);
+    ui->textEdit_licensekey->setPlainText(cipher);
+//    setLicenseinfo(licensekey_Obj);
+
+    //閫欒!涔熷彧闇�瑕佹洿鏂皃roductId
+    licenseinfo.Productid = ui->lineEdit_setproid->text();
+    changeUIstate();
+
 }
 
 void MainWindow::on_pushButton_setversion_clicked()
 {
-    QJsonObject licensekey_Obj = workingjsondoc.object();
-    licensekey_Obj[m_numToInfo.key("Versionid")] = ui->lineEdit_setversion->text();
-    workingjsondoc.setObject(licensekey_Obj);
+//    QJsonObject licensekey_Obj = workingjsondoc.object();
+//    licensekey_Obj[m_numToInfo.key("Versionid")] = ui->lineEdit_setversion->text();
+//    workingjsondoc.setObject(licensekey_Obj);
 
-    QByteArray compressedArray = QJsonDocument(licensekey_Obj).toJson(QJsonDocument::Compact);
-    QByteArray jsonbytearray = qCompress(compressedArray,9);
-    QString testid = jsonbytearray.toBase64();
-    ui->textEdit_licensekey->setPlainText("");
-    ui->textEdit_licensekey->setPlainText(getEncrypt(QString(testid),key));
-
-//    QByteArray jsonbytearray = workingjsondoc.toJson();
+//    QByteArray compressedArray = QJsonDocument(licensekey_Obj).toJson(QJsonDocument::Compact);
+//    QByteArray jsonbytearray = qCompress(compressedArray,9);
+//    QString testid = jsonbytearray.toBase64();
 //    ui->textEdit_licensekey->setPlainText("");
-//    ui->textEdit_licensekey->setPlainText(getEncrypt(QString(jsonbytearray),key));
-    setLicenseinfo(licensekey_Obj);
+//    ui->textEdit_licensekey->setPlainText(getEncrypt(QString(testid),key));
+
+//    setLicenseinfo(licensekey_Obj);
+    QString version = ui->lineEdit_setversion->text();
+    lic2.verMajor = version.split(".").at(0).toUInt();
+    lic2.verMinor = version.split(".").at(1).toUInt();
+    QString cipher = ShortCrypto::encrypt(lic2.toBinary(), key);
+    ui->textEdit_licensekey->setPlainText(cipher);
+    //閫欒!涔熷彧闇�瑕佹洿鏂癡ersionid
+    licenseinfo.Versionid = ui->lineEdit_setversion->text();
+    changeUIstate();
 }
 
 void MainWindow::on_pushButton_normal_clicked()

--
Gitblit v1.9.1