Ошибка: Can’t find script engine VBScript for script | Windows для системных администраторов

Ошибка: 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 : Can't find script engine "VBScript"

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

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

regsvr32 /s %SystemRoot%\System32\vbscript.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 Files\Common Files\McAfee\SystemCore\ScriptSn.20130508143011.dll MCAfee заменят библиотеку обработчик vbs (vbscript.dll)

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

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

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

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

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

Еще записи по теме: Windows XP
Понравилась статья? Скажи спасибо и расскажи друзьям!
Назад:
Вперед:
Полные правила комментирования на сайте winitpro.ru. Вопросы, не связанные с содержимым статьи или ее обсуждением удаляются.

Сказать Спасибо! можно на этой странице или (еще лучше) поделиться с друзями ссылкой на понравившуюся статью в любимой социальной сети(специально для этого на сайте присуствуют кнопки популярных соц. сетей).

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)



MAXCACHE: 0.24MB/0.00108 sec