KB-34941: Executando programa externo ao iniciar o domínio.

Descrição:

Como executar uma aplicação quando o domínio inicia, mesmo que não haja um E3Viewer aberto (ver nota ao final deste artigo)?

Solução:

Para isso, basta colocar o script abaixo no evento OnStartRunning de um Tag Interno:


Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "c:\AppE3\aplicativo.exe"

Deste modo, ele será executado toda vez que o domínio for iniciado.

Porém, para terminar este processo quando o domínio para, é necessário saber o PID (ProcessID) que foi criado para ele após ter executado o WshShell.Run. Depois de obter essa informação, deve-se editar o script acima para o seguinte:

WshShell.Run "c:\AppE3\aplicativo.exe"
ProcessName = "aplicativo.exe"
Set service = GetObject("winmgmts:\\.\root\cimv2")
Set results = service.ExecQuery(" Select * from Win32_Process where Name = '"& ProcessName &"'")
if results.count <> 0 then
     for each obj in results
           TagInternoProcessID = obj.ProcessId
           exit sub
     next
end if
Então, para encerrar o PID, deve-se criar o seguinte script no evento OnStopRunning do Tag Interno:
Set service = GetObject("winmgmts:\\.\root\cimv2")
Set results = service.ExecQuery(" Select * from Win32_Process where ProcessId ='" & TagInternoProcessID & "'")
for each obj in results
      obj.Terminate()
      exit sub
next
Observação: verifique seu script, configurando as variáveis necessárias e links para o Tag Interno.
NOTA: Há uma certa restrição no uso do tradicional objeto Shell do Win XP, pois a partir do Windows Vista ou versões superiores os serviços que rodam na conta SYSTEM (como o E3Run) não podem mais mostrar janelas; em outras palavras, eles não podem mais “interagir com o desktop”. A alternativa neste caso é inserir os scripts que rodam programas com janelas apenas em eventos do Viewer, usando o método ExecuteExternalApp, ou o pick de executar aplicação. Vale lembrar que para isto a pasta onde está o arquivo deve ser compartilhada na rede, para poder ser acessada das diferentes máquinas/viewers clientes.
Print Friendly, PDF & Email

Este artigo foi útil? Was this helpful?

Classificação média - Average rating 0 / 5. Count: 0

Deixe seu Comentário

Seu endereço de e-mail não será publicado. Campos marcados com asterisco são obrigatórios *