Executar um arquivo em lote silenciosamente, executado no login remoto da área de trabalho

2

Em nosso escritório, estamos usando máquinas thin client Linux, elas funcionam muito bem, exceto a falta de IE, o que é uma dor, porque as corporações com as quais lidamos são estúpidas demais para atualizar seus aplicativos da web. / p>

Para resolver este problema, temos máquina em nossa sala de computadores que os usuários remotos acessam o Internet Explorer, isso é feito executando um script em lote que abre o IE e quando ele fecha os logs, esta configuração funciona bem para nós.

Mesmo que eu tenha @echo off e a janela cmd não esteja exibindo nada, eu realmente gostaria que esse arquivo em lote fosse executado silenciosamente, então a janela cmd não aparece.

Isso é possível?

O cliente do servidor de terminal do Ubuntu tem uma opção para iniciar um arquivo / aplicativo no login, existe um comando que eu possa usar para executar esse lote silenciosamente.

Eu tentei estes:

C:\my_batch.bat /NOCONSOLE
C:\my_batch.bat /NOWINDOW
C:\my_batch.bat /B
C:\my_batch.bat /Q

... sem sucesso, talvez seja assim que estou fazendo isso?

Felicidades: -)

Editar

A plataforma de área de trabalho remota é uma máquina com Windows XP, nada totalmente especial, mas não uma configuração do Windows Server.

    
por Ben Everard 18.02.2010 / 18:11

5 respostas

0

O aplicativo de área de trabalho remota está de fato usando o dito arquivo em lote como um shell alternativo, e eu não acho que os parâmetros possam ser passados usando este método.

Portanto, terei que viver com a janela do meu console.

    
por 16.03.2010 / 09:34
2

Talvez tente

start /b my_batch.bat

o parâmetro / b é usado para

Start application without creating a new window. The
application has ^C handling ignored. Unless the application
enables ^C processing, ^Break is the only way to interrupt
the application
    
por 18.02.2010 / 19:04
2

Em vez de usar um arquivo em lotes, por que você não cria uma Política de Grupo que força o shell do usuário a ser o Internet Explorer. Isso deve alcançar o comportamento desejado sem nenhum script.

configuração do usuário - > modelos administrativos- > sistema - > interface de usuário personalizada

Outra alternativa seria criar um vbscript e usá-lo via host de script do windows em vez de um arquivo de lote. Scripts lançados com wscript não geram uma nova janela. O que o seu arquivo de lote está fazendo? Deve ser fácil o suficiente simplesmente convertê-lo em WSH.

    
por 18.02.2010 / 19:38
0

Se você não se importar com o arquivo de lote em execução sempre que qualquer usuário fizer logon (por exemplo, via serviços de terminal ou localmente), então:

  1. Salve seu arquivo .cmd em um local onde todos os usuários tenham acesso somente leitura. (por exemplo,% WINDIR%)
  2. Inicie o gpedit.msc em um prompt de comando
  3. Navegue até o usuário > Segurança > Scripts > Logon
  4. Adicione um novo script e aponte para onde você salvou seu arquivo .cmd

O script deve ser executado silenciosamente sem mostrar uma janela de prompt de comando.

Se você não quiser que ele seja executado quando um usuário fizer logon localmente, provavelmente será possível detectar isso no arquivo em lote e abortar o script silenciosamente.

    
por 18.02.2010 / 18:20
0

Você não pode executar um script em lote escondido se o executar assim. Mas é possível com um pouco de VBS.

Basta executar o arquivo VBS e ele executará o Script oculto

Dim oShell
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.run "cmd /C C:\my_batch.bat",0,false
Set oShell = Nothing

Veja este artigo do msdn: link

    
por 18.02.2010 / 19:38