Delphi a-t-il quelque chose de intégré pour générer des UUID?
program Guid;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
Uid: TGuid;
Result: HResult;
begin
Result := CreateGuid(Uid);
if Result = S_OK then
WriteLn(GuidToString(Uid));
end.
Sous les couvertures, CreateGuid()
appelle l'une des différentes API, selon la plate-forme. Par exemple sous Windows, il appelle de nos jours UuidCreate
.
De plus, si vous avez besoin d'un GUID pour une déclaration d'interface, appuyez sur ctrl+shift+g dans l'éditeur de code pour insérer un GUID au caret.
Si vous utilisez l'une des dernières versions de Delphi et incluez SysUtils, vous pouvez appeler TGuid.NewGuid
pour générer un nouveau guid.
NewGuid
est en fait implémenté dans une classe d'assistance pour TGuid ( TGuidHelper ), qui est déclarée dans SysUtils.
Cette fonction appelle la méthode CreateGUID (également dans SysUtils et déjà mentionnée dans la réponse de Mitch Wheat), qui est en fait une fonction multiplateforme qui appelle différentes bibliothèques en fonction de la plate-forme sur laquelle elle s'exécute.
Oui TGUID
, voir cet exemple
program Guid;
{$APPTYPE CONSOLE}
uses
SysUtils;
begin
WriteLn(TGUID.NewGuid.ToString());
end.