Napisałeś działający plik wsadowy lub skrypt PowerShell i chcesz przekazać go komuś jako jeden plik .exe: jeden plik do dwukrotnego kliknięcia, bez pytań „otwórz za pomocą” i bez konsoli pełnej poleceń.
Nie potrzebujesz do tego „konwertera BAT na EXE” online. Windows ma już narzędzie, które to robi, a PowerShell ma darmowy, otwarty moduł, który robi to samo dla skryptów .ps1. Oba działają na Twoim komputerze, więc plik powstaje wyłącznie z Twojego skryptu i niczego więcej.
Spieszysz się?
- Plik wsadowy (.bat / .cmd): naciśnij Win + R, wpisz
iexpressi spakuj plik z poleceniem instalacjicmd /c yourscript.bat. - PowerShell (.ps1): uruchom raz
Install-Module ps2exe -Scope CurrentUser, a potemInvoke-ps2exe .\script.ps1 .\script.exe. - Python (.py):
pip install pyinstaller, a potempyinstaller --onefile script.py. - Chcesz ikonę? Weź ją z dowolnego programu za pomocą darmowego Icon Extractor.
Metoda 1: BAT na EXE za pomocą IExpress (wbudowanego w Windows)
IExpress jest częścią Windows od dziesięcioleci. Powstał do tworzenia małych instalatorów: pakuje pliki w jeden EXE, przy uruchomieniu rozpakowuje je do folderu tymczasowego i wykonuje polecenie. Tym poleceniem może być Twój plik wsadowy.
- Naciśnij Win + R, wpisz
iexpressi naciśnij Enter. - Wybierz Create new Self Extraction Directive file i kliknij Next.
- Wybierz Extract files and run an installation command.
- Nadaj pakietowi tytuł (pojawia się na pasku tytułu każdego komunikatu).
- Monit potwierdzenia: No prompt. Umowa licencyjna: Do not display a license.
- Packaged files: kliknij Add i wybierz swój plik
.bat(oraz pliki, których potrzebuje). - Install Program: wpisz
cmd /c yourscript.batsamodzielnie, z nazwą swojego pliku. Samo wybranie pliku .bat z listy często nic nie daje, bo IExpress nie uruchamia plików wsadowych bezpośrednio. - Show window: Default, aby widzieć konsolę, lub Hidden, aby działać w ukryciu.
- Komunikat końcowy: No message.
- Package name: wybierz, gdzie zapisać EXE, i zaznacz Hide File Extracting Progress Animation from User oraz Store files using Long File Name inside Package.
- Restart: No restart. Zapisz plik SED, jeśli zechcesz później zbudować go ponownie, a potem kliknij Next, aby utworzyć EXE.
Warto wiedzieć: skrypt działa z folderu tymczasowego, a nie z miejsca, w którym leży EXE. Wiersz taki jak copy data.txt backup\ szuka w tym folderze tymczasowym. Używaj pełnych ścieżek (%USERPROFILE%\Documents\data.txt) dla plików, które skrypt czyta lub zapisuje poza pakietem.
Metoda 2: PowerShell na EXE za pomocą ps2exe
ps2exe to darmowy moduł PowerShell o otwartym kodzie, opublikowany w oficjalnej PowerShell Gallery. Opakowuje skrypt .ps1 w mały EXE, który go uruchamia, i pozwala ustawić ikonę, wersję oraz to, czy pojawi się okno konsoli.
- Otwórz PowerShell (uprawnienia administratora nie są potrzebne) i raz zainstaluj moduł:
Jeśli PowerShell zapyta o instalację dostawcy NuGet lub zaufanie repozytorium PSGallery, odpowiedz Y.Install-Module ps2exe -Scope CurrentUser - Przejdź do folderu ze skryptem i zbuduj EXE:
Invoke-ps2exe .\script.ps1 .\script.exe - Przydatne opcje:
-noConsole: bez okna konsoli (dla skryptów wyświetlających formularze lub okna komunikatów).-iconFile .\app.ico: ikona pliku EXE.-requireAdmin: przy uruchomieniu prosi o uprawnienia administratora.-title "My Tool" -version "1.0.0": to, co Windows pokazuje we właściwościach pliku.
Wolisz okno zamiast wiersza poleceń? Po zainstalowaniu modułu uruchom Win-PS2EXE: to to samo narzędzie z małym formularzem.
Inne skrypty: Python, AutoHotkey, Node.js
- Python:
pyinstaller --onefile script.pytworzy jeden plik EXE w folderzedist. Dodaj--noconsoledla programu z oknem. - AutoHotkey: instalator zawiera Ahk2Exe: kliknij plik .ahk prawym przyciskiem i wybierz Compile Script.
- Node.js: nowsze wersje (20 i wyższe) potrafią zbudować pojedynczą aplikację wykonywalną (zobacz stronę „Single executable applications” w dokumentacji Node.js).
Czy naprawdę potrzebujesz pliku EXE?
Często wystarczy prostsze rozwiązanie:
- Skrót. Kliknij plik .bat prawym przyciskiem myszy, wybierz Send to → Desktop (create shortcut), a potem nadaj skrótowi ikonę w jego właściwościach. Dwukrotne kliknięcie uruchamia skrypt.
- Zaplanowane zadanie. Jeśli skrypt ma działać codziennie lub przy logowaniu, Harmonogram zadań uruchamia plik .bat lub .ps1 bezpośrednio.
- Sam skrypt. Jeśli osoby, którym go udostępniasz, używają Windows, plik .bat i tak uruchamia się dwukrotnym kliknięciem.
Trzy rzeczy, o których milczy każdy „konwerter BAT na EXE”
- Twój kod nie jest ukryty. Te narzędzia przechowują skrypt w pliku EXE, często jako zwykły tekst. Każdy może go odczytać, na przykład naszym String Extractor, który wyświetla czytelny tekst z dowolnego pliku. Nigdy nie umieszczaj w nim haseł, tokenów ani kluczy.
- Antywirusy mogą zgłaszać alarm. Złośliwe oprogramowanie używa tych samych opakowań, więc Windows Defender i SmartScreen mogą ostrzegać przed zupełnie nieszkodliwym EXE ze skryptem. Pomaga podpisanie go certyfikatem do podpisywania kodu, a Microsoft przyjmuje zgłoszenia fałszywych alarmów dla plików, które sam utworzyłeś.
- EXE ze strony internetowej to plik, którego nie możesz sprawdzić. Konwerter online zwraca plik zbudowany na serwerze, o którym nic nie wiesz. Dlatego zamiast go oferować, objaśniamy wbudowany sposób: z IExpress lub ps2exe wiesz dokładnie, co trafiło do pliku.
Masz EXE od kogoś innego i chcesz wiedzieć, co uruchamia, zanim go otworzysz? Przeczytaj, jak przeanalizować EXE bez uruchamiania.
Darmowe narzędzia do reszty pracy
Wszystkie działają w Twojej przeglądarce: Twoje pliki nie są nigdzie wysyłane.