Carregar numa variavel um valor do Registro do Windows
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??
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
Curtidas 0
Respostas
Paulocesar1301
19/03/2006
Amigo
Tenta usar esse procedimento... eu o uso em uma dll, mas obviamente funciona fora também :)
Use assim:
Variavel := LeDoRegistro(´SuaChaveDeRegistro´, ´SuaSequencia´, ´SeuValorPadrao´);
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´);
GOSTEI 0
Paulocesar1301
19/03/2006
ATENTE PARA A LINHA:
Reg.RootKey := HKEY_CURRENT_USER;
Altere-a para a chave base que necessitar.
Abs,
Reg.RootKey := HKEY_CURRENT_USER;
Altere-a para a chave base que necessitar.
Abs,
GOSTEI 0
Anovat
19/03/2006
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???
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???
GOSTEI 0
Paullsoftware
19/03/2006
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:
GOSTEI 0
Paulocesar1301
19/03/2006
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:
Abs
:wink:
GOSTEI 0