Atraso no lançamento de programas do Windows na inicialização?

15

No Windows XP, eu uso 18 programas. Na inicialização, leva de 2 a 3 minutos para carregar todos eles. Anti-vírus, tradutor, unlocker, indexador de arquivos, gerenciador de downloads, mensageiro instantâneo etc.

Eu preciso de todos eles e eles estão na bandeja do sistema Windows esperando que eu use. Portanto, não consigo remover um deles, porque os uso com frequência. 5-6 vezes ao dia.

Mas eu não preciso deles na inicialização. Então, como posso atrasar o carregamento desses programas.

Por exemplo: - Anti-vírus, indexador de arquivos: na inicialização - Tradutor, gerenciador de downloads, desbloqueador: 5 minutos após a inicialização, etc.

Que soluções você recomenda?

trante
fonte

Respostas:

11

O Delayer de inicialização executa a tarefa: http://www.r2.com.au/page/products/show/startdelay


fonte
Obrigado. Excelente programa com interface bonita. Observe que isso funciona apenas para programas que iniciam, não para coisas adicionadas ao shell: inicialização, acredito. Isso também precisa de direitos de administrador e o próprio programa precisa ser iniciado na inicialização. A versão gratuita parece ser mais do que suficiente para mim.
Sanoo
6

Em vez do comando ping que Jeffy sugeriu anteriormente no Windows XP / Vista / 2008, eu uso o comando timeout em um arquivo em lotes.

Sintaxe: timeout /t seconds

@echo off

rem for 5mins delay..

timeout /t 300

rem starting delayed start programs

start cmd /C "C:\Some\Path\To\A\Program.exe"

start cmd /C "C:\Some\Path\To\A\Shortcut.lnk"

start notepad

PS Se você não quiser ver a contagem regressiva, poderá descartar a saída da seguinte forma: timeout /t 300 > nul

paparoun
fonte
11
Seria bom se não fosse porque timeoutnão está disponível no Windows XP ...
Pere
3
  1. Crie um arquivo em lotes chamado "5minsdelayStart":

    @echo off
    rem dormir por 300000 milissegundos (5 minutos)
    ping -n 1 -w 300000 -4 10.0.0.0> NUL
    
    rem iniciando programas de início atrasado
    iniciar cmd / C "C: \ Some \ Path \ To \ A \ Program.exe"
    iniciar cmd / C "C: \ Some \ Path \ To \ A \ Shortcut.lnk"
    
  2. Substitua os comandos na parte inferior pelas coisas que você deseja iniciar após 5 minutos de atraso.

  3. Adicione este arquivo em lotes à sua pasta de inicialização.

Nota : Você pode criar um atalho para o arquivo em lotes e definir as opções de inicialização para iniciar o arquivo em lotes minimizado. Você terá um prompt de comando em segundo plano de qualquer maneira, mas pelo menos se for minimizado, não haverá muita intrusão!

Além disso, se, por algum motivo na sua rede 10.0.0.0, for encaminhado para algo válido, você deverá alterar esse endereço IP para outro (que não possui uma rota).

Jeffy
fonte
Não consigo encontrar em nenhum lugar da documentação o que o terceiro parâmetro (-4) significa, mas ele definitivamente faz alguma coisa, pois o comando é executado corretamente e não gera um erro. Poderia nos dar uma dica?
Pere
2

Na verdade, ambas as respostas têm méritos. Definir um atraso de tempo fixo pode não ser do seu interesse, pois as necessidades mudam com o tempo. Qualquer atraso definido para iniciar o restante da carga de uma só vez pode ser ainda mais inconveniente do que iniciá-los no momento em que você está executando o "Wait for Windows" usual.

Eu consideraria adicionar um argumento para "continuar aguardando? S / N" no lote se você tiver muitos itens. Ou você pode permitir que seja uma extensão temporizada automática com base na atividade. (ou seja, aguarde um tempo sem atividade do teclado para continuar). De qualquer forma, a menos que você faça isso em geral (cada um como uma ação cronometrada separada), poderá achar que executar todos os 5 minutos após a inicialização seja tão ruim ou pior do que executar tudo antes de começar.

Eu acho que se tudo isso for absolutamente necessário, talvez seja melhor colocá-los em uma sequência com 1 de cada vez, executando cada um e depois verificando se ainda não há atividade, executando o próximo. Obviamente, somente você sabe quais são necessários na inicialização. Alguns podem não ser necessários para certos episódios rápidos de ligar / desligar. Se colocados na ordem correta, eles nunca seriam alcançados antes de você desligar.

Outra possibilidade é amarrar o carregamento à necessidade do que é carregado. Se você não estiver acessando a Internet ou usando o email ou outra atividade de "alto risco", considere não carregar o software AV. Adicionar o comando "Executar primeiro se já não estiver em execução" nessas atividades pode proporcionar um aumento significativo na velocidade dos jogos locais ou qualquer outra coisa que não precise ser verificada e verificada novamente a cada movimento. Basta vincular a inicialização ao programa que precisa.

Outra opção a considerar seria definir o máximo possível para "executar como um serviço", pois isso normalmente leva menos tempo para se tornar ativo do que executar uma sequência normal de "iniciar o programa".

Para sua informação, existe um utilitário muito útil que tenho usado e dado a muitas pessoas ao longo dos anos chamado "StartMan" Facilmente encontrado no Google e no Free e tenho certeza de que existem outros. Ele funciona com todas as versões do Windows que eu já tentei do Win98 ao Win7. Isso permitirá que você tenha muito mais controle sobre seus programas de inicialização sem precisar fazer alterações permanentes na configuração de inicialização e desfazer facilmente aqueles que não são produtivos.

questorfla
fonte
1

Primeiro remova-os da execução na inicialização.
Em seguida, faça um programa em lote para executar todos eles.
Portanto, após a inicialização do computador, a primeira coisa a fazer é executar o programa em lote para carregar tudo.

Ivan
fonte
obrigado, mas, nessa situação, eu devo executar o arquivo em lotes manualmente. qual eu não prefiro.
0

O Script do Windows pode ser usado em vez do script de comando. Possui um método Sleep () que deve ser suportado no Windows XP. Ele roda sem nenhuma janela visível e permite configurar a visibilidade do programa executado - oculto, normal ou minimizado.

Antes de usar o sistema Windows Script, verifique se ele está configurado para executar arquivos * .vbs.

Abaixo está um exemplo de script que deve ser colocado no arquivo com a extensão "VBS", por exemplo "DelayedStart.vbs" e colocado na pasta StartUp do menu Iniciar:

Set Shell = WScript.CreateObject("Wscript.Shell")

WScript.Sleep(5000)
Shell.Run """C:\Program Files\Debug\MemInfo\meminfo.exe""", 2, False
Shell.Run """C:\Windows\System32\taskmgr.exe""", 2, False

rem True=wait until exits
rem Window: 0=hidden, 1=normal, 2=minimized
rem Shell.Run """notepad.exe"" ""argument with space""", 1, False
rem Shell.Run "notepad.exe """ & WScript.Arguments.Item(0) & """", 1, True
bomanz
fonte
0

Para todos aqueles que dizem " First remove them from run at startup." devo dizer:

Nem todos os aplicativos funcionam, alguns os adicionam novamente ao registro quando são executados.

Portanto, excluir a chave do registro de inicialização não é uma solução para não executá-la na próxima inicialização, a menos que a chave do registro seja excluída após a interrupção do aplicativo.

O pior caso que encontrei (driver digitalizado) foi o lançamento na inicialização de um aplicativo, que não possui GUI, mas se trava com o processo "system", de modo que não pode ser morto a menos que você mate o "system" (aviso ao fazê-lo) = BSOD), também se o registro de bloqueios / ganchos for alterado, portanto, após a exclusão da chave, ela reaparece, etc. Como o aplicativo não pode ser morto, você não poderá evitar que seja executado na próxima inicialização. Somente o SOLUTION funciona (sem formatação): comece com um Linux e exclua esse aplicativo, nunca mais o reinstale ... mas, como é um "driver", ele é instalado novamente assim que o USB é ativado (também com o dispositivo não conectado) ), é necessário remover todas as entradas USB, drivers, arquivos etc., reiniciar no Linux e excluir o aplicativo.

Eu entendo para aplicativos "normais", é muito fácil ... basta remover a chave de registro lauch e colocar esse comando em um arquivo .lnk (atalho) e, a partir de um script, execute esse .lnk que você deseja dormir entre eles. .. ou alguns em 1 minuto diferem, outros em 5 minutos, etc ... criando scripts e chamando todos os scripts em paralelo, para que cada um possa esperar por um horário diferente, bla bla bla ...

Mas o que fazer com aqueles (java Updater, etc) que se lêem no registro assim que são executados, ou quando são fechados, ou pior ... enquanto estão em execução assim que detectam a chave ausente no registro etc.

Alguns têm a opção de não iniciar automaticamente, mas outros não.

Para os "normais" é muito bom e funciona muito bem ... para isso, digamos "feios", uns, o que pode ser feito? Nada, exceto excluir a chave do registro após o desligamento após a aplicação / interrupção do aplicativo.

Eu não vi nenhum programa que permita configurar chaves de registro kay que você deseja excluir no estágio final do desligamento. Vejo alguém que atua nos estágios iniciais do desligamento ... mas não consegue controlar se outros aplicativos ainda estão em execução (pode não definir a ordem de desligamento); portanto, se alguém ainda estiver em execução, assim que a chave reg for excluída, essa será executada novamente.

Eu tenho minha própria solução (muito desagradável, devo admitir): bloqueio essas chaves do registro sem direitos de administrador, apenas com direitos específicos de usuário, de modo que qualquer aplicativo (que não esteja sendo executado como usuário especial do sistema) seja executado com direitos de administrador, etc. não pode modificá-lo ... aviso com alguns aplicativos que eles se recusam a continuar executando quando lançados porque não alteram essa chave do registro, portanto, você deve executar um script de 4 etapas para iniciá-los ... definir direitos para permitir, executar o aplicativo e espere um pouco, defina os direitos para não permitir (admin), mas permita usuário específico, exclua a chave (já que os direitos de script são direitos do usuário, serão permitidos) ... e quando o aplicativo tentar novamente adicionar novamente ele não conseguirá, se o aplicativo não sair abruptamente, caso contrário ... você deve deixar o registro lá até o desligamento ... nesse caso, adicionar uma tarefa agendada para excluir a chave do registro ...lembre-se de que as chaves do registro também podem ser excluídas iniciando um .reg com instruções para isso ... não há necessidade de criar um aplicativo para isso.

Etc., etc., desejo que alguma ferramenta de freeware tenha essas coisas implementadas, mas ainda não encontrei ninguém, nem pago.

claudio
fonte
Este é realmente um comentário e não uma resposta à pergunta original. Você sempre pode comentar em suas próprias postagens e, quando tiver reputação suficiente , poderá comentar em qualquer post . Leia Por que preciso de 50 reputação para comentar? O que posso fazer em vez disso?
DavidPostill