Carregar numa variavel um valor do Registro do Windows

19/03/2006

0

to querendo cria uma aplicação Delphi que o cara visualiza informações sobre seu computador, tipo ele abre o programa e o programa mostra...

mas as informações tao no Registro do windows...

entao, eu queria saber como carrega um registro do windows numa variavel, pra exibir...

eu sei mudar o registro, mas resgatar valores eu nao sei, alguem teria algum exemplo??


Anovat

Anovat

Responder

Posts

20/03/2006

Paulocesar1301

Amigo
Tenta usar esse procedimento... eu o uso em uma dll, mas obviamente funciona fora também :)

// Lê valor no Registro ===============================================
Function LeDoRegistro(Chave, Sequencia: WideString; ValorPadrao: Variant): Variant; Export; StdCall;
Var Reg: TRegistry;
begin
 Try
  Reg := TRegistry.Create;
  Try
    Reg.RootKey := HKEY_CURRENT_USER;
    Reg.OpenKey(Chave, True);

    Try
      Try Result := Reg.ReadString(Sequencia); Except End;
      Try Result := Reg.ReadInteger(Sequencia); Except End;
      Try Result := Reg.ReadBool(Sequencia); Except End;
    Except
      Result := ValorPadrao;
    End;

  Finally
    Reg.Free;
  end;
 Except
   Result := ValorPadrao;
 End;
end;
// Lê valor no Registro ===============================================


Use assim:
Variavel := LeDoRegistro(´SuaChaveDeRegistro´, ´SuaSequencia´, ´SeuValorPadrao´);


Responder

20/03/2006

Paulocesar1301

ATENTE PARA A LINHA:
Reg.RootKey := HKEY_CURRENT_USER;

Altere-a para a chave base que necessitar.

Abs,


Responder

20/03/2006

Anovat

brigadu pela ajuda amigo...

mas tipo, eu dei uma busca aki:

eu achei esse topico ake: http://forum.clubedelphi.net/viewtopic.php?t=42747&highlight=tregistry+create

o codigo do kra é bem menor...o seu tem esses de bool, e etc...


qual a diferença do seu codigo e do otro krinha???

o dele tá errado???


Responder

20/03/2006

Paullsoftware

brigadu pela ajuda amigo... mas tipo, eu dei uma busca aki: eu achei esse topico ake: http://forum.clubedelphi.net/viewtopic.php?t=42747&highlight=tregistry+create o codigo do kra é bem menor...o seu tem esses de bool, e etc... qual a diferença do seu codigo e do otro krinha??? o dele tá errado???


é que o nosso amigo [b:7712b8eeff]paulocesar1301[/b:7712b8eeff] está lhe mostrando três formas de leitura...
Ler uma chave com conteúdo String;
Try Result := Reg.ReadString(Sequencia); Except End; 

ler uma chave com o conteúdo sendo valor Inteiro
Try Result := Reg.ReadInteger(Sequencia); Except End; 

ler uma chame com valor booleano
Try Result := Reg.ReadBool(Sequencia); Except End; 

deu para enteder agora?

basicamente a linha para escrita é assim:
...
var
Reg : TRegistry;
begin
...
Reg.WriteString(´Nome da Chave´,´Valor´);
...


e para leitura assim:
...
var
Reg : TRegistry;
begin
...
Edit1.Text := Reg.ReadString(´Nome da Chave´,Edit1.Text);
...


espero que tenha entendido! :idea: :idea: :idea:


Responder

20/03/2006

Paulocesar1301

Amigos... é que utilizo esse procedimento em uma dll sem me preocupar com o tipo de dado que irei retornar, por isso as três linhas

Abs
:wink:


Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar