Преобразование скрипта ps1 в exe
Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов рунета Pyatilistnik.org. В прошлый раз мы с вами разобрали, как проводить диагностику неработающего интернет соединения, теперь каждый из вас знает этот алгоритм. Сегодня я вас хочу научить конвертировать скрипты PowerShell в формате PS1 в исполняемый файл EXE, я расскажу в каких сценариях, это полезно и применимо. Уверен, что данная публикация окажется весьма полезной.
Для чего конвертировать формат PS1 в EXE
Когда вы начинаете создавать различные сценарии на PowerShell, то при последующем их выполнении вы столкнетесь в подавляющем количестве случаев с ситуацией, что у вас не подписанный сценарий и он не может выполнятся в текущем режиме безопасности ExecutionPolicy, в таких случаях мы меняли режим работы ExecutionPolicy на remotesigned. Хорошо, что вы как администратор можете для себя это поправить, но вот делать, это для всех не самое лучшее и безопасное решение.
Если же вы ваш PowerShell скрипт переделаете в исполняемый файл EXE, то пользователю будет проще его выполнить, особенно если изменяемые данные являются частью его профиля, где не требуются административные права, например моя недавняя задача по подкладыванию пользователю без 1С в его профиль.
Методы конвертирования PS1 to EXE
Существует огромное количество методов по преобразованию скриптов powerShell в формат исполняемого файла EXE, они делятся на два типа:
- Онлайн преобразователь
- Это утилиты или скрипты, работающие локальной
PS1 to EXE через F2KO software
F2KO software - это бесплатная утилита, заточенная для этой задачи.
Распаковываете архив Ps1_To_Exe. Утилита имеет как портативную версию не требующую установки, так и обычную. Отрыв утилиту, первым делом нам нужно либо скопировать код из скрипта PS1 или же открыть его, для этого нажимаем кнопку "Open". В проводнике Windows найдите ваш ps1 файл и нажмите "Открыть".
Для красоты я вам советую найти для вашего EXE файла красивую иконку в формате ICO и подсуньте ее через пункт "Icon".
Когда все готово, то нажимаем кнопку "Convert" и запускаем наше конвертирование скрипт PowerShell. Сам процесс занимает пару секунд.
Указываем путь сохранения нашего EXE файла. Снизу вы увидите события по выполнению вашей операции.
PS1 to EXE через PowerGUI
PowerGUI - это так же бесплатный аналог редактора PowerShell ISE, но с рядом дополнительных функций. Сам проект появился еще во времена Windows Server 2008 R2. Я как-нибудь соберусь написать статью про данный скриптовый редактор. Чтобы с помощью PowerGUI конвертировать сценарий PowerShell в EXE, вам необходимо выбрать меню "Tools - Compile Script" или можете просто нажать Ctrl+F9.
В окне "Compile Script" укажите куда вы будите сохранять ваш EXE файл, через пункт "Icon" вы можете интегрировать нужную вам иконку.
Когда все готово, то нажимаем "Ok", обратите внимание, что есть возможно поставить пароль.
Подтверждаем наше преобразование. Как видим у нас из скрипта PowerShell появился симпатичный, исполняемый файл EXE. PowerGUI отлично справился.
Если вы при преобразовании ставили пункт "Protect script source code with password", то при попытке запустить полученный EXE файл у вас выскочит форма ввода пароля, и пока вы не введете правильное значение, ваш файл не будет запущен. Таким образом можно легко ограничить круг лиц, кто может его использовать.
Конвертирование PowerShell скрипта в EXE Online
теперь покажу несколько сервисов, которые легко справятся с подобной задачей и быстро вам из PS1 сделают файл EXE.
В поле "PowerShell Code" копируем ваш код скрипта, задаем имя файла на выходе и нажимаем кнопку "Create EXE". После чего указываете куда сохранить полученный файл.
Нажимаем кнопку "Выберите файл" и в проводнике Windows Находим наш скрипт.
Далее вы можете задать настройки:
- Тип архитектуры x86 или x64
- Будет запускаться в виде консольного или графического режима
- Будет ли добавлен файл манифест
- Задать пароль на запуск
После всех манипуляция, для преобразования нашего сценария PowerShell мы нажимаем кнопку "Convert"
Платные преобразователи PS1 в EXE
Так же существуют платные скриптовые редакторы по конским ценам, PowerShell Studio и ISE Steroids 2.0 Enterprise. По своей сути они напоминают бесплатные PowerGUI и PowerShell ISE. Я не вижу смысла в покупке PowerShell Studio и ISE Steroids 2.0 Enterpris ради функции преобразования. Оба продукта вы можете попробовать в тестовом периоде, чтобы сделать свое представление о них. На этом у меня все. Надеюсь, что вы сами сможете придумать себе сценарии, когда вам будет полезно преобразовать ваш скрипт PS1 в EXE файл. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.