me ajuda a automatizar esse processo

6

Eu venho de um background unix e preciso fazer isso no Windows Server 2003.

Basicamente eu tenho um processo de linha de comando que eu começo do windows cmd.exe . Eu quero alcançar o seguinte:

  1. Faça esse processo iniciar na inicialização do Windows por padrão, sem que um usuário precise efetuar login para iniciá-lo.

  2. Tenha um ícone na área de trabalho que possa reiniciar este processo em segundo plano (caso ele falhe). Então, algo como um ' nohup mycommand & ' no * nix

por hvgotcodes 26.01.2011 / 20:57

3 respostas

7

Rodando na inicialização

Transforme seu processo em um serviço do Windows usando o comando sc . Sintaxe básica:

sc create NewServiceName binpath= c:\windows\system32\newserv.exe

Anote o espaço após binpath= . Depois de criar o serviço, você pode configurá-lo para ser executado automaticamente como qualquer outro serviço. Se você não está claro sobre isso, vá ao menu Iniciar e escolha Run . Digite services.msc na janela que é aberta. Isso abrirá o snap-in de serviços no Microsoft Management Console. A partir daqui você deve ser capaz de encontrar o seu serviço listado (entre muitos outros) e configurá-lo para ser executado automaticamente usando as ferramentas GUI. Você também pode fazer essa parte do seu comando sc create , mas para um iniciante é muito mais fácil simplesmente pegar a coisa criada e usar as ferramentas GUI para configurá-la da maneira que você quiser.

Uma advertência final é garantir que você execute isso com uma conta que tenha as permissões apropriadas. As contas de Serviço ou Sistema são melhores, mas às vezes você precisa de algo diferente.

Reiniciando sob demanda

Um pequeno arquivo em lotes (* .bat) fará o seguinte:

sc stop NewServiceName
sc start NewServiceName
    
por 26.01.2011 / 21:19
0

Faça um serviço fora do seu processo que é executado no Sistema Local. Em seguida, faça um script em lote na área de trabalho para iniciar e parar o serviço.

EDITAR:

Veja alguns links:
Como executar um programa como um serviço
Gerenciando serviços a partir da linha de comando
Fazendo um script em lote

    
por 26.01.2011 / 21:06
0

No 2003 Server, abra um snap-in de diretiva de computador local no MMC. Expanda Configuração do Computador - Configurações do Windows e, em seguida, abra Scripts (Inicialização / Desligamento) Abra a Inicialização e você poderá adicionar seu script lá. Ele deve estar armazenado no compartilhamento sysvol.

Você também pode criar um atalho para esse script na área de trabalho

    
por 26.01.2011 / 21:21