Execução de script VBS bloqueada no Windows 10

Aug 22 2020

Postando esta questão em nome do GNU Octave tentando solucionar problemas de execução. Recentemente, alguns usuários do Windows instalaram o software e não conseguiram executá-lo. Freqüentemente, eles não recebem erros, mensagens ou comentários úteis, clicam duas vezes no ícone de inicialização e nada acontece .

Em um caso recente, conseguimos trabalhar com o usuário para restringir o problema à incapacidade de seu sistema de executar scripts VBS. O Octave usa um octave.vbsarquivo (chamado com wscript) para definir o caminho e as variáveis ​​de ambiente e iniciar o programa.

Tentativas de diagnóstico atuais:

  • O usuário criou um script de teste simples em sua área de trabalho de acordo com este exemplo para apenas abrir uma caixa de diálogo do sistema. Ele não consegue executar o script e não recebe pop-up ou mensagem de erro.
  • Ele moveu o arquivo para locais diferentes, como C:\tempa mesma pasta do Octave, etc., e o arquivo não seria executado.
  • Verificou a existência do wscript fazendo-o executar a wscriptpartir da caixa de diálogo Executar e a caixa de diálogo "Configurações do Host de Script do Windows" apareceu.
  • Clicar com o botão direito no arquivo de script e marcar Abrir com mostra que a associação de arquivo padrão é com "host de script baseado no Microsoft Windows" como deveria ser (e clicar em que não produz a execução do script).
  • Clique com o botão direito do mouse e 'executar como administrador' não faz diferença.
  • Desativar temporariamente a proteção em tempo real do Antivirus não faz diferença.
  • Entradas de registro verificadas para ter certeza de que não há chave Enabled = 0 de acordo com este artigo (não há).

Alguém pode fornecer orientações sobre quais configurações do Windows ou outras configurações impediriam a execução de scripts vbs e como podemos corrigir esse problema? Ou que outras coisas devem ser verificadas para identificar o problema? Há alguma nova configuração de segurança padrão no Windows ou vem com atualizações que explicam isso?

O usuário está executando o Windows 10 Home, o Windows Defender integrado e as atualizações mais recentes. Não é um sistema gerenciado. Nenhuma configuração especial de segurança foi alterada deliberadamente / conscientemente por ele. Informações da versão abaixo:

  • Especificações do Windows:
  • Edição: Windows 10 Home
  • Versão: 2004
  • Instalado em: 2020-01-10
  • Versão do SO: 19041.421
  • Experiência: Windows Feature Experience Pack 120.2212.31.0

Para referência, o tópico de discussão original com este problema pode ser encontrado no fórum de discussão Octave , mas acho que capturei todas as informações relevantes acima.

EDITAR: Adicionando uma nota de uma discussão da lista de mantenedores - para usuários que não podem executar um arquivo vbs por qualquer motivo, o octave.batarquivo ainda está presente no sistema, localizado na mingw64/binpasta. Um usuário pode alterar os atalhos da área de trabalho para apontar para aquele arquivo em vez do octave.vbsarquivo e o oitavo deve ser executado sem problemas, embora possa haver algumas mudanças estéticas com janelas de prompt de comando adicionais visíveis às vezes.

Respostas

1 w32sh Aug 26 2020 at 03:21

Com base no log do ProcMon , foi descoberto que wscript.exe estava carregando 4 módulos de software antivírus (3 Avast e 1 módulo McAfee IOfficeAntiVirus).

O módulo McAfee IOfficeAntiVirus é o culpado mais provável, que está bloqueando a wscript.exeexecução de scripts.

Desinstalar completamente o McAfee deve resolver o problema.

1 Matt Aug 25 2020 at 14:33

Diagnóstico

Certifique-se de que "%SystemRoot%\System32\WScript.exe"existe. Você pode verificar isso com o explorador de arquivos (pressione WIN+ E) - digite o caminho %SystemRoot%\System32na caixa de texto do explorador de arquivos para visualizar esse diretório e, em seguida, procure por WScript.exelá.

Abra uma janela de comando (pressione WIN+ e Rdepois digite cmd.exe) e digite o seguinte:

ftype | find /I "VBS"

Isso deve dar o resultado:

VBSFile="%SystemRoot%\System32\WScript.exe" "%1" %*

Então, verifique

assoc .vbs

que deve mostrar:

.vbs=VBSFile


Consertar

Se alguma das opções acima não estiver configurada corretamente, o arquivo VBS não será executado. Para corrigir o tipo de arquivo (FTYPE) basta executar o comando

ftype VBSFile="%SystemRoot%\System32\WScript.exe" "%1" %*

Para corrigir a associação, execute o comando

assoc .vbs=VBSFile

Se tudo estiver configurado corretamente e o problema ainda persistir, é provável que o software anti-malware esteja bloqueando a execução - nesse caso, verifique a resposta que w32sh deu.

1 Guest1234-5678-9101112 Aug 29 2020 at 13:50

Não sei se isso vai ajudar ou não, mas gostaria de compartilhar minha experiência na resolução de sintomas semelhantes observados após atualizar meu dispositivo para as especificações a seguir

  • Edição Windows 10 Pro
  • Versão 2004
  • OS build 19041.450
  • Experimente o Windows Feature Experience Pack 120.2212.31.0

O dispositivo tem apenas um VBScript que deveria estar em execução na inicialização, mas parou de funcionar logo após a atualização. Também vale a pena mencionar que o script não existia quando as atualizações anteriores foram instaladas, portanto, neste estágio, não posso dizer se o problema é específico da versão 2004 ou se este é um problema que pertence às atualizações do W10 em geral.

O problema observado é que em vez de ser executado na inicialização, o Notepad ++ estava abrindo uma página exibindo o conteúdo do script. Também notei que o ícone associado ao arquivo que contém o script foi alterado para o ícone do Notepad ++ após a atualização.

Então, fui verificar a associação do arquivo na IU do W10 (Iniciar> Configurações> Aplicativos> Aplicativos padrão> Escolha os aplicativos padrão por tipo de arquivo) e aqui pude ver que a extensão .vbs já estava atribuída ao "Script baseado no Microsoft Windows Hospedeiro". Em seguida, alterei o aplicativo padrão selecionando manualmente "Host de script baseado no Microsoft Windows" novamente e, de repente, o arquivo começou a exibir o ícone gerado pela Microsoft para itens .vbs.

A partir daí, consegui executar o script manual e automaticamente na inicialização também.

Por outro lado, uma observação: também vi meu AV bloqueando alguns comandos do PowerShell (mas não todos) quando chamado diretamente de um módulo VBA do Excel, mas isso nunca impactou a execução do script mencionado anteriormente.

Hackoo Aug 25 2020 at 21:58

Você deve verificar se não há outro antivírus que bloqueie a execução do seu arquivo vbs!