je croyais avoir fait une bonne petite fonction me generant un mot de passe unique par jour
Testé avec 2 petits programmes j'obtenait bien pour un meme jour la meme valeur (sur un PC different ?)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 unit MdpUnit; interface uses SysUtils, DateUtils; function Generermotdepasse(L : Word) : String; implementation function Generermotdepasse(L : Word) : String; var Feed,motdp : String; aa,mm,jj : word; rdnum,r :integer; begin Feed:='ABCDEFGHIJKLMNPQRSTUVWXYZ'; // lettres autorisées Feed:=Feed+'123456789'; // chiffres decodedate(date,aa,mm,jj); rdnum:=aa mod 100*DayOfTheYear(Date)*(length(Feed)+L); // initialisation random motdp:=''; for mm:=1 to L do begin r:=random(rdnum) mod length(feed); motdp:=Motdp+Copy(Feed,r,1); end; result:=motdp; end; end.
lasj'utilise cette meme routine dans un plus gros projet et
![]()
celui la me fourni une valeur différente à chaque fois
pourquoi, je ne suis pas un pro du random , y'aurait t-il une initialisation manquante ?
Partager