Aplicação em segundo plano
Como fazer uma aplicação abrir quando o computador é inicializado e fazer rodar em segundo?
Luisandro
Curtidas 0
Respostas
Massuda
08/02/2005
Como fazer uma aplicação abrir quando o computador é inicializado...
Algumas maneiras de fazer isso:[list=1:c84f93a258][*:c84f93a258]Instalar/criar um atalho para seu programa na pasta [b:c84f93a258]Menu Iniciar[/b:c84f93a258] do usuário ou de todos os usuários da máquina. Seu programa é executado sempre que o usuário atual (ou qualquer dos usuários) fizer login e será mostrado no menu Iniciar/Programas/Iniciar.[*:c84f93a258]Incluir uma entrada para seu programa na chave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run do Registro do Windows. Seu programa é executado sempre que a máquina for ligada.[*:c84f93a258]Incluir uma entrada para seu programa na chave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce do Registro do Windows. Seu programa é executado na próxima vez que a máquina for ligada (uma única vez).[*:c84f93a258]Incluir uma entrada para seu programa na chave HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run do Registro do Windows. Seu programa é executado sempre que o usuário atual fizer login.[/list:o:c84f93a258]Qual opção escolher depende basicamente do que seu programa faz. Por exemplo, seu programa pode precisar interagir com o usuário ou precisar se ajustar ao usuário, nesse o melhor é instalar ele de modo a ser executado após o login do usuário. Por outro lado, se seu programa é do tipo servidor, geralmente ele precisa ser executado assim que a máquina for ligada.
... e fazer rodar em segundo [plano]?
Na maior parte dos casos você pode fazer um programa que fique minimizado na área de ícones da barra de tarefa, junto do relógio. Em alguns casos, se for executado em Win NT/2K/XP, talvez seja preciso implementar seu programa como um serviço do Windows.GOSTEI 0
Luisandro
08/02/2005
como incluir uma entrada para meu programa na chave HKEY_LOCAL_MACHINE?
GOSTEI 0
Massuda
08/02/2005
O código seria mais ou menos assim (não testei):Se você estiver executando em Win NT/2K/XP, é provável que o usuário precise ser administrador da máquina para poder alterar um valor na chave HKEY_LOCAL_MACHINE.
uses Windows, Registry, ... var Reg: TRegistry; begin Reg := TRegistry.Create; try Reg.RootKey := HKEY_LOCAL_MACHINE; if Reg.OpenKey(´\Software\Microsoft\Windows\CurrentVersion\Run´, True) then Reg.WriteString(´NomeDoAplicativo´,´"´ + ParamStr(0) + ´"´); finally Reg.CloseKey; Reg.Free; end; end;
GOSTEI 0