Você está aqui: Delphi ::: Classes, Controles e Componentes ::: TRegistry (Registro do Windows) |
Como gravar e ler datas e horas no registro do Windows usando DelphiQuantidade de visualizações: 12808 vezes |
Em algumas situações gostaríamos de gravar ou ler datas e horas (TDateTime) no registro do Windows. Para isso podemos usar os métodos WriteDate(), WriteDateTime(), WriteTime(), ReadDate(), ReadDateTime() e ReadTime(). Todos estes métodos aceitam ou retornam objetos do tipo TDateTime. Vamos começar gravando a data e hora atual em uma chave no registro do Windows ao clicar em um botão. Em seguida, no click de outro botão nós vamos recuperar a data e hora que gravamos anteriormente. Veja o código usado para gravar a data e hora atual em uma sub-chave chamada "Data e Hora": procedure TForm3.Button4Click(Sender: TObject); var reg: TRegistry; data_hora: TDateTime; begin // uses Registry // vamos obter a data e hora atual data_hora := Now; // vamos criar uma instância da classe TRegistry reg := TRegistry.Create; // a chave padrão é HKEY_CURRENT_USER mas, por via das dúvidas // vamos reafirmar isso reg.RootKey := HKEY_CURRENT_USER; // vamos abrir ou criar um nova chave if reg.OpenKey('Arquivo de Códigos', True) then begin // vamos atualizar ou criar uma chave contendo a data // e hora atual reg.WriteDateTime('Data e Hora', data_hora); reg.CloseKey; // grava a chave e a fecha end else begin ShowMessage('Não consegui abrir ou criar a chave informada'); end; // vamos liberar o registro reg.Free; end; Veja agora o código que obtém a data e hora gravada anteriormente na chave e sub-chave informadas no trecho de código anterior: procedure TForm3.Button5Click(Sender: TObject); var reg: TRegistry; data_hora: TDateTime; begin // uses Registry // vamos criar uma instância da classe TRegistry reg := TRegistry.Create; // a chave padrão é HKEY_CURRENT_USER mas, por via das dúvidas // vamos reafirmar isso reg.RootKey := HKEY_CURRENT_USER; // vamos abrir a chave criada anteriormente if reg.OpenKey('Arquivo de Códigos', False) then begin // vamos obter a data e hora gravada anteriormente try begin data_hora := reg.ReadDateTime('Data e Hora'); ShowMessage('A data e hora armazenada é: ' + DateTimeToStr(data_hora)); end except ShowMessage('A sub-chave não foi encontrada ou não ' + 'possui um valor do tipo TDateTime'); end; reg.CloseKey; // fecha a chave end else begin ShowMessage('Não consegui abrir a chave informada'); end; // vamos liberar o registro reg.Free; end; Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Delphi |
Veja mais Dicas e truques de Delphi |
Dicas e truques de outras linguagens |
C - Como alocar memória para instâncias de uma estrutura (struct) e acessá-las usando ponteiros em C Delphi - Como calcular o cateto adjascente dadas as medidas da hipotenusa e do cateto oposto em Delphi |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |