McBlade Postado Agosto 5, 2005 Denunciar Share Postado Agosto 5, 2005 Salve galera!!Eu estou precisando gravar um valor no Registro no qual ele espera que seja do tipo REG_DWORD.Pegar esse valor eu consegui, mas não consigo gravar com o meu valor.Tipo eu estou querendo gravar uma cor nele! No caso a DWORD seria Hexadecimal. Mas quando eu tento gravar com WriteString(); dá pau.alguém sabe como eu devo fazer??Uma amostra do jeito que eu to fazendo:Registro.WriteString('Background Color',IntToHex(StringToColor('clRed'),8)); Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Kikonanet Postado Agosto 5, 2005 Denunciar Share Postado Agosto 5, 2005 Olá McBlade, Registro.WriteString('Background Color',IntToHex(StringToColor('clRed'),8)); Dê uma olhada:Delphi syntax:procedure WriteString(const Name, Value: String);Tente deixar a cor como string.Abs.Kiko Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 McBlade Postado Agosto 5, 2005 Autor Denunciar Share Postado Agosto 5, 2005 O valor IntToHex já me retorna uma String Kiko!!O problema é que ela vai pro registro como REG_SZ (String) e eu preciso de dizer pra variável gravar como REG_DWORD (Hexadecimal).Tem um comando WriteToBinaryData mas não sei usar por causa dos 'buffer'.Delphi syntax:procedure WriteBinaryData(const Name: String; var Buffer; BufSize: Integer); Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Agosto 5, 2005 Denunciar Share Postado Agosto 5, 2005 pra escrever valores DWORD se usa WriteIntegerexemplo pra gravar o valor da cor no registro como Dwordvarreg: TRegistry;begin reg := TRegistry.Create; reg.RootKey := HKEY_CURRENT_USER; reg.OpenKey('Software\Churc\Teste',true); reg.WriteInteger('Vermelho',StringToColor('clRed')); reg.CloseKey; reg.Free;end;agora exemplo de como puxar...varreg: TRegistry;begin reg := TRegistry.Create; reg.RootKey := HKEY_CURRENT_USER; reg.OpenKey('Software\Churc\Teste',true); Form1.Color := reg.ReadInteger('Vermelho'); reg.CloseKey; reg.Free;end;espero ter ajudadoabraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 McBlade Postado Agosto 8, 2005 Autor Denunciar Share Postado Agosto 8, 2005 espero ter ajudado vou fazer uns testes e qualquer coisa eu posto aki!!!Vlw!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 McBlade Postado Agosto 8, 2005 Autor Denunciar Share Postado Agosto 8, 2005 Como salvar os dados de uma chave num arquivo .reg??Estou tentando usar SaveKey() mas ela só retorna false...O que está errado???procedure TFrmMain.Button1Click(Sender: TObject); var Registro: TRegistry; begin Registro := TRegistry.Create; try Registro.RootKey := HKEY_CURRENT_USER; Registro.OpenKey('Software\Teste',false); if Registro.SaveKey('Software\Teste','C:\Backup.reg') then begin ShowMessage('O backup foi realizado:'+#13+' o programa vai adicionar os novos valores no registro!!'); Registro.WriteInteger('Cor',StringToColor('clRed')); end; finally Registro.CloseKey; Registro.Free; end; end; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Agosto 10, 2005 Denunciar Share Postado Agosto 10, 2005 olha eu tentei aqui também não consegui...tava dando uma olhada no site da borland, e vários tiveram este problema, e não conseguiram, dizem por causa do acesso ao registro, os privilégios não são suficientes, e parece que só funciona no win9xo que você pode fazer é uma procedure que cria o arquivo, tipo uma engine, que enumera todas as chaves e vai gerando os valores numa string list, com o mesmo formato de um arquivo .reg e depois da um savetofile e salva como arquivo.regabraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
McBlade
Salve galera!!
Eu estou precisando gravar um valor no Registro no qual ele espera que seja do tipo REG_DWORD.
Pegar esse valor eu consegui, mas não consigo gravar com o meu valor.
Tipo eu estou querendo gravar uma cor nele! No caso a DWORD seria Hexadecimal. Mas quando eu tento gravar com WriteString(); dá pau.
alguém sabe como eu devo fazer??
Uma amostra do jeito que eu to fazendo:
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.