segunda-feira, 22 de fevereiro de 2016

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


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:

procedure TForm3.Button4Click(Sender: TObject);
var chave: String; reg: TRegistry; begin
// vamos definir o nome da chave a ser criada
// uses Registry chave := 'Arquivo de Códigos';
reg := TRegistry.Create;
// vamos criar uma instância da classe TRegistry
reg.RootKey := HKEY_CURRENT_USER;
// a chave raiz padrão é HKEY_CURRENT_USER mas, por via das dúvidas // vamos reafirmar isso
ShowMessage('A chave foi criada com sucesso.');
// vamos criar a chave informada if reg.CreateKey(chave) then begin end else begin
end;
ShowMessage('Não foi possível criar a chave informada.'); end; // vamos liberar o registro
reg.Free;



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á:

procedure TForm3.Button4Click(Sender: TObject);
var chave: String; reg: TRegistry; begin
// vamos definir o nome da chave a ser criada
// uses Registry
// vamos criar uma instância da classe TRegistry
chave := 'Simulador Nota Fiscal Eletrônica 1.0';
// vamos criar uma chave dentro de HKEY_LOCAL_MACHINE\SOFTWARE
reg := TRegistry.Create; reg.RootKey := HKEY_LOCAL_MACHINE;
if reg.CreateKey('\SOFTWARE\' + chave) then
// vamos criar a chave informada begin ShowMessage('A chave foi criada com sucesso.');
end else begin ShowMessage('Não foi possível criar a chave informada.'); end;
end;
// vamos liberar o registro
reg.Free;



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.

Nenhum comentário:

Postar um comentário