Задача:
Необходимо VBS сценарий преобразовать (скомпилировать) в exe-файл.
Решение 1:
Для этой цели существует множество утилит. Мне понравилась Vbs To Exe от компании F2K0 Software. Правда, Internet Explorer сообщает, что
Корпорация Майкрософт получила сведения о том, что этот веб-сайт содержит угрозы, которые могут привести к разглашению ваших личных и финансовых сведений.
и не рекомендовал мне переходить на него:
Но мы не из трусливых, поэтому все же перешли на сайт:
Тем более, что другие браузеры на него не ругаются.
Итак, утилита Vbs To Exe...
-
Она позволяет конвертировать VBS сценарий в исполняемый exe файл.
-
В ней есть возможность создания exe файлов как для 32-х, так и для 64-х -разрядных операционных систем.
-
Русскоязычный интерфейс
-
Делать компилируемое приложение невидимым
-
Добавлять к приложению манифест Администратора
-
Шифровать программу
-
Включать дополнительные файлы в сборку
-
Добавлять сведения о версии
-
Выбирать собственный файл для иконки
-
Редактировать VBS код
Решение 2:
Оказывается, WinRAR умеет делать все то же самое, что и Vbs To Exe. Нужно просто упаковать свой VBS-сценарий в самораспаковывающийся sfx архив, указав следующие параметры на вкладке «Дополнительные параметры SFX...»:
-
Вкладка Общие -> Путь для распаковки - оставить без изменений (пустым):
-
Вкладка Установка -> Выполнить скрипт после распаковки - wscript имя_сценария.vbs и установить галочку Ждать и устанавливать код возврата:
-
Вкладка Режимы -> Установить галочку Распаковать во временную папку, можно еще в Режиме вывода информации установить параметр «Скрыть все»:
-
Вкладка Дополнительно -> Установить галочку Запрос административного доступа (в случае, если для скрипта необходим запуск в контексте Администратора):
-
Вкладка Обновление -> в Режиме обновления выбрать Извлечь и заменить файлы, в Режиме перезаписи выбрать Перезаписывать все файлы без запроса:
-
Вкладка Текст и графика -> можно выбрать логотип и иконку (значок) для самораспаковывающегося SFX архива:
-
Вкладка Модуль -> при необходимости, выбираем любой из предложенных модулей. Например, для работы с некоторыми разделами реестра, необходимо выбрать 64-х разрядный модуль, так как 32-х разрядная среда «видит» не все разделы реестра 64-х разрядной среды выполнения:
Причем, exe-файлы, скомпилированные при помощи этих методов и запускаемые от имени Администратора в 64-х битных ОС, избавлены от недостатков, указанных в примечании к статьеVB. Запускаем свой exe-шник от имени администратора. Само собой, что компиляция должна производиться в первом методе с установленным параметром «Архитектура - 64 бит», а во втором методе - с выбором одного из 64-х разрядных модулей на вкладке Модуль.