Execute um script perl como um serviço do windows 7

2

Eu tenho um script perl que é compilado usando pp, para ser executado como um serviço do windows em máquinas windows 7. Olhei para o fio link , mas de pouca utilidade porque a maioria deles não era clara e as soluções sugeridas eram para criar executáveis e não realmente para execução como um serviço do windows 7. Eu tentei colocar o meu exe compilado nas tarefas agendadas do Windows, mas acho que não é capaz de executar por algum motivo. Como faço para depurar isso?

    
por reptile 07.11.2011 / 15:57

2 respostas

1

Você pode criar um serviço no Windows 7 usando o comando sc.exe na linha de comando como administrador. Veja como você faz isso.

Vá para Iniciar - > Todos os programas - > Acessórios e, em seguida, clique com o botão direito do mouse em "Prompt de comando". No menu pop-up, escolha "Executar como administrador".

Uma vez no prompt de comando, use o seguinte comando para criar um serviço. Observe que há um espaço depois de binPath= e é necessário.

sc create perlsvc binPath= c:\myprogram\myperlprg.exe

Isso criará um serviço chamado perlsvc que executa c: \ myprogram \ myperlprg.exe quando o serviço é iniciado. Se você agora executar o services.msc, deverá ver seu serviço listado. Seu serviço será configurado para iniciar manualmente neste momento. Você pode mudá-lo de dentro do programa de serviços que você acabou de iniciar ou através de uma opção ao criar o serviço (veja o link no final deste post).

O valor perlsvc é usado como a chave de registro para o serviço 1 e também para se referir ao serviço com os comandos sc e net . É melhor mantê-lo curto e sem espaços. Se você quiser algo mais descritivo, é possível anexar a opção DisplayName= . Mais uma vez, anote o espaço obrigatório após o sinal de igual.

sc create perlsvc binPath= c:\myprogram\myperlprg.exe DisplayName= "Important Perl Service"

Quando você executar o services.msc, verá "Important Perl Service" como o nome do serviço. Esse nome também será mostrado quando você executar net start para ver a lista de serviços em execução da CLI. Você ainda pode usar o nome abreviado quando estiver na CLI, como com net start perlsvc .

Se você não precisar mais do seu serviço, execute sc delete perlsvc e ele será removido.

Se você planeja criar scripts da instalação do serviço, pode estar interessado em ler sobre as outras opções para sc documentado no site da Microsoft.

1 Os serviços estão localizados na chave de registro HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services .

    
por 21.09.2012 / 03:41
0

Tente usar o SC.exe para converter um EXE em um serviço do Windows.

    
por 08.11.2011 / 10:30

Tags