Этот метод шифрования разделен на три части:
1. Определите содержимое диалога настройки на основе результатов поиска для реестра.
2. Если вы используете его в первый раз, установите новый пароль;
3. апплет преобразования пароля (гораздо сложнее, чем оригинальный). Конечно, если вам нужно изменить функцию пароля, просто измените часть настройки пароля.
1. Когда программа запускается, найдите в реестре, чтобы определить, есть ли пароль для определения отображения содержимого окна. Однако перед использованием следует сделать следующее утверждение:
Добавьте Tregistry к пользователю и добавьте следующие переменные формы в объявление VAR:
Таким образом: Tregistry;
KeyName, ValueSt, Tempstr: String;
Процедура tfrmpass.formshow (отправитель: tobject);
Начинать
Altug: = tregistry.create;
Попробуйте Tuest.
KeyName: = ′ Software/MyPassword ′;
// Если этот ключ доступен, он будет открыт;
Если, например, (KeyName, True, True), тогда начните
Tempstr: = ExtractFilename (Application.Exename);
ValueStr: = altg.readString (tempstr);
// Если пароль не пуст, измените форму, чтобы проверить пароль
Если valuestr <> '', тогда начните
edit2.visible: = false;
edit1.setfocus;
// Если пароль пуст, измените форму для установки пароля диалоговое окно
иначе начинается
ShowMessage (′, пожалуйста, установите пароль на первый раз! ′);
edit2.visible: = true;
edit1.setfocus;
конец;
Наконец -то конец;
2. Код ответа кнопки: включает новый пароль и пароль проверки.
Процедура tfrmpass.okclick (отправитель: tobject);
Начинать
// судить существующий пароль в зависимости от того, отображается ли Edit2 или нет, и проверить
Если Edit2.visible = false, тогда начните
Если Pass (edit1.text) = ValueSt
ShowMessage («Пароль правильный!»);
иначе начинается
ShowMessage («Пароль неверный! Нет разрешения на работу!»);
Остановка;
иначе начинается
Если edit1.text = edit2.text, затем начните
Altug: = tregistry.create;
Altg.rootkey: = hkey - local - machine;
KeyName: = ′ Software/MyPassword ′;
Если.
Theng.writestring (tempstr, pass (edit1.text));
Всёрк
иначе начинается
ShowMessage ('«Пароль» снова непоследователен, пожалуйста, снова введите! »);
edit1.text: = ′ ′;
edit1.setfocus;
конец;
3. Программа преобразования пароля: будьте осторожны с предварительно определенными.
На мой взгляд, эта программа «Преобразование» не очень сложна. Читатели также могут использовать другие математические функции для выполнения более сложных преобразований.
Функция Pass (PSTR: String): String;
var str, str1: string;
я, J: целое число;
Начинать
str: = pSTR;
для i: = 1 к длине (str)
// пожалуйста первое изменение
J: = (I * I * I MOD (I + 20))+(i * I MOD (I + 10))+I * 2 + 1;
str1: = str1+chr (ord (str [i])+j);
J: = (I * I * I MOD (I + 10))+(i * I MOD (I + 20))+I * 2 + 1;
str1: = str1+chr (ord (str [i])+j);
Pass: = str1;
конец;