Prezados,

Tenho um aplicação que lê algumas informações do registro do Windows. No 
Windows XP ela funciona sem problemas, mas no Windows 7 a leitura das mesmas 
chaves não traz valor nenhum e também não dá erro.

Uma das funções de leitura é a seguinte:


function NomeProduto: String;

var
  registro_aux: TRegistry;

begin
  registro_aux := TRegistry.Create;
  Result := '';

  try
    registro_aux.RootKey := HKEY_LOCAL_MACHINE;

    if (registro_aux.OpenKey ('\SOFTWARE\Microsoft\Windows NT\CurrentVersion', 
False)) then
    begin
      Result := registro_aux.ReadString ('ProductName');
      registro_aux.CloseKey;
    end;

  finally
    registro_aux.Free;
  end;

end;


Será que alguém poderia me dizer o que fazer pra essa função retornar o valor 
da chave no Windows 7?

Obrigado.

Responder a