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




Вниз

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


Socol   (2002-02-07 07:31) [0]

Здраствуйте!
Помогите придумать гениратор паролей.
Придумал как сделать цефровой примерно так
edit1.text := IntToStr(StrToInt(edit1.text) + 1);
А можно сделать чтобы он перебирал цифры с буквами и просто буквы.
Спасибки всем кто подсказал!



MBo   (2002-02-07 07:39) [1]

randomize;
edit1.text:="";
for i:=1 to 10 do begin
c:=chr(ord("0")+random(ord("z")-ord("0")));
if not (c in [":".."@"]) then
edit1.text:=edit1.text+c;
end;



Sergy   (2002-02-07 10:10) [2]

Я бы сделал так:

var
pass, str :string;
i:integer;
begin
str:="qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890";
Pass:="";
Randomize;
for i:=1 to 8 do
Pass:=Pass+copy(str,(RandomRange(1,Length(str))),1);
end;



MBo   (2002-02-07 10:14) [3]

RandomRange ????



Sergy   (2002-02-07 11:06) [4]

to MBo

function RandomRange(const AFrom, ATo: Integer): Integer;

Description

RandomRange returns a random integer from the range that extends between AFrom and ATo (inclusive). RandomRange can handle negative ranges (where AFrom is greater than ATo).

To initialize the random number generator, add a single call Randomize or assign a value to the RandSeed variable before making any calls to RandomRange.



Олег Лаукарт   (2002-02-07 11:33) [5]

Вместо пароля можно использовать GUID
function CreatePassword : string;
var aGUID : TGUID;
begin
CreateGUID(aGUID);
Result := GUIDToString(aGUID);
end;



Dimka Maslov   (2002-02-07 13:00) [6]

>Олег
...а потом мучаться упорно вспоминая комбинацию из 32 цифр.

>Sokol
Я пользуюсь таким методом


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;

function GetString(Chrs: TChrs): String;
var
i, C: Integer;
begin
Randomize;
C:=5+Random(8);
Result:="";
for i:=1 to C do Result:=Result+Chrs[1+Random(High(Chrs))];
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Shuffle(Chrs);
ShowMessage(GetString(Chrs));
end;





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




Наверх





Память: 0.72 MB
Время: 0.016 c
4-79504           mikrom                2001-12-26 09:46  2002.02.25  
Создание MDIChild из DLL


4-79518           Овал                  2001-12-25 01:31  2002.02.25  
Как написать заменитель Windows Explorer a ?


14-79471          perov                 2002-01-11 05:06  2002.02.25  
sftp


7-79486           Di_wind               2001-11-03 14:23  2002.02.25  
расшифровка PWL


6-79420           SemFLY                2001-12-02 01:14  2002.02.25  
Как удаленно приконектить диск, та как WNetConnectionDialog приконектит если доступ есть :-(