Obrigado a todos pela atenção e pelas sugestões. Daniel Vitor Eng. de Computação
----- Mensagem original ---- De: Adriano Santos (Yahoo) <[EMAIL PROTECTED]> Para: delphi-br@yahoogrupos.com.br Enviadas: Segunda-feira, 23 de Abril de 2007 11:06:01 Assunto: Re: Res: [delphi-br] Registro do Windows Daniel, e um arquivo .ini? Não seria uma alternativa melhor? Os métodos de leitura e gravação são os mesmos, a única coisa que muda é a classe. Ao invés de: Ini := TRegIniFile. Create('CHAVE' ); Você usa Ini := TIniFile.Create( 'C:\CAMINHO_ QUE_QUISER\ ARQUIVO.INI' ); Eu só uso ini, acho mais produtivo e fácil de dar manutenção. ------------ --------- --------- --------- --------- --------- - Adriano Santos Desenvolvedor Delphi desde 1998. Professor e programador PHP. Bacharel em Comunicação Social pela Universidade Cruzeiro do Sul, SP. Colunista e Comissão Editorial da revista ClubeDelphi. Meu blog: Delphi to Delphi http://delphitodelp hi.blogspot. com/ Daniel Lucena respondeu: > > 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] com > <mailto:artes% 40doiscliques. com>> > Para: [EMAIL PROTECTED] os.com.br <mailto:delphi- br%40yahoogrupos .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/ <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.9/773 - Release Date: 22/4/2007 20:18 > -- __________________________________________________ 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]