Delphi - Obtener número único de estación de trabajo

 
Vista:

Obtener número único de estación de trabajo

Publicado por Marina (64 intervenciones) el 06/04/2001 16:29:09
Tengo la siguiente función, que se supone me devuelve un número único por cada máquina o estación de trabajo; pero me encuentro que luego de probar en varias máquinas, en una de ellas me devuelve siempre números diferentes.

1- Hay algo mal en la función?
2- Hay alguna otra forma de obtener un número único por cada estación, para asegurarme que esa máquina posea siempre el mismo número?

Adjunto código fuente de la función que menciono:

function NumEstaInt64: Int64;
var
G: TGUID;
PI64: ^Int64;
begin
CoCreateGuid(G);
PI64 := @G.D4[0];
Result := PI64^;
end;

Desde ya muchas gracias
Marina
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Nombrar celdas como variables

Publicado por Armando Rodriguez (17 intervenciones) el 10/04/2001 23:09:09
Util para controlar número de instalaciones de tu programa, efectos shareware... etc
Basta combinar el numero de serie del HD con el nombre de usuario del Windows


-Pon un TLabel (Label1) y un TButton en tu form
-Pon este código en el OnClick del TButton:



procedure TForm1.Button1Click(Sender: TObject);

function NumeroUnico: String;
var
MaxFileNameLength,
VolFlags,
SerNum,
Largo : DWord;
Nombre : array [0..100] of char;

begin
if GetVolumeInformation(PChar('c:\'), nil, 0,
@SerNum, MaxFileNameLength, VolFlags, nil, 0)
then
Result := IntToHex(SerNum,8)
else
Result := '00000000';
Largo:=100;
GetUserName(Nombre,Largo);
Result:=Result+UpperCase(Nombre);
end;

begin
Label1.Caption:=NumeroUnico;
end;


Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar