如何在Delphi中生成版本1的GUID?

4

在Delphi 5中是否有生成基于时间的GUID v1的方法?我找到了这个函数...

unit ComObj;
function CreateClassID: string;

但我不确定它是否生成基于时间的GUID。另外,我知道这个...

SysUtils.CreateGUID(newGUID);

... 调用Windows API CoCreateGUID 生成版本4 (随机) 的GUID。


1
在相关问题“如何在.NET中生成版本1的Guid?”中,建议使用UuidCreateSequential - zed
1个回答

7
与CreateGUID的实现类似-使用UuidCreateSequential:
uses
  Windows;

function UuidCreateSequential(out guid: TGUID): Longint; stdcall; external 'rpcrt4.dll' name 'UuidCreateSequential';

function CreateGUID_V1(out Guid: TGUID): HResult;
begin
  Result := HResultFromWin32(UuidCreateSequential(Guid));
end;

我这里没有Delphi 5,所以不确定20年前是否可用所有在这里使用的东西。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接