Especialmente em ambientes com vários utilizadores, é muito útil se o JTL-Wawi Worker for executado no servidor de base de dados e não for iniciado separadamente em qualquer estação de trabalho. Os requisitos para este projecto são: “No arranque do sistema, o Worker deve iniciar-se automaticamente como um serviço”. Isto resulta nas seguintes soluções:

  1. Utilize o agendador de tarefas do Windows para criar uma tarefa que é iniciada quando o sistema é iniciado.
  2. Colocar o trabalhador no arranque automático do utilizador.
  3. Fazer com que o Worker seja iniciado automaticamente como um serviço “real” no início do sistema.

A solução 2 está fora de questão para mim, uma vez que o utilizador correspondente tem de ter sessão iniciada no servidor. Restam assim as soluções 1 e 3. A solução 1 funciona, mas infelizmente não é totalmente estável, como tive de descobrir na prática. Neste caso, pode sempre acontecer que o trabalhador não arranque de forma limpa e, por isso, não se efectua qualquer ajustamento. A solução 3 tem o problema de que o jtl-wawi.exe não pode ser iniciado como um serviço e que alguns parâmetros têm de ser introduzidos. Por isso, fui à procura de uma solução estável que funcionasse de forma limpa mesmo após uma reinicialização inesperada do sistema. Eis a minha abordagem.

O bom e velho ficheiro batch continua a ser a forma mais segura de iniciar uma aplicação automaticamente com parâmetros. Mas esse ficheiro batch não pode ser configurado como um serviço. Também não fiquei muito satisfeito com o método de arranque através do planeamento de tarefas. Assim, deve haver uma forma de iniciar este ficheiro batch como um serviço no arranque do sistema, mesmo antes de um utilizador iniciar sessão no servidor. Enquanto pesquisava na Internet, deparei-me com a pequena ferramenta “Non-Sucking Service Manager”, que também pode ser utilizada para iniciar ficheiros batch como um serviço. A versão actual pode ser descarregada aqui: https://nssm.cc/download

O script seguinte é utilizado como base para chamar o trabalhador. É armazenado no directório de instalação do Wawi e guardado como worker.bat:

@Echo off
cd C:\Program Files (x86)\JTL-Software\
JTL-wawi.exe WORKER Standard admin pass eazybusiness

Predefinição* = Nome do perfil quando se inicia sessão no Worker

admin* = nome do utilizador para iniciar sessão no Worker

pass* = palavra-passe do utilizador para iniciar sessão no Worker

eazybusiness*= Cliente no perfil de início de sessão no Worker

*Estes dados devem ser depositados!

Basta copiar o código para a área de transferência e depois copiá-lo para um ficheiro de texto vazio que crie com o Editort (notepad.exe). Agora só tem de substituir o identificador admin pela palavra-passe pass no código com os seus dados de acesso. Em seguida, guarde-o no directório de instalação do JTL-Wawi como um ficheiro
worker.bat
como um ficheiro worker.bat.

Depois de descarregar o “No-Sucking Service Manager”, descompacte o ficheiro ZIP e copie o ficheiro nssm.exe do directório de 32 ou 64 bits para a pasta de instalação do JTL-Wawi. Os preparativos estão assim concluídos.

Agora, inicie a linha de comandos no PC e mude para o directório de instalação do JTL-Wawi. Em seguida, introduza o seguinte comando:

nssm install JTL-WawiWorker

2015-05-05 13_27_18-Administrador_ Prompt

Encontrará o serviço com o nome JTL-WawiWorker na administração do sistema, em Serviços. Depois de confirmar a entrada com Enter, abre-se a seguinte janela:

No separador Aplicação, é necessário introduzir o caminho para o ficheiro batch. Para tal, basta clicar no botão com os três pontos.

Em seguida, passe para o separador Iniciar sessão. Aqui introduz-se o nome de utilizador e a palavra-passe do administrador local em Esta conta:

Em seguida, clique no botão Instalar serviço para configurar o serviço. Se receber a mensagem de que o serviço foi instalado com êxito, pode fechar todas as janelas e reiniciar o servidor/PC.

Se o serviço não arrancar automaticamente após o reinício, isso deve-se provavelmente ao facto de o nome de utilizador ou a palavra-passe não terem sido armazenados correctamente. Isto também pode ser ajustado posteriormente nas definições de serviço. Se tudo estiver correcto, o ecrã deve ser semelhante à imagem abaixo:

Adenda

Rudolf Ring do Click-licht.de enviou-me um e-mail com a dica de que ele dispensa o ficheiro batch do primeiro passo e armazena os argumentos para o início do trabalhador directamente no nssm e, portanto, no serviço. Claro que também é possível fazê-lo como mostra a captura de ecrã que ele fez:

O caminho para o JTL-Wawi.exe está armazenado no Caminho da aplicação. O directório Startup preenche-se a si próprio e não precisa de ser alterado. Os argumentos iniciais são armazenados em Arguments, tal como descrito no ficheiro batch.

Porquê um ficheiro batch?

A razão é relativamente simples. Se o fizer da forma descrita por Rudolf Ring, os parâmetros de arranque são armazenados no serviço. Em caso de alterações, quer se trate da alteração da palavra-passe ou de o JTL alterar os parâmetros para iniciar o trabalhador, tenho de entrar no serviço e efectuar as alterações nesse local. Com um ficheiro batch, tenho a vantagem de fazer as alterações aí e também de as testar sem ter de tocar no serviço. Basta parar o serviço, introduzir as alterações, testar e, em seguida, iniciar novamente o serviço. Esta é a razão pela qual descrevi aqui a forma de o fazer com um ficheiro batch.

Nota: Ao actualizar o JTL-Wawi, o serviço deve ser encerrado, caso contrário a actualização para uma versão mais recente não funcionará. A razão é que o JTL-Wawi.exe é bloqueado pelo serviço e não é eliminado durante a desinstalação.

  • 0/5
  • 0 ratings
0 ratingsX
Very bad! Bad Hmmm Oke Good!
0% 0% 0% 0% 0%

Haben Sie Fragen oder brauchen ein individuelles Angebot? Zögern Sie nicht, uns zu kontaktieren.


    O eBakery necessita das informações de contacto que nos fornece para o contactar sobre os nossos produtos e serviços. Pode anular a subscrição destas notificações em qualquer altura. Para obter informações sobre o cancelamento da subscrição, bem como sobre as nossas práticas de privacidade e o nosso empenho em proteger a sua privacidade, consulte a nossa Política de Privacidade.*.

    Related Posts

    Leave a Comment

    Hat dir der Artikel gefallen?

    Dann melde dich doch zu unserem Newsletter an!

    Neben unseren Blog Themen informieren wir dich darin regelmäßig zu neuen Features und Tutorials