Você está aqui: Delphi ::: Classes, Controles e Componentes ::: TRegistry (Registro do Windows)

Como criar chaves no registro do Windows usando o método CreateKey() da classe TRegistry do Delphi

Quantidade de visualizações: 15023 vezes
Em algumas situações gostariámos de criar novas chaves e/ou sub-chaves no registro do Windows. Isso pode ser feito por meio do método CreateKey() da classe TRegistry. Este método recebe uma string especificando o nome da chave a ser criada e retorna um valor Boolean indicando se a chave foi criada com sucesso.

Veja um trecho de código no qual criamos uma chave chamada "Arquivo de Códigos" dentro da chave raiz HKEY_CURRENT_USER:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm3.Button4Click(Sender: TObject);
var
  chave: String;
  reg: TRegistry;
begin
  // uses Registry

  // vamos definir o nome da chave a ser criada
  chave := 'Arquivo de Códigos';

  // vamos criar uma instância da classe TRegistry
  reg := TRegistry.Create;

  // a chave raiz padrão é HKEY_CURRENT_USER mas, por via das dúvidas
  // vamos reafirmar isso
  reg.RootKey := HKEY_CURRENT_USER;

  // vamos criar a chave informada
  if reg.CreateKey(chave) then
    begin
      ShowMessage('A chave foi criada com sucesso.');
    end
  else
    begin
      ShowMessage('Não foi possível criar a chave informada.');
    end;
    
  // vamos liberar o registro 
  reg.Free;
end;


Alguns aplicativos, por exemplo os da Adobe, Macromedia, Microsoft, etc, guardar informações relacionadas aos seus aplicativos na sub-chave SOFTWARE dentro da chave HKEY_LOCAL_MACHINE. Assim, vamos criar uma chave para um aplicativo fictício. Vamos chamar nossa chave de "Simulador Nota Fiscal Eletrônica 1.0". Note que, se esta chave já existir no registro nada acontecerá:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm3.Button4Click(Sender: TObject);
var
  chave: String;
  reg: TRegistry;
begin
  // uses Registry

  // vamos definir o nome da chave a ser criada
  chave := 'Simulador Nota Fiscal Eletrônica 1.0';

  // vamos criar uma instância da classe TRegistry
  reg := TRegistry.Create;

  // vamos criar uma chave dentro de HKEY_LOCAL_MACHINE\SOFTWARE
  reg.RootKey := HKEY_LOCAL_MACHINE;

  // vamos criar a chave informada
  if reg.CreateKey('\SOFTWARE\' + chave) then
    begin
      ShowMessage('A chave foi criada com sucesso.');
    end
  else
    begin
      ShowMessage('Não foi possível criar a chave informada.');
    end;
    
  // vamos liberar o registro 
  reg.Free;
end;


Execute este código e logo em seguida abra uma janela de terminal e digite regedit.exe. vá na seção
HKEY_LOCAL_MACHINE\SOFTWARE e veja se a chave "Simulador Nota Fiscal Eletrônica 1.0" foi realmente criada.

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.

Link para compartilhar na Internet ou com seus amigos:

Delphi ::: Dicas & Truques ::: Strings e Caracteres

Como converter todo o conteúdo de uma string para letras minúsculas usando a função AnsiLowerCase() do Delphi

Quantidade de visualizações: 12831 vezes
Algumas vezes precisamos converter todo o conteúdo de uma string para letras minúsculas. Em Delphi isso pode ser feito com o auxílio da função AnsiLowerCase(). Esta função recebe uma string e retorna outra string com todos os caracteres minúsculos. Veja o exemplo:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm1.Button1Click(Sender: TObject);
var
  nome: string;
begin
  nome := 'OSMAR';

  // vamos converter a string para letras minúsculas
  nome := AnsiLowerCase(nome);

  // exibe o resultado
  ShowMessage(nome);
end;

Note que esta função suporta caracteres de mais de um byte e com acentuações.

Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009.


Delphi ::: Dicas & Truques ::: Arquivos e Diretórios

Como verificar se um arquivo existe usando a função FileExists() da unit SysUtils do Delphi

Quantidade de visualizações: 19809 vezes
Quando estamos trabalhando com arquivos, é sempre uma boa idéia checar se um arquivo já existe antes de permitir que nosso código tente criar outro arquivo com o mesmo nome. Em Delphi a existência de um arquivo pode ser verificada por meio do uso da função FileExists(), na unit SysUtils. Esta função recebe o caminho e nome do arquivo e retorna true se ele existir, e false caso contrário.

Veja um trecho de código no qual testamos se um determinado aqui já existe no sistema:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm1.Button1Click(Sender: TObject);
var
  arquivo: string;
begin
  // diretorio e nome do arquivo
  arquivo := 'C:\arquivo de codigos\dados.txt';

  // vamos verificar se o arquivo existe no caminho especificado
  if FileExists(arquivo) then
    ShowMessage('O arquivo existe')
  else
    ShowMessage('O arquivo NÃO existe');
end;

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.


Delphi ::: VCL - Visual Component Library ::: TListBox

Como usar a propriedade Items da classe TListBox do Delphi

Quantidade de visualizações: 11351 vezes
A propriedade Items da classe TListBox representa um objeto da classe TStrings, a classe base para objetos que representam uma lista de strings. Isso quer dizer que podemos acessar a propriedade Items e usar todos os métodos e propriedades da classe TStrings, tais como Add(), Clear(), Delete(), Exchange(), etc.

Veja, por exemplo, como usar o método Add() para adicionar um novo item na ListBox:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos adicionar um novo item na ListBox
  listBox1.Items.Add('Arquivo de Códigos');
end;

É possível obter um referência à propriedade Items para manipular os itens da ListBox indiretamente. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm1.Button1Click(Sender: TObject);
var
  lista: TStrings;
begin
  // vamos obter a lista de itens da ListBox
  lista := listBox1.Items;

  // vamos adicionar um novo item à lista
  lista.Add('Arquivo de Códigos');
end;

Esta técnica é útil quando queremos inserir itens em uma TListBox a partir de uma função ou procedure. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// procedure personalizada para inserir itens em uma TListBox
procedure inserirItensListBox(lista: TStrings);
begin
  lista.Add('Arquivo de Códigos');
  lista.Add('Osmar J. Silva');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos chamar a procedure que adiciona os itens na ListBox
  inserirItensListBox(listBox1.Items);
end;

Para finalizar, veja como escrever uma função personalizada que constrói e retorna uma lista de strings. Note como usamos o objeto TStrings retornado para preencher a ListBox:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// função personalizada que constrói e retorna uma lista
// de strings
function obterLista: TStrings;
var
  lista: TStringList;
begin
  lista := TStringList.Create;
  lista.Add('Arquivo de Códigos');
  lista.Add('Osmar J. Silva');

  Result := lista;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos obter a lista de strings
  ListBox1.Items := obterLista;
end;

Observe que, embora o retorno seja TStrings, no corpo da função nós construímos um objeto da classe TStringList. Isso acontece porque TStrings é uma classe abstrata e, portanto, não podemos chamar seu construtor. Como TStringList herda de TStrings e é uma classe concreta, esta é a escolha mais óbvia.

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ódigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 64 usuários muito felizes estudando em nosso site.