Technical Anshu Главная › Руководства › Скрипт PowerShell для EXE
⚙️ PowerShell · PS2EXE

Преобразование сценария PowerShell в EXE

Сценарий PowerShell бесполезен для тех, кто никогда не открывает PowerShell. Конвертируйте .ps1 в один EXE-файл, который они могут дважды щелкнуть, используя бесплатный модуль PS2EXE - установка, команда, графический интерфейс, значок, версия и параметры администратора, а также честные пределы того, что на самом деле делает преобразование.

✍️ Technical Anshu⚙️ PowerShell Scripting🎧 Multi-Language Audio
Преобразование сценария PowerShell в EXE
🎧 Многоязычное аудио: В видеоплеере нажмите [Настройки] (⚙️) ➔ [Аудиодорожка], чтобы выбрать язык.

📑Главы

<ол класс="главы">
  • Почему файлом .ps1 сложно поделиться и что на самом деле решает преобразование его в EXE
  • Сначала протестируйте скрипт, пока он представляет собой обычный текстовый файл.
  • Установите бесплатный модуль PS2EXE из галереи PowerShell
  • Преобразование с помощью одной команды — Invoke-PS2EXE
  • То же преобразование через графический интерфейс Win-PS2EXE
  • Значок, сведения о версии и опция require-admin
  • Протестируйте готовый EXE-файл так, как это сделает пользователь
  • Честные ограничения: конвертированный EXE-файл не скрывает ваш скрипт.
  • 📋 Обзор и пошаговое руководство

    1

    Проверьте скрипт перед его преобразованием

    Никогда не конвертируйте непроверенный скрипт. Как только сценарий помещается в EXE-файл, консоль и сообщения об ошибках скрываются, поэтому поиск каждой ошибки становится медленным и болезненным. Запустите файл .ps1 от имени обычного пользователя и администратора, намеренно введите в него неверные данные и преобразуйте его только тогда, когда он каждый раз ведет себя одинаково.

    2

    Установите модуль PS2EXE

    PS2EXE — бесплатный модуль, опубликованный в галерее PowerShell. Вы устанавливаете его один раз, на компьютер, на котором собирается EXE - люди, получившие готовый EXE, ничего не устанавливают. Откройте PowerShell и запустите:

    PowerShell
    Install-Module -Name ps2exe

    В первый раз PowerShell может попросить вас доверять репозиторию PSGallery — ответьте «Да», если вы начали установку самостоятельно. Если установка модулей заблокирована политикой на вашем компьютере, разрешите их только для вашей учетной записи:

    PowerShell
    Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
    3

    Преобразование с помощью команды Invoke-PS2EXE

    Преобразование выполняется одной командой. Он называет входной скрипт и выходной файл — замените имена примеров собственным скриптом:

    PowerShell
    Invoke-PS2EXE -inputFile ".\DiskCleanup.ps1" -outputFile ".\DiskCleanup.exe"

    Запустите его из папки, в которой находится ваш скрипт, и рядом с файлом .ps1 появится EXE-файл. Вот и все преобразование: параметры из шага 5 добавляются в эту же строку, когда они вам нужны.

    4

    Или используйте графический интерфейс Win-PS2EXE

    Предпочитаете нажимать, а не печатать? Модуль также имеет графический интерфейс:

    PowerShell
    Win-PS2EXE

    Выберите входной файл, выберите выходной файл, отметьте нужные параметры и нажмите «Компилировать». Графический интерфейс создает точно такой же EXE-файл, что и командная строка — это тот же инструмент с формой сверху, поэтому используйте тот, который вам кажется более понятным.

    5

    Добавьте значок, информацию о версии и права администратора

    Если EXE-файл будет общим, присвойте ему идентификатор. Добавьте -iconFile ".\tool.ico" для пользовательского значка и -title, -product, -company и -version, чтобы заполнить вкладку «Сведения» свойств файла — именованные файлы выглядят более надежными для пользователей и сканеров, чем анонимные. Если сценарий меняет настройки системы, добавьте -requireAdmin, чтобы Windows запрашивала повышение прав при запуске EXE, а не сбой сценария на полпути. А если сценарий показывает свое собственное окно или форму, -noConsole останавливает появление черного окна консоли позади него, но никогда не используйте его для сценария, который задает вопросы пользователю в консоли, иначе EXE-файл будет выглядеть замороженным, пока он ожидает ввода, который никто не сможет ввести.

    6

    Протестируйте EXE-файл как настоящий пользователь

    Скопируйте EXE-файл в нейтральное место — на рабочий стол или в общую папку — и дважды щелкните его. Не судите об этом по окну PowerShell. Если ему необходимы права администратора, подтвердите, что появится приглашение UAC, и после него задание завершится. Затем сохраните пару вместе: скрипт и EXE в одной папке. При изменении сценария повторно запустите преобразование и замените EXE — никогда не передавайте устаревшую сборку.

    📌 Примечание. На целевом компьютере ничего не требуется устанавливать. EXE передает ваш сценарий движку PowerShell, который уже встроен в Windows — преобразование меняет упаковку, а не движок.
    7

    Честные ограничения: прочитайте, прежде чем поделиться

    ⚠️ Внимание: Преобразование сценария в EXE-файл не его скрывает, блокирует или шифрует. PS2EXE помещает ваш сценарий в небольшую программу .NET, и полный текст сценария передается внутри EXE в закодированном виде. Кодирование не есть шифрование: здесь нет ключа и нет замка. Когда EXE-файл запускается, он должен передать читаемый сценарий движку PowerShell, и все, что программа может прочитать во время выполнения, может прочитать и решительный человек. Считайте все внутри конвертированного EXE общедоступным.

    Этот один факт дает правило, которое обеспечивает вашу безопасность: никогда не указывайте секрет в конвертируемом скрипте - ни пароля администратора, ни пароля сервисной учетной записи, ни ключа API или токена, ни ключа Wi-Fi, который вы бы не напечатали на плакате. Если сценарию нужен пароль, он должен запросить его или прочитать из соответствующего хранилища учетных данных во время выполнения, никогда не храните его внутри файла.

    Еще одно честное ограничение: совершенно новый неподписанный EXE-файл, который декодирует и запускает текст внутри себя, имеет ту же форму, что и настоящая вредоносная программа, поэтому антивирус и SmartScreen могут пометить ваш преобразованный файл, даже если ваш скрипт чист. Честные исправления — это идентичность, а не уловки: заполните информацию о версии из шага 5, каждый раз распространяйте файл из одного и того же места и подписывайте его сертификатом подписи кода, если вы регулярно обмениваетесь инструментами. Никогда не отвечайте на предупреждение, предлагая пользователям отключить антивирус.

    🏷️Topic Search Variables & Keywords

    🔍 PowerShell 🔍 PS2EXE 🔍 Invoke-PS2EXE 🔍 Win-PS2EXE 🔍 PS1 to EXE 🔍 TechnicalAnshu 🔍 ITAdmin 🔍 Scripting 🔍 Convert PowerShell Script to EXE 🔍 PowerShell Script Converter 🔍 Install-Module ps2exe 🔍 Windows Admin Tools
    🎙️ Полная расшифровка — нажмите, чтобы развернуть

    Преобразуйте сценарий PowerShell (.ps1) в EXE-файл двойного щелчка с помощью бесплатного модуля PS2EXE: установка, команда Invoke-PS2EXE, графический интерфейс, значок, версия и параметры администратора, а также честные ограничения.

    Пошаговое руководство по устранению неполадок и решениям — преобразование сценария PowerShell в программное обеспечение. Экранная демонстрация от Технического Аншу.

    (расшифровка заканчивается здесь, на исходной странице)

    ❓ Часто задаваемые вопросы (на английском языке)

    Является ли это руководство абсолютно бесплатным?

    Да! Во всех руководствах и методах, продемонстрированных Tech Anshu, используются бесплатные легальные и образовательные ресурсы.

    Могут ли новички следовать этому руководству?

    Абсолютно! Каждый шаг демонстрируется на экране с подробными инструкциями, поэтому каждый может легко следовать им.

    Где я могу задать вопросы, если застряну?

    Оставьте комментарий прямо под видео на YouTube, и наше сообщество и технический специалист Anshu помогут вам.

    🚀 Посмотрите полное руководство на YouTube

    🚀 Посмотрите полное пошаговое видеоруководство на YouTube: https://www.youtube.com/watch?v=F2xMkbJi4wk

    Подпишитесь на техническую поддержку Anshu для ИТ-поддержки, устранения неполадок Windows и управления сервером.

    ▶️ Посмотреть полное видео
    Это руководство основано на видео Technical Anshu «Преобразование сценария PowerShell в EXE» • Застряли на каком-либо этапе? Спрашивайте в комментариях к видео — там вам помогут 🙏