Thema: Delphi IntToStr bei UInt64

Einzelnen Beitrag anzeigen

Jakson

Registriert seit: 10. Mär 2006
34 Beiträge
 
#1

IntToStr bei UInt64

  Alt 15. Jul 2010, 11:21
Ich bin gerade über was drüber gestolpert was eigentlich eh logisch ist, ich aber daran nicht gedacht habe.

Meine Erkenntnis möchte ich Euch nicht vorenthalten.

Zur Vorgeschichte:
Ich verwende eine UInt64 Variable um darin die Benutzerberechtigung zu speichern.
Diese werden dann in einer MySql Datenbank gespeichert.

Beim Zusammenstöpseln des Strings habe ich die altbekannte und oft verwendete Funktion IntToStr verwendet.

Wurden alle möglichen Rechte vergeben also "18446744073709551615" so lieferte IntToStr trotzdem es eine unsigned Variable war ein "-1".
Beim abspeichern in MySql wurde "0" daraus.
Statt allen rechten hatte der Benutzer jetzt gar keine.

Nach langen herumprobieren hab ich es mal mit "Format" probiert und siehe dar "Format('%u',[UInt64(-1)])" liefert die gewünschten "18446744073709551615"
  Mit Zitat antworten Zitat