Adriano, Não resolveu! Inclusive, eu já havia testado essa possibilidade antes!
Para funcionar com HKEY_CURRENT_USER eu teria que criar um novo registro para cada usuário, ou seja, lançar novamente no registro do windows as configurações para funcionamento do sistema para cada usuario do windows: versão, banco de dados, servidor, etc... Solucionaria em parte o problema, mas não seria a solução ótima, pois caso um dos usuários alterasse algum caminho, como por exemplo, a pasta padrão para o backup, os demais usuarios ficariam desatualizados! O que realmente necessito é alterar as permissões da chave no registro do windows via delphi! De qualquer forma, muito obrigado pela sugestão! Daniel Vitor Eng. de Computação ----- Mensagem original ---- De: Adriano Santos - Direção de Arte <[EMAIL PROTECTED]> Para: delphi-br@yahoogrupos.com.br Enviadas: Domingo, 22 de Abril de 2007 10:40:22 Assunto: Re: [delphi-br] Registro do Windows Troque o local da chave que vc salva. De HKEY_LOCAL_ MACHINE para HKEY_CURRENT_ USER que é o usuário atual da máquina. Provavelmente isso resolverá. Daniel Lucena respondeu: > > Olá senhores, > > Tenho um sistema que utiliza o registro do windows para armazenar > alguns dados necessários para seu funcionamento, tais como: endereço > do banco de dados, versão, etc... > > Funciona perfeitamente em contas do windows com nivel de > "administrador" , porém, não permite escrita e nem leitura dos > registros em "conta limitada". > > Se alterar manualmente as permissões, via regedit, da chave do sistema > (HKEY_LOCAL_ MACHINE\Software \MeuPrograma) , consigo também fazer > leitura e escrita nos registros. > > Logo, o que eu preciso é fazer isso automaticamente! Ao criar a chave > no registro do windows, preciso definir permissão para todos os > usuários poderem fazer leitura e escrita nesta chave específica. > > Uso as funções abaixo para realizar leitura e escrita no registro do > windows: > > //gravar > //chamada da função > GravaRegistroString (HKEY_LOCAL_ MACHINE,' Software\ MeuPrograma' ,'Banco', > 'c:\banco' ); > > //função > function GravaRegistroString (Raiz: Dword; Chave, Valor, > Dado:string) :boolean; > var Registro : TRegistry; > begin > try > Registro := TRegistry.Create; > Registro.RootKey := Raiz; > Registro.OpenKey (Chave, True); > Registro.WriteStrin g (valor, dado); > Registro.CloseKey; > Registro.Free; > result := true; > except > result := false; > end; > end; > > //ler > //chamada da função > edit1.text := > LeRegistroString( HKEY_LOCAL_ MACHINE,' SOFTWARE\ MeuPrograma' ,'Banco') ; > > //função > function LeRegistroString( Raiz: Dword; Chave, Valor:string) :string; > var Registro : TRegistry; > begin > try > Registro := TRegistry.Create; > Registro.RootKey := Raiz; > Registro.OpenKey (Chave, false); > result := Registro.ReadString (valor); > Registro.CloseKey; > Registro.Free; > except > result := ''; > end; > end; > > Muito obrigado a todos mais uma vez pela força! > > Daniel Vitor > Eng. de Computação > > ____________ _________ _________ _________ _________ __ > Fale com seus amigos de graça com o novo Yahoo! Messenger > http://br.messenger .yahoo.com/ <http://br.messenger .yahoo.com/> > > [As partes desta mensagem que não continham texto foram removidas] > > > ------------ --------- --------- --------- --------- --------- - > > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.5.463 / Virus Database: 269.5.7/771 - Release Date: 21/4/2007 11:56 > -- ------------ --------- --------- --------- --------- --------- - *Adriano Santos* __________________________________________________ Fale com seus amigos de graça com o novo Yahoo! Messenger http://br.messenger.yahoo.com/ [As partes desta mensagem que não continham texto foram removidas]