سلام دوست من
یه توضیحی بدم این کیجن برای یه قفل نرم افزاری هست که به مجبور شدم دنبالش برم داستانش مفصله . . .
این کد طوری هست که میاد شناسه سخت افزار هارد کامپیوتر میگیره (در سیستم های مختلف متفاوته )و با کد اختصاصی(فرضا ثابت ) که ما از قبل بهش دادیم میاد یه کد اکتیو تولید میکنه .
خوب حالا کد های مبنا در الگوریتم برنامه نویس
و کد های سیستم خودم به شرح زیر هستHTML Code:sepehr.Lock._testGlobalVar = { Language:"fa", TrialTime: "10", ProductName: "Product Name", IsDemoLicense: "true", SerialNumber: "1111222233334444", SerialNumberDecorated: "1111-2222-3333-4444", ComputerId: "1234567890", ComputerIdDecorated: "12345-67890", Company: "Company Name", ActivationCode: "23X32355Y967969ZZZ", SupportInternetUrl: "1",
حالا میخواستم بدونم چجوری باید یه کیجن با اتو پلی درست کنم . لطفا کمکم کنید .HTML Code:SerialNumberDecorated: "0615-7175-0678-3544", ComputerId: "20214-51410", ComputerIdDecorated: "20214-51410", ActivationCode: "Z9X74H21XYQ13Z1581",
اینم کد های اصلیلطفا کمک کنید .کد:// **NOTE: never update this file, this file will replaced by sepehr Softlock if (typeof sepehr == "undefined") sepehr = {}; if (typeof sepehr.SoftLock == "undefined") sepehr.SoftLock = {}; if (!Array.indexOf) { Array.prototype.indexOf = function(obj) { for (var i = 0; i < this.length; i++) { if (this[i] == obj) { return i; } } return -1; } } sepehr.SoftLock._testGlobalVar = { Language:"fa", TrialTime: "10", ProductName: "Product Name", IsDemoLicense: "true", SerialNumber: "1111222233334444", SerialNumberDecorated: "1111-2222-3333-4444", ComputerId: "1234567890", ComputerIdDecorated: "12345-67890", Phone: "Phone", Company: "Company Name", ActivationCode: "23X32355Y967969ZZZ", Email: "Email@email.com", FirstName: "First Name", LastName: "Last Name", SupportInternetUrl: "1", SupportInternetUrlValue: "http://www.SupportInternetUrl.com", SupportPhone: "true", SupportPhoneValue: "SupportPhone", SupportSms: "true", SupportSmsValue: "SupportSms" }; sepehr.SoftLock.lastRegModeGet = function() { var lastRegMode = this.getGlobalVar("LastRegMode"); if (lastRegMode=="") { var hash = window.location.hash; if (hash.length>0 && hash.charAt(0)=='#') hash = hash.substr(1); lastRegMode = hash; } return lastRegMode; }; sepehr.SoftLock.lastRegModeSet = function(value) { this.setGlobalVar("LastRegMode", value); }; sepehr.SoftLock.getGlobalBool = function(key) { if (!this.isSoftLockHost()) return true; return this.getGlobalInt(key) != 0; }; sepehr.SoftLock.isDemoLicense = function() { return this.getGlobalBool("IsDemoLicense"); }; sepehr.SoftLock.isSupportInternetAutomatic = function() { return this.getGlobalBool("SupportInternetAutomatic"); }; sepehr.SoftLock.isSupportInternetUrl = function() { return this.getGlobalBool("SupportInternetUrl"); }; sepehr.SoftLock.isSupportSms = function() { return this.getGlobalBool("SupportSms"); }; sepehr.SoftLock.isSupportPhone = function() { return this.getGlobalBool("SupportPhone"); }; sepehr.SoftLock.isSupportActivationFile = function() { return this.getGlobalBool("SupportActivationFile"); }; sepehr.SoftLock.isTrialEnabled = function() { return this.getGlobalBool("IsTrialEnabled"); }; sepehr.SoftLock.languageSet = function(name) { this.setGlobalVar("Language", name); }; sepehr.SoftLock.languageGet = function() { return this.getGlobalVar("Language"); }; sepehr.SoftLock.serialNumberGet = function() { return this.getGlobalVar("SerialNumber"); }; sepehr.SoftLock.computerIdGet = function() { return this.getGlobalVar("ComputerId"); }; sepehr.SoftLock.serialNumberSet = function(value) { return this.setGlobalVar("SerialNumber", value); }; sepehr.SoftLock.getGlobalInt = function(key) { var globalVar = this.getGlobalVar(key); var ret = parseInt(globalVar, 10); return isNaN(ret) ? 0 : ret; }; sepehr.SoftLock.getGlobalVar = function(key) { if (!this.isSoftLockHost()) { return this._testGlobalVar[key] == undefined ? "" : this._testGlobalVar[key]; } return this.sendDataToHost("Command=GetGlobalParam;Key=" + key); }; sepehr.SoftLock.setGlobalVar = function(key, value) { if (!this.isSoftLockHost()) this._testGlobalVar[key] = value; this.sendDataToHost("Command=SetGlobalParam;Key=" + key + ";Value=" + String(value)); }; sepehr.SoftLock.isSoftLockHost = function() { return window.external != null && window.external["sendDataToHost"] != undefined && sepehr.Convert.toBoolean(window.external["sendDataToHost"]("Command=IssepehrSoftLockHost"), false); }; sepehr.SoftLock.sendDataToHost = function(parameter) { if (!this.isSoftLockHost()) return ""; return window.external["sendDataToHost"](parameter); }; sepehr.SoftLock.runTrial = function() { this.sendDataToHost("Command=RunDemo"); }; sepehr.SoftLock.getCodeFromInternet = function() { this.sendDataToHost("Command=GetCodeFromInternet"); }; sepehr.SoftLock.getCodeFromFile = function() { this.sendDataToHost("Command=GetCodeFromFile"); }; sepehr.SoftLock.register = function() { this.sendDataToHost("Command=Register"); }; sepehr.SoftLock.checkSerialNumber = function() { this.sendDataToHost("Command=CheckSerialNumber"); }; // tools specific language functions sepehr.SoftLock.LangSpecification = function(name, displayName) { this.name = name; this.displayName = displayName; }; sepehr.SoftLock.getLanguages = function() { var languages = new Array(); var xmlString = this.isSoftLockHost() ? this.getGlobalVar("AllLanguages") : "<Languages> <Language Name='en' NativeName='English'/> <Language Name='fa' NativeName='فارسی' /> </Languages>"; var xml = sepehr.Xml.loadXMLString(xmlString); var languageElements = xml.getElementsByTagName("Language"); for (var i = 0; i < languageElements.length; i++) { var name = languageElements[i].getAttribute("Name"); var nativeName = languageElements[i].getAttribute("NativeName"); languages[i] = new sepehr.SoftLock.LangSpecification(name, nativeName); } return languages; }; sepehr.SoftLock.initLanguageCombo = function(combo) { var langArray = this.getLanguages(); for (var i = 0; i < langArray.length; i++) { var oOption = document.createElement("OPTION"); oOption.value = String(langArray[i].name); oOption.text = langArray[i].displayName; combo.options.add(oOption); if (langArray[i].name == this.languageGet()) combo.selectedIndex = i; } combo.onchange = function() { sepehr.SoftLock.languageSet(combo.value); location.reload(); } }; sepehr.SoftLock.serialTextBox_GetValue = function(edit1, edit2, edit3, edit4) { var edits = new Array(); //initialize all edit boxes edits.push(document.getElementById(edit1)); edits.push(document.getElementById(edit2)); edits.push(document.getElementById(edit3)); edits.push(document.getElementById(edit4)); var ret = ""; for (var i = 0; i < edits.length; i++) ret += edits[i].value; return ret; }; sepehr.SoftLock.serialTextBox_Init = function(edit1, edit2, edit3, edit4) { var edits = new Array(); //initialize all edit boxes edits.push(document.getElementById(edit1)); edits.push(document.getElementById(edit2)); edits.push(document.getElementById(edit3)); edits.push(document.getElementById(edit4)); function checkForNextFocus(element) { if (element.value.length == 4) { var index = edits.indexOf(element); if (index < 3) edits[index + 1].focus(); } } function onpaste(e) { if (window.clipboardData == undefined) return; if (e == undefined) e = window.event; var serialNumber = window.clipboardData.getData("Text"); serialNumber = serialNumber.replace(/-/g, ""); if (serialNumber.length == 16) { for (i = 0; i < 4; i++) edits[i].value = serialNumber.substr(i * 4, 4); } } function onpropertychange(e) { if (e == undefined) e = window.event; var target = e.target || e.srcElement; if (e.propertyName == "value") checkForNextFocus(target); } function onkeypress(e) { if (e == undefined) e = window.event; var target = e.target || e.srcElement; } for (var i = 0; i < edits.length; i++) { edits[i].maxLength = 4; edits[i].onpaste = onpaste; edits[i].onpropertychange = onpropertychange; } //set serial number to edit-boxes if exists var serialNumber = this.serialNumberGet(); if (serialNumber != "" && serialNumber.length == 16) { for (i = 0; i < 4; i++) edits[i].value = serialNumber.substr(i * 4, 4); } }; sepehr.SoftLock.formatUserCodeForSms = function() { var computerId = this.computerIdGet(); var serialNo = this.serialNumberGet(); var split = 4; var value = computerId + serialNo; var sms = new String(); for (var i = 0; i < value.length; i += split) { sms += value.substr(i, split); if (i + split < value.length) sms += "*"; } return sms; }; sepehr.SoftLock.checkActivationCode = function() { switch (this.getLastError().toLowerCase()) { case "cancel": break; case "": window.location = "ResultAccept.htm"; break; default: this.showLastError(); } }; sepehr.SoftLock.resourceFolderGet = function() { return "resources/" + this.languageGet(); }; sepehr.SoftLock.resourceManager = new sepehr.resources.ResourceManager("Resources", sepehr.SoftLock.languageGet()); sepehr.SoftLock.init = function() { var _this = this; this.resourceManager.onIsReadyChange.addListener(this, function() { if (!this.resourceManager.isReady()) return; document.body.innerHTML = sepehr.Utils.updateText(document.body.innerHTML, function(module, resourceFile, resourceKey) { if (resourceFile != null) resourceFile = resourceFile.toLowerCase(); if (resourceFile == null || resourceFile == "resources") { return _this.resourceManager.getString(resourceKey); } if (resourceFile == "properties") { return _this.getGlobalVar(resourceKey); } }); //sepehr.Html.loadCssFile(this.resourceFolderGet() + "/styles.css"); //security error on RTL sepehr.Html.setDocumentDirectionAndMirror(this.resourceManager.getString("Direction")); //update fields this.updateFields(false); }); this.resourceManager.init(); }; sepehr.SoftLock.insertLanguages = function() { //adding languages var languages = this.getLanguages(); for (var i = 0; i < languages.length; i++) this.resourceManager.addResourceSet(languages[i].name, "resources/" + languages[i].name + "/Resources.resx"); }; sepehr.SoftLock.getLastError = function() { return this.getGlobalVar("LastError"); }; sepehr.SoftLock.getLastErrorInfo = function() { return this.getGlobalVar("LastErrorParam"); }; sepehr.SoftLock.showLastError = function() { var err = this.getLastError(); var errInfo = this.getLastErrorInfo(); var msg = this.resourceManager.getString(err); if (msg == null) msg = "Unknown Error!"; if (errInfo > "") msg += "\n\n"; alert(msg); }; sepehr.SoftLock.updateField = function(elementId, save) { if (document.getElementById(elementId) == undefined) return; var captal = elementId.substr(0, 1).toLocaleUpperCase() + elementId.substr(1); if (save) this.setGlobalVar(captal, document.getElementById(elementId).value); else document.getElementById(elementId).value = this.getGlobalVar(captal); }; sepehr.SoftLock.updateFields = function(save) { sepehr.SoftLock.updateField("firstName", save); sepehr.SoftLock.updateField("lastName", save); sepehr.SoftLock.updateField("email", save); sepehr.SoftLock.updateField("company", save); sepehr.SoftLock.updateField("phone", save); sepehr.SoftLock.updateField("activationCode", save); sepehr.SoftLock.updateField("serialNumber", save); sepehr.SoftLock.updateField("serialNumberDecorated", save); sepehr.SoftLock.updateField("computerId", save); sepehr.SoftLock.updateField("computerIdDecorated", save); sepehr.SoftLock.updateField("country", save); sepehr.SoftLock.updateField("city", save); sepehr.SoftLock.updateField("address", save); if (document.getElementById("serial1") != undefined) { if (save) sepehr.SoftLock.serialNumberSet(sepehr.SoftLock.serialTextBox_GetValue("serial1", "serial2", "serial3", "serial4")); else sepehr.SoftLock.serialTextBox_Init("serial1", "serial2", "serial3", "serial4"); } }; //startup codes sepehr.SoftLock.insertLanguages(); //start loading languages
Bookmarks