Olá galera, nesta Quick Tips, como podemos criar um GUID em tempo de execução e recuperar o seu valor utilizando uma função simples que retorna uma String, mas antes disso vamos ver primeiro o que seria uma GUID, para aqueles que não conhecem vale apena a leitura.

Mas o que seria uma GUID ?

Seria um Identificar Único Global(em inglês seria Globally Unique Identifier), utilizado em softwares para garantir que exista apenas um número de referência em toda a aplicação nunca se repetindo, a probabilidade desta GUID ser gerada uma outra vez, é quase que impossível segundo a Microsoft, tornando assim um ótimo identificador para objetos em uma aplicação por exemplo.

Vamos então a definição da nossa GUID em tempo de execução. Primeiramente criaremos uma função chamada GuidCreate, na seção private do formulário, juntamente vamos adicionar um Edit e um botão para podermos ver o resultado.


unit Unit1;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics,     
Controls, Forms, Dialogs, StdCtrls, Buttons;

type

TForm1 = class(TForm)

  Edit1: TEdit;

  BitBtn1: TBitBtn;

  procedure BitBtn1Click(Sender: TObject);

private

  function GuidCreate: string;

{ Private declarations }

public

{ Public declarations }

end;

Além de declaramos esta function, precisamos também dar uses em ComObj, ActiveX.

Vamos agora implementar o function GuidCreate;


function TForm1.GuidCreate: string;

var

  ID: TGUID;

begin

  Result := '';

  if CoCreateGuid(ID) = S_OK then

     Result := GUIDToString(ID);

end;

E por último vamos usar esta rotina vendo o resultado da seguinte forma, no click do botão implemente o seguinte :


procedure TForm1.BitBtn1Click(Sender: TObject);

begin

   Edit1.Text := GuidCreate;

end;
 

Como podemos notar o valor da GUID será gerado pela função GUIDCreate, e logo será resultado o valor gerado e assim atribuído ao Edit.

Você pode ficar tentando repetir este valor, porém sinceramente será difícil você consegui isso, devido a quantidade de informação que é necessária para montar esta GUID, informações como Sistema Operacional, Data, hora, dados de processador, dados do país, e por ai vai, realmente muito complicado de se repetir.

Fico por aqui ate à próxima Quick Tips.

Um abraço

Wesley Y