Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi CD-Key Problem (https://www.delphipraxis.net/55228-cd-key-problem.html)

A-M-X 18. Okt 2005 13:09


CD-Key Problem
 
Hiho!!

Habe mal gesucht und hab auch gefunden:
CD-Key generieren

nur irgendwie blick ich nich durch...

Koennt mir da einer helfen? ^^

Edit:

habs so gemacht:

Delphi-Quellcode:
function CDKey(Seed:String): String;
const Key1: Array[0..9] of Char = ('2','5','8','9','5','a','1','3','6','7');
      Key2: Array[0..9] of Char = ('8','3','4','0','1','7','x','9','3','9');
var i: integer;

begin
 result := Seed + '-';

 for i:= 1 to length(Seed) do
  result := result + Key1[Ord(Seed[i])-48];

 result := result + '-';

 for i:= 1 to length(Seed) do
  result := result + Key2[Ord(Seed[i])-48];

end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
 if CDKey(Copy(Edit1.Text,1,4)) = Edit1.Text then
  Caption := 'Richtig' else Caption := 'falscher Key';
end;
funtzt aber irgendwie ned so , wies klappen soll...

freak4fun 18. Okt 2005 13:22

Re: CD-Key Problem
 
Hallo :hi:,
wenn in Edit1 '1234-5895-3401' steht, ist der Key richtig. Was funktioniert denn nicht?

MfG
freak

A-M-X 18. Okt 2005 13:29

Re: CD-Key Problem
 
ich meinte nur , ob mir das wer erklären koennte...

Ich möchte halt auf ne simple und einfache art mein programm nach der trial phase freigeben...

freak4fun 18. Okt 2005 13:40

Re: CD-Key Problem
 
Zitat:

Zitat von A-M-X
Hiho!!
Delphi-Quellcode:
function CDKey(Seed:String): String;
const Key1: Array[0..9] of Char = ('2','5','8','9','5','a','1','3','6','7');
      Key2: Array[0..9] of Char = ('8','3','4','0','1','7','x','9','3','9');
var i: integer;

begin
 result := Seed + '-';
 // result = 1234-

 for i:= 1 to length(Seed) do
  result := result + Key1[Ord(Seed[i])-48];
 // result = 1234-5895

 result := result + '-';
 // result = 1234-5895-

 for i:= 1 to length(Seed) do
  result := result + Key2[Ord(Seed[i])-48];
 // result = 1234-5895-3401

end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
 if CDKey(Copy(Edit1.Text,1,4)) = Edit1.Text then
  Caption := 'Richtig' else Caption := 'falscher Key';
end;

for i:= 1 to length(Seed) do
result := result + Key2[Ord(Seed[i])-48];

Seed[i] wird als Char ausgelesen. Dann wird der ASCII-Code des Char von 48 abgezogen. Da nur Zahlen verwendet werden kommt eine Zahl zwischen 0 und 9 heraus, Also die Zahl, die auch an der Stelle steht. Dann wird das Zeichen aus Key genommen, das an diser Stelle ist.

Wenn Seed[1] = 1 ist, ist Ord(Seed[i])-48 auch 1.


MfG
freak

A-M-X 18. Okt 2005 13:49

Re: CD-Key Problem
 
thx für die erklärung aber...
... ich glaub ich büffel noch n bisschen bevor ich sowas mach... ^^


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz