Categories: Windows XP

Ошибка: Can’t find script engine VBScript for script

На днях столкнулся с проблемой невозможности запуска любых скриптов vbs (Visual Basic Script) на компьютере с Windows 7. Как оказалось, проблема довольно распространённая и встречается во всех версиях Windows, начиная с XP и заканчивая Widows 8.

Проблема следующая: при попытке запустить любой vbs скрипт на компьютере появляется ошибка:

CScript Error: Can’t find script engine «VBScript»

или в русскоязычной версии Windows:

Ошибка CScript: Не удается найти исполняющего ядра «VBScript» для сценария

В первую очередь стоит проверить наличие файла cscript.exe в каталоге %Windir%system32 (обычно это c:Windowssystem32)

Далее нужно попробовать перерегистрировать библиотеку vbscript.dll , выполнив в командной строке (с правами администратора)

regsvr32 /s %SystemRoot%System32vbscript.dl

Если после перезагрузки проблема не пропадет, попробуйте в командной строке выполнить следующие команды (перерегистрируем все библиотеки, необходимые для работы скриптов Visual Basic на компьютере):

regsvr32 atl.dll regsvr32 jscript.dll regsvr32 dispex.dll regsvr32 scrrun.dll regsvr32 scrobj.dll regsvr32 vbscript.dll regsvr32 msxml3.dll regsvr32 ole32.dll regsvr32 oleaut32.dll wscript /regserver

Довольно часто проблема, связанная с невозможностью выполнение vbs скриптов вызвана некорректным удалением антивируса. Дело в том, что некоторые антивирусы при установке в систему меняют в реестре ключ, указывающий на библиотеку vbscript.dll, прописывая вместо него свою библиотеку. Т.е. перед запуском любого vbs скрипта сначала его код проверяет на безопасность специальный модуль антивируса, и лишь затем код передается на выполнение библиотеке vbscript.dll . Таким образом антивирус получает контроль над выполнением всех vbs скриптов на машине.

При корректном удалении антивируса значение ключа должно возвращаться на стандартное, но некоторые антивирусы (часто этим грешил антивирусы McAfee, AVAST и продукты AVP Лаборатории Касперского) «забывают» это сделать, либо проблему может создать сам пользователь, некорректно удалив антивирус (не стандартной uninstall — процедурой)

Например, такое значение примет этот ключ реестра при установке на компьютере антивируса McAfee.

C:Program FilesCommon FilesMcAfeeSystemCoreScriptSn.20130508143011.dll

Чтобы восстановить начальные настройки, откройте редактор реестра и перейдите в раздел HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}InprocServer32 . Ключ по умолчанию (Default) не должен быть пустым или указывать на отличную от vbscript.dll библиотеку. Если это не так, поменяйте его значение на путь к библиотеке vbscript.dll (по умолчанию это C:Windowssystem32vbscript.dll )

Совет . Если при попытке сохранить изменения в реестр появляется ошибка доступа «Не удается изменить… Ошибка при записи нового значения параметра» или «Error Editing Value», нужно предоставить своей учетной записи права на модификацию данной ветки реестра (ПКМ по ветке InprocServer32 ->Permission)

Можно просто сохранить следующий текст в файл с расширением reg и импортировать его в реестр:

Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOTCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}InprocServer32]
@=»C:\Windows\system32\vbscript.dll»
Совет . Все сказанное выше относится и к ветке HKEY_CLASSES_ROOTWow6432NodeCLSID{B54F3741-5B07-11cf-A4B0-00AA004A55E8}. В разделе InprocServer32 в качестве значения по умолчанию также должно быть прописано C:Windowssystem32vbscript.dll

Думаю, несмотря на все большее распространение в массы сценариев на Powershell , большинство системных администраторов и разработчиков ПО еще долго не смогут отказаться от накопленного багажа различных скриптов автоматизации на vbs, так что описанная проблема и методы ее решения будут актуальными еще долгое время.

admin

Share
Published by
admin

Recent Posts

Что такое Zulip

Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…

2 месяца ago

Что такое Zookeeper

Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…

2 месяца ago

Что такое Zimbra

Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…

2 месяца ago

Что такое Zabbix

Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…

2 месяца ago

Что такое YouTube

YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…

2 месяца ago

Что такое yota

Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…

2 месяца ago