Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Wie kommen Buchstaben in eine Seriennummer? (https://www.delphipraxis.net/144832-wie-kommen-buchstaben-eine-seriennummer.html)

Viktorii 28. Dez 2009 11:22

Re: Wie kommen Buchstaben in eine Seriennummer?
 
[quote="MichaelLinden"]
Zitat:

- Umgehe Variablennamen wie: key, serial, seriennummer, generatedkey , usw

Sind Variablennamen im Kompilat wiederzufinden?

himitsu 28. Dez 2009 11:48

Re: Wie kommen Buchstaben in eine Seriennummer?
 
Delphi-Quellcode:
uses ComObj;

type TSerial = TGUID;
  //TSerial = packed array[0..3] of LongWord;
  //TSerial = packed array[0..15] of Byte;
  //TSerial = packed record
  //  W0: LongWord;
  //  i1: LongInt;
  //  W2: LongWord;
  //  W3: LongWord;
  //end;
  //TSerial = packed record
  //  D1: LongWord;
  //  D2: Word;
  //  D3: Word;
  //  D4: array[0..7] of Byte;
  //end;

function SerialToStr(Serial: TSerial): String;
begin
  Result := Copy(GUIDToString(TGUID(Serial)), 2, 36);
end;

function StrToSerial(const S: String): TSerial;
begin
  try
    Result := TSerial(StringToGUID('{' + S + '}'));
  except
    ZeroMemory(@Result, SizeOf(TSerial));
  end;
end;
solange TSerial genau 16 Byte groß ist, kannst du es definieren, wie du willst

im Programm dann einfach StrToSerial aufrufen und danach dann einfach nur noch die "Integer" in der Serial irgendwie mathematisch verknüpfen.

Zitat:

Zitat von MichaelLinden
- Versuche den Key wenn schon in Form von char(65) + char(66) + char(67); (ABC) zu schreiben
statt ABC:

wurde schon gesagt

Zitat:

Zitat von MichaelLinden
- Umgehe Variablennamen wie: key, serial, seriennummer, generatedkey , usw

im Kompilat gibt es keine Variablennamen mehr ... also ist das vollkommen egal.

Klassennamen werden aber in der RTTI gespeichert, daher sollte man eine Serialprüf-/Verwaltungsklasse anders nennen


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:41 Uhr.
Seite 3 von 3     123   

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