Вам понадобилось, чтобы Ваше приложение само создавало пароли ? Возможно
данный способ Вам пригодится. Всё очень просто: пароль создаётся из символов,
выбираемых случайным образом из таблицы.
Совместимость: Delphi 5.x (или выше)
Собственно сам исходничек: Пароль создаётся из символов, содержащихся в
таблице.
Внимание: Длина пароля должна быть меньше, чем длина таблицы!
|
|
//
запускаем генератор случайных чисел (только при старте приложения).
procedure TForm1.FormCreate(Sender:
TObject); begin
Randomize; end; function RandomPwd(PWLen:
integer): string; // таблица символов,
используемых в пароле const StrTable: string =
'!#$%&/()=?@<>|{[]}\*~+#;:.-_'
+
'ABCDEFGHIJKLMabcdefghijklm' +
'0123456789' +
'ДЦЬдцьЯ' +
'NOPQRSTUVWXYZnopqrstuvwxyz'; var
N, K, X, Y: integer; begin
// проверяем максимальную длину
пароля
if (PWlen > Length(StrTable)) then K :=
Length(StrTable)-1
else K := PWLen;
SetLength(result, K); // устанавливаем длину
конечной строки
Y := Length(StrTable); // Длина Таблицы для
внутреннего цикла
N := 0; // начальное
значение цикла
while N < K do begin // цикл
для создания K символов
X := Random(Y) + 1; //
берём следующий случайный символ
// проверяем присутствие этого символа в конечной
строке
if (pos(StrTable[X], result) = 0)
then begin
inc(N); // символ не найден
Result[N] :=
StrTable[X]; // теперь его
сохраняем
end;
end; end; procedure
TForm1.Button1Click(Sender: TObject); var
cPwd: string; begin
// вызываем функцию генерации пароля из 30
символов
cPwd := RandomPwd(30);
// ... end; | |