exacto.. lo encontre.
Código Delphi
[-]var
pcComputer : PWideChar;
dwCSize : DWORD;
aa : string;
begin
dwCSize := MAX_COMPUTERNAME_LENGTH + 1;
GetMem( pcComputer, dwCSize );
try
if Windows.GetComputerName( pcComputer, dwCSize ) then begin
aa := pccomputer;
Result := aa;
end;
finally
FreeMem( pcComputer );
end;
este es el trozo de código que no se que libera que en delphi xe2 da error despues, y en cambio en delphi 6 no.
la función me devuelve el nombre de la maquina. La he cambiado por otra y listo.
Gracias y Saludos.