1. Introdução
80040154 REGDB_E_CLASSNOTREG. A causa é que o motor de VBScript (o componente COM que o Viewer usa para executar os scripts das telas) não está registrado ou não está presente na estação; situação cada vez mais comum em máquinas novas por causa da descontinuação do VBScript no Windows.2. Por que acontece
A partir do Windows 11 24H2, o VBScript passou a ser um recurso opcional (Feature on Demand); em builds recentes ele pode vir ausente ou desabilitado na instalação.
Um detalhe: o Viewer é um aplicativo de 32 bits (x86). Por isso ele precisa do vbscript.dll de 32 bits, que fica em C:\Windows\SysWOW64.
3. Sintomas
- O Viewer não abre ou as telas carregam sem conseguir executar scripts; o E3 Server e outras estações de Viewer podem funcionar normalmente.
- No log do E3, uma destas mensagens (ambas com o mesmo código):
VBSCRIPT Failed creating VBScript object - error(80040154) REGDB_E_CLASSNOTREG VBSCRIPT Failed to compile class VBScript code - error(80040154) REGDB_E_CLASSNOTREG
4. Diagnóstico (na estação do Viewer)
Execute os comandos como Administrador, em um Windows PowerShell de 64 bits.
# O componente de 32 bits que o Viewer precisa existe?
Test-Path C:\Windows\SysWOW64\vbscript.dll
# O recurso está instalado no Windows? Get-WindowsCapability -Online -Name "VBSCRIPT~~~~"
Test-Path= False (ou o recurso aparece como não instalado noGet-WindowsCapability) → o VBScript de 32 bits está ausente. Siga a seção Como corrigir.Test-Path= True, mas o Viewer ainda falha → o recurso está inconsistente; reative/repare conforme a seção Como corrigir. Registrar ovbscript.dllisolado não resolve, pois o pacote do VBScript depende de outras DLLs/componentes.
5. Como corrigir
Rode tudo como Administrador, no Windows PowerShell de 64 bits. Siga os passos em ordem — só passe ao próximo se o anterior não resolver. Ao final de cada tentativa, reinicie a estação e reabra o Viewer.
- Busque as atualizações opcionais no Windows Update. Em Windows Update → Opções avançadas → Atualizações opcionais, verifique se o VBScript aparece na lista e instale-o.
- Reative o recurso opcional do VBScript. Pela interface: Configurações → Sistema → Recursos opcionais → Adicionar um recurso → VBSCRIPT. Ou por PowerShell:
Add-WindowsCapability -Online -Name "VBSCRIPT~~~~" Test-Path C:\Windows\SysWOW64\vbscript.dll # esperado: True
Reativar o recurso reprovisiona o pacote completo (com as dependências), ao contrário de registrar o
vbscript.dllisoladamente.Configurações → Recursos opcionais → adicionar o recurso VBSCRIPT. - Se a adição falhar com erro de WSUS. Em estações gerenciadas, o
Add-WindowsCapabilitypode retornar o código0x800f0954(ou a interface mostra “Não foi possível adicionar”), porque a máquina busca atualizações de um servidor WSUS interno sem acesso à fonte do recurso. Correção: permitir que a estação baixe recursos opcionais direto do Windows Update oficial da Microsoft (em vez do WSUS), por política de grupo ou removendo-a temporariamente da regra/rede restritiva, e repita o passo 1.
Erro 0x800f0954doAdd-WindowsCapabilityem estação apontada para o WSUS. - Se ainda não funcionar, repare o Windows. Com acesso ao Windows Update, repare o store de componentes e os arquivos de sistema. Execute um comando por vez, aguardando cada um concluir antes do próximo:
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow
Test-Path C:\Windows\SysWOW64\vbscript.dll
O
DISMpode levar de 10 a 30 minutos e requer internet.
6. Prevenção e recorrência
- Como a Microsoft está descontinuando o VBScript no Windows, uma atualização futura do Windows pode removê-lo novamente. Se o erro voltar logo após uma atualização, é o mesmo caso; basta reativar o recurso opcional.
- Controle as atualizações do Windows nas estações de supervisão e mantenha este procedimento à mão.
A Elipse está trabalhando em um motor de VBScript nativo, que substituirá o componente VBScript do Windows quando ele não estiver disponível no sistema operacional. Esse novo componente está previsto para a versão 7.0 do Elipse E3/Power/Water.
