41

Delphi 有内置的东西来生成 UUID 吗?

4

4 回答 4

72
program Guid;

{$APPTYPE CONSOLE}

uses
SysUtils;

var

Uid: TGuid;
Result: HResult;

begin
Result := CreateGuid(Uid);
if Result = S_OK then
   WriteLn(GuidToString(Uid));
end.

根据平台,在幕后CreateGuid()调用各种 API 之一。例如在 Windows 上,它现在调用UuidCreate.

于 2010-02-20T01:51:16.573 回答
39

此外,如果您需要 GUID 来声明接口,请在代码编辑器中点击++ctrl以在插入符号处插入 GUID。shiftg

于 2010-02-20T09:59:30.830 回答
6

如果您使用的是最新版本的 Delphi 之一,并且包含 SysUtils,则可以调用TGuid.NewGuid以生成新的 guid。

NewGuid实际上是在 SysUtils 中声明的 TGuid ( TGuidHelper ) 的帮助器类中实现的。

该函数调用 CreateGUID 方法(也在 SysUtils 中并且已经在 Mitch Wheat 的回答中提到),这实际上是一个跨平台函数,根据它运行的平台调用不同的库。

于 2017-12-14T07:41:58.457 回答
5

TGUID的,看这个例子

program Guid;

{$APPTYPE CONSOLE}

uses
SysUtils;

begin
  WriteLn(TGUID.NewGuid.ToString());
end.
于 2019-11-04T10:41:32.860 回答