If you want an unique id, simply use the object address:
[code=pascal]
function GetUniqueID(AObj: TObject): AnsiString;
begin
result := AObj.ClassName + IntToStr(Integer(AObj));
end;[/code]