Para gerar um UniqueId, ou seja um número que nunca repete, use a função abaixo. Ela foi retirada em um blog que não me recordo.
function GerarGuid: String;
Var
G : TGuid;
begin
CoCreateGuid(G);
Result := IntToHex(G.D1,1) + '' + IntToHex(G.D2,1) + '' + IntToHex(G.D3,1) + '';
Result := Result + IntToHex(G.D4[0],1)+IntToHex(G.D4[1],1)+IntToHex(G.D4[3],1)+IntToHex(G.D4[4],1)+IntToHex(G.D4[5],1)+IntToHex(G.D4[6],1)+IntToHex(G.D4[7],1);
end;
Não esquecer de definir as units Windows, SysUtils, ComObj, Activex na seção interface.