Преобразование скрипта ps1 в exe

Обновлено 29.06.2019

powershell logoДобрый день! Уважаемые читатели и гости одного из крупнейших 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 - это бесплатная утилита, заточенная для этой задачи.

Скачать F2KO software - https://zn.amorgan.xyz/17SWVnHoujG92yYGSZvCzPgZEpGVfRF8wi или у меня с сайта

Скачивание F2KO software

Распаковываете архив Ps1_To_Exe. Утилита имеет как портативную версию не требующую установки, так и обычную. Отрыв утилиту, первым делом нам нужно либо скопировать код из скрипта PS1 или же открыть его, для этого нажимаем кнопку "Open". В проводнике Windows найдите ваш ps1 файл и нажмите "Открыть".

Конвертирование Ps1 To Exe F2KO software

Для красоты я вам советую найти для вашего EXE файла красивую иконку в формате ICO и подсуньте ее через пункт "Icon".

Добавление иконки к exe в F2KO software

Когда все готово, то нажимаем кнопку "Convert" и запускаем наше конвертирование скрипт PowerShell. Сам процесс занимает пару секунд.

Конвертирование Ps1 To Exe F2KO software

Указываем путь сохранения нашего EXE файла. Снизу вы увидите события по выполнению вашей операции.

Успешное конвертирование ps1 в exe

PS1 to EXE через PowerGUI

PowerGUI - это так же бесплатный аналог редактора PowerShell ISE, но с рядом дополнительных функций. Сам проект появился еще во времена Windows Server 2008 R2. Я как-нибудь соберусь написать статью про данный скриптовый редактор. Чтобы с помощью PowerGUI конвертировать сценарий PowerShell в EXE, вам необходимо выбрать меню "Tools - Compile Script" или можете просто нажать Ctrl+F9.

Скачать PowerGUI можно по ссылке

PS1 to EXE через PowerGUI

В окне "Compile Script" укажите куда вы будите сохранять ваш EXE файл, через пункт "Icon" вы можете интегрировать нужную вам иконку.

Добавление иконки в PowerGUI

Когда все готово, то нажимаем "Ok", обратите внимание, что есть возможно поставить пароль.

Конвертирование Ps1 To Exe PowerGUI

Подтверждаем наше преобразование. Как видим у нас из скрипта PowerShell появился симпатичный, исполняемый файл EXE. PowerGUI отлично справился.

Успешная конвертация powershell скрипта в exe PowerGUI

Если вы при преобразовании ставили пункт "Protect script source code with password", то при попытке запустить полученный EXE файл у вас выскочит форма ввода пароля, и пока вы не введете правильное значение, ваш файл не будет запущен. Таким образом можно легко ограничить круг лиц, кто может его использовать.

Запрос пароля при запуске exe

Конвертирование PowerShell скрипта в EXE Online

теперь покажу несколько сервисов, которые легко справятся с подобной задачей и быстро вам из PS1 сделают файл EXE.

Первый сайт https://ps2exe.azurewebsites.net/

В поле "PowerShell Code" копируем ваш код скрипта, задаем имя файла на выходе и нажимаем кнопку "Create EXE". После чего указываете куда сохранить полученный файл.

ps1 в exe online-01

Второй ресурс https://zn.amorgan.xyz/17SWVnHoujG92yYGSZvCzPgZEpGVfRF8wi

Нажимаем кнопку "Выберите файл" и в проводнике Windows Находим наш скрипт.

Ps1 To Exe Online Converter-01

Далее вы можете задать настройки:

  • Тип архитектуры x86 или x64
  • Будет запускаться в виде консольного или графического режима
  • Будет ли добавлен файл манифест
  • Задать пароль на запуск

После всех манипуляция, для преобразования нашего сценария PowerShell мы нажимаем кнопку "Convert"

Ps1 To Exe Online Converter-02

Платные преобразователи PS1 в EXE

Так же существуют платные скриптовые редакторы по конским ценам, PowerShell Studio и ISE Steroids 2.0 Enterprise. По своей сути они напоминают бесплатные PowerGUI и PowerShell ISE. Я не вижу смысла в покупке PowerShell Studio и ISE Steroids 2.0 Enterpris ради функции преобразования. Оба продукта вы можете попробовать в тестовом периоде, чтобы сделать свое представление о них. На этом у меня все. Надеюсь, что вы сами сможете придумать себе сценарии, когда вам будет полезно преобразовать ваш скрипт PS1 в EXE файл. С вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

Автор - Сёмин Иван

Добавить комментарий

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