Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Вниз

Генератор паролей 


Ольга   (2002-01-16 14:28) [0]

Я написала программку по генерации паролей (с условиями: 1. Количество символов от 1 до 256; 2. Не больше 2 заглавных или строчных букв подряд; 3. Добавление русских букв и знаков препинания).
Ну так вот... Мне очень интересно, есть что-нибудь подобное, если есть, то можно взглянуть? Спасибо.



Фэ   (2002-01-16 14:55) [1]

Вот что-то похожее.

function RandomRangeString_(Lmin,Lmax: Integer; Up:Boolean): String;
var
x,sl: integer;
begin
result := sNULL;
sl := RandomInteger_(Lmin,Lmax); {длина строки от Lmin до Lmax}
while Length(result) <= sl do begin
x := Byte(RandomInteger_(32, 255)); {общий диапазон символов}
if chr(x) in LatChars then {фильтр}
result := result + chr(x);
end;
if Length(result) > Lmax then
result := Copy(result, 1, Lmax);
if Up then Result := AnsiUpperCase(Result);
end;

function RandomInteger_(iLow, iHigh: Integer): Integer;
begin
result := Trunc(Random(iHigh - iLow)) + iLow;
end;



Стас   (2002-01-17 10:04) [2]

Я замылил тебе свой вариант решения (под D5).



Dimka Maslov   (2002-01-17 10:28) [3]

function GeneratePassword(Len: Integer): string;

type
TChrs = array [1..62] of Char;

var
Chrs: TChrs = "QWERTYUIOPASDFGHJKLZXCVBNM1234567890mnbvcxzasdfghjklpoiuytrewq";

procedure Shuffle(var Chrs: TChrs);
var
i, C: Integer;
Ch: Char;
Index1, Index2: Integer;
begin
C:=High(Chrs)*High(Chrs);
Randomize;
for i:=1 to C do begin
Index1:=1+Random(High(Chrs));
Index2:=1+Random(High(Chrs));
Ch:=Chrs[Index1];
Chrs[Index1]:=Chrs[Index2];
Chrs[Index2]:=Ch;
end;
end;

var
i: Integer;
begin
Randomize;
Result:="";
for i:=1 to Len do Result:=Result+Chrs[1+Random(High(Chrs))];
end;



Dimka Maslov   (2002-01-17 10:32) [4]

И ещё. Перед циклом for i:=1 to Len... нужно написать Shuffle(Chrs)




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.012 c
1-8859            kaif                  2002-01-21 03:56  2002.02.04  
MDI и WindowMenu ???


14-8999           zero                  2001-12-12 18:04  2002.02.04  
Merlin и модераторы отзовитесь, объясните что случилось


1-8878            Alexm                 2002-01-16 12:52  2002.02.04  
Свертывание окна


1-8915            Galy                  2002-01-17 13:30  2002.02.04  
Возможно ли в D5 создать программно компонент(н-р, SHAPE)?


14-8971           Pat                   2001-12-10 23:58  2002.02.04  
IconForge5.23a