123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- //---------------------------------------------------------------------------
- #include <vcl.h>
- #include "EncryptionF.h"
- #pragma hdrstop
- #include "FrmMainF.h"
- //---------------------------------------------------------------------------
- #pragma package(smart_init)
- #pragma link "cxContainer"
- #pragma link "cxControls"
- #pragma link "cxEdit"
- #pragma link "cxGraphics"
- #pragma link "cxLookAndFeelPainters"
- #pragma link "cxLookAndFeels"
- #pragma link "cxMaskEdit"
- #pragma link "cxSpinEdit"
- #pragma link "cxTextEdit"
- #pragma link "dxSkinBlack"
- #pragma link "dxSkinMcSkin"
- #pragma link "dxSkinsCore"
- #pragma link "cxButtons"
- #pragma link "cxDropDownEdit"
- #pragma resource "*.dfm"
- TFrmMain *FrmMain;
- //---------------------------------------------------------------------------
- __fastcall TFrmMain::TFrmMain(TComponent* Owner)
- : TForm(Owner)
- {
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmMain::cboLicenseTypePropertiesChange(TObject *Sender)
- {
- bool isVisible = false;
- if (cboLicenseType->ItemIndex == 0) {
- isVisible = true;
- }
- //lblIssueDays->Enabled = isVisible;
- seIssueDays->Enabled = isVisible;
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmMain::btnHostNameClick(TObject *Sender)
- {
- char szNom[512];
- DWORD size = 512;
- GetComputerName(szNom, &size);
- txtHostName->Text = String(szNom);
- }
- //---------------------------------------------------------------------------
- void __fastcall TFrmMain::btnLicenseGenerateXmlClick(TObject *Sender)
- {
- moLicenseXml->Lines->Clear();
- GUID guid;
- CoCreateGuid(&guid);
- //UUID uuid;
- //UuidCreateSequential(&uuid);
- String product = "AIP Gateway";
- String serial_id = GUIDToString(guid);
- serial_id = StringReplace(serial_id, "{", "", TReplaceFlags() << rfReplaceAll);
- serial_id = StringReplace(serial_id, "}", "", TReplaceFlags() << rfReplaceAll);
- String issue_day = Now().FormatString("YYYY-MM-DD");
- String licensee = txtHostName->Text.Trim();
- String edition = cboProductType->ItemIndex == 0 ? "standard" : "enterprise";
- String type = cboLicenseType->ItemIndex == 0 ? "demo" : "product";
- String accounts = String((int)seLicenseCnt->Value);
- String identified_host = txtHostName->Text.Trim();
- AnsiString endKey = product.UpperCase() + "hanteinfo12#$!" + serial_id.LowerCase() + issue_day + edition.UpperCase() + type.LowerCase() + AnsiString((int)seLicenseCnt->Value + 10000) + identified_host.LowerCase();
- String signature = ITSSHA256_Encrpyt(endKey);;
- String demo_duration = String((int)seIssueDays->Value);
- moLicenseXml->Lines->Add("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
- moLicenseXml->Lines->Add("<aip_license>");
- moLicenseXml->Lines->Add(" <license version=\"1.0\">");
- moLicenseXml->Lines->Add(" <product version=\"2\">" + product + "</product>");
- moLicenseXml->Lines->Add(" <serial_id>" + serial_id + "</serial_id>");
- moLicenseXml->Lines->Add(" <issue_day>" + issue_day + "</issue_day>");
- //moLicenseXml->Lines->Add(" <licensee>" + licensee + "</licensee>");
- moLicenseXml->Lines->Add(" <edition>" + edition + "</edition>");
- moLicenseXml->Lines->Add(" <type>" + type + "</type>");
- moLicenseXml->Lines->Add(" <accounts>" + accounts + "</accounts>");
- moLicenseXml->Lines->Add(" <identified_host>" + edition + "</identified_host>");
- moLicenseXml->Lines->Add(" <signature>" + signature + "</signature>");
- if (type == "demo") {
- moLicenseXml->Lines->Add(" <demo_duration>" + demo_duration + "</demo_duration>");
- }
- moLicenseXml->Lines->Add(" </license>");
- moLicenseXml->Lines->Add("</aip_license>");
- moLicenseXml->Lines->Add("");
- }
- //---------------------------------------------------------------------------
|