Ajuda - Busca - Membros - Calendário
Versão Completa: (Resolvido) Regedit + Delphi
Fórum Script Brasil > Programação & Desenvolvimento > Delphi, Kylix
Jhonatas araujo
Galera eu Gostaria de Criar Chaves binary em Delphi...

alguém Sabe como/

Todos os Outros Valores eu sei menos Binary...

e o Mais Importante para O projeto que estou Desenvolvendo,
é ler um Valor Binary, Como fazer Isso/?// Não Somente ler a Chave Mais ler o Significado do Valor...

E Como Ler Chaves e Deletar/

Vlw...
Jhonatas araujo
Para Criar Chaves Binary é Usado

WriteBinaryData() não é//

Olha só:

CODE
Uses Registry;

procedure TForm1.Button1Click(Sender: TObject);
var
Reg: TRegistry;
begin
Reg := TRegistry.Create;
Reg.RootKey := HKEY_CURRENT_USER;
Reg.OpenKey('____________________', True);

Reg.WriteBinaryData(Aqui esta o Problema!!!); //Como é Utilizado para Declarar um Valor?//

Reg.CloseKey;
Reg.Free;
end;


Vlw...
Jhonas
Ler e escrever dados binários no Registro do Windows
Inclua na seção uses: Registry
Coloque no Form:
- três edits;
- dois botões.

Logo abaixo da palavra implementation declare:

CODE
type

  { Declara um tipo registro }
  TFicha = record
    Codigo: integer;
    Nome: string[40];
    DataCadastro: TDateTime;
  end;

- Escreva o evento OnClick do Button1 conforme abaixo:

procedure TForm1.Button1Click(Sender: TObject);
var
  Reg: TRegistry;
  Ficha: TFicha;
begin
  { Coloca alguns dados na variável Ficha }
  Ficha.Codigo := StrToInt(Edit1.Text);
  Ficha.Nome := Edit2.Text;
  Ficha.DataCadastro := StrToDate(Edit3.Text);

  Reg := TRegistry.Create;
  try
    { Define a chave-raiz do registro }
    Reg.RootKey := HKEY_CURRENT_USER;

    { Abre uma chave (path). Se não existir cria e abre. }
    Reg.OpenKey('Cadastro\Pessoas\', true);

    { Grava os dados (o registro) }
    Reg.WriteBinaryData('Dados', Ficha, SizeOf(Ficha));
  finally
    Reg.Free;
  end;
end;

- Escreva o evento OnClick do Button2 conforme abaixo:

procedure TForm1.Button2Click(Sender: TObject);
var
  Reg: TRegistry;
  Ficha: TFicha;
begin
  Reg := TRegistry.Create;
  try
    { Define a chave-raiz do registro }
    Reg.RootKey := HKEY_CURRENT_USER;

    { Se existir a chave (path)... }
    if Reg.KeyExists('Cadastro\Pessoas') then
    begin
      { Abre a chave (path) }
      Reg.OpenKey('Cadastro\Pessoas', false);

      { Se existir o valor... }
      if Reg.ValueExists('Dados') then
      begin
        { Lê os dados }
        Reg.ReadBinaryData('Dados', Ficha, SizeOf(Ficha));
        Edit1.Text := IntToStr(Ficha.Codigo);
        Edit2.Text := Ficha.Nome;
        Edit3.Text := DateToStr(Ficha.DataCadastro);
      end else
        ShowMessage('Valor não existe no registro.')
    end else
      ShowMessage('Chave (path) não existe no registro.');
  finally
    Reg.Free;
  end;
end;


Observações

Qualquer tipo de dado pode ser gravado e lido de forma binária no registro do Windows. Para isto você precisa saber o tamanho do dado. Para dados de tamanho fixo, use SizeOf(). Lembrete: não grave dados muito extensos no Registro do Windows (ex: imagens), pois isto prejudicará o desempenho do sistema.

Autor: Daniel P. Guimarães
Home-page: www.tecnobyte.com.br

Espero que este exemplo ajude


abraço


Jhonatas araujo
Vlw ae Jhonas!!!

Eu Procurei Mais um Pouco e com todos os Exemplos Consegui Desenvolver Algo + ou - oque eu Queria!!!

Vlw...
{Resolvido}

--------------
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2012 Invision Power Services, Inc.