Thema: Delphi Guid erzeugen

Einzelnen Beitrag anzeigen

Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Guid erzeugen

  Alt 14. Mär 2016, 16:53
Hi Sir Rufo

Da hast du sicher recht - zukünftig das Zeugs nur noch auslesen anstat die ganze Sache neu zu schreiben, macht wirklich Sinn. Nur habe ichh eben mit dem Umgang der Datentypen noch Probleme. Bei meiner obigen Zuweisung an Result sind alle beteilligtten Bezeichner vom Typ TGuid, mit Ausnahme von ToByteArray - die ist vom Typ TEndian.
Aber ich seh grad in der Help:
Zitat:
function ToByteArray(DataEndian: TEndian = TEndian.Little): TBytes;
Nachdem ich die Deklatrationen nun angepasst habe:
Zitat:
[dcc32 Fehler] FileOpenFrameUnit.pas(196): E2010 Inkompatible Typen: 'TEndian' und 'TGUID'
Die selbe Fehlermeldung wie gehabt, nur dass der "fremde" Datentyp jetzt TGuid und nicht mehr TEndian ist.
Da TEndian lediglich ein Aufzählungstyp mit 2 Werten ist, wars vorher wohl richtiger.

Deinen Vorschlag einer Klasse hab ich mal begonnen, umzusetzen:
Zitat:
type
TIdentifierClass = Class(TPersistent)
private
FGuid: TGuid;
FByteArray : TByteArray;
FUniqquename: String;
FPath: String;
FFileStream: TFileStream;
FFileName : String;
function GetGuid: Boolean;
procedure SetBinaryGuid(Value: TGuid);
function GetBinaryGuid: TGuid;
public
procedure SaveToFile(Value: String);
property Guid: Boolean read GetGuid;
property BinaryGuid: TGuid read GetBinaryGuid write SetBinaryGuid;
property StringGuid: TGuid read GetStringGuide write SetStringGuide;
property FileName: String read FFileName write FFilename;
end;
Aber die eigentliche Schwierigkeit schien mir: solange ich den richtigen Umgang in meiner Funktion nicht schaffe, krieg ich auch keine anständige Klasse hin.
Aber manchmal scheint Wahnwitz testen zum Erfolg zu führen =>> Parameter TGuid durch Little ersetzt, und schon hat mir Delphi meinen Code ... nicht um die Ohren gehauen....

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch

Geändert von Delbor (14. Mär 2016 um 17:06 Uhr)
  Mit Zitat antworten Zitat