Ir para conteúdo
Fórum Script Brasil
  • 0

Coloca Aplicativo para inicializar com o windows.


Guest Artur Silva

Pergunta

Guest Artur Silva

Preciso de ajuda, quero colocar meu aplicativo para inicializar junto ao windows, só que tanto no windows XP/ME/98/2000...

se alguém puder me ajudar, desde já agradeço.! ;*

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Preciso de ajuda, quero colocar meu aplicativo para inicializar junto ao windows, só que tanto no windows XP/ME/98/2000...

se alguém puder me ajudar, desde já agradeço.! ;*

Amigo, pesquisei no google e no primeiro que achei:

Iniciar Aplicação junto com o windows <<<<<clique no link

Implementação:

Neste exemplo criaremos duas procedures, GravaRegistro e ApagaRegistro, para adicionar e remover o registro do windows respectivamente. 

Para podermos trabalhar com o registro usaremos a classe TRegistry, que se encontra na unit Registry que deveremos adicionar na cláusula uses.


uses
  ...Windows, StdCtrls, Registry;


Em seguida criaremos a procedure GravaRegistro, contendo os seguintes parâmetros:


procedure GravaRegistro(Raiz: HKEY; Chave, Valor, Endereco: string);


Onde:

-Raiz (HKEY): Aqui definimos a chave raiz onde o registro será adicionado. As chaves que podem ser usadas no nosso exemplo são HKEY_CURRENT_USER (as alterações feitas aqui só afetarão o usuário logado), HKEY_LOCAL_MACHINE (as alterações afetarão qualquer usuário).

-Chave (String): No nosso exemplo usaremos a Chave "Software\Microsoft\Windows\CurrentVersion\Run" , que é a chave onde se aplicam os programas que devem ser executados na inicialização do Windows.

-Valor (String): É simplesmente o nome do valor do campo que será adicionado.

-Endereço (String): É o endereço do executável que será carregado na inicialização.

Segue a  implementação da procedure GravaRegistro:


procedure TForm1.GravaRegistro(Raiz: HKEY; Chave, Valor, Endereco: string);
var
  Registro: TRegistry;
begin
  Registro := TRegistry.Create(KEY_WRITE); // Chama o construtor do objeto
  Registro.RootKey := Raiz; //Define a chave raiz
  Registro.OpenKey(Chave, True); //Cria a chave
  Registro.WriteString(Valor, '"' + Endereco + '"'); //Grava o endereço da sua aplicação no Registro
  Registro.CloseKey; // Fecha a chave e o objeto
  Registro.Free;
end;


Agora implementaremos a procedure ApagaRegistro, que terá os mesmo parâmetros que GravaResgistro menos o "Endereco", que não será necessário nesse caso.


procedure ApagaRegistro(Raiz: HKEY; Chave, Valor : string);


Segue a  implementação da procedure ApagaRegistro:


procedure TForm1.ApagaRegistro(Raiz: HKEY; Chave, Valor: string);
var
  Registro: TRegistry;
begin
  Registro := TRegistry.Create(KEY_WRITE); // Chama o construtor do objeto
  Registro.RootKey := Raiz;
  Registro.OpenKey(Chave, True); //Cria a chave
  Registro.DeleteValue(Valor); //Grava o endereço da sua aplicação no Registro
  Registro.CloseKey; // Fecha a chave e o objeto
  Registro.Free;
end;


Agora criaremos dois botões, um para realizar a gravação no registro e outra para a remoção, respectivamente.


procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  try
    GravaRegistro(HKEY_LOCAL_MACHINE, 'Software\Microsoft\Windows\CurrentVersion\Run',
      'IniciarPrograma', ExtractFilePath(Application.ExeName) + 'TesteRegistro.exe'); 
    MessageDlg('Registro gravado com sucesso!', mtInformation, [mbOk], 0);
  except
    MessageDlg('Erro ao gravar registro!', mtInformation, [mbOk], 0);
  end;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
  try
    ApagaRegistro(HKEY_LOCAL_MACHINE, 'Software\Microsoft\Windows\CurrentVersion\Run',
      'IniciarPrograma');
    MessageDlg('Registro apagado com sucesso!', mtInformation, [mbOk], 0);
  except
    MessageDlg('Erro ao apagar registro!', mtInformation, [mbOk], 0);
  end;
end;


E pronto! Agora é só testar a sua aplicação. Clicando no primeiro botão iremos adicionar nosso programa à lista de inicialização do Windows, tendo feito isso você pode efetuar logoff e assim que o windows for iniciado novamente o seu programa será executado automaticamente.

Para remover o registro de forma que o seu programa não seja executado na próxima inicialização basta clicar no segundo botão.

Espero que este artigo tenha sido útil, o código-fonte encontra-se disponível logo abaixo. Obrigado.

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...