Domača » kako » Pretvorite skript Batch (BAT) v datoteko Execable (EXE)

    Pretvorite skript Batch (BAT) v datoteko Execable (EXE)

    Ko se lotite, paketne datoteke in izvršljive datoteke delujejo na enak način. Oba sta preprosto niz navodil in logika za izvedbo operacijskega sistema Windows. Torej, zakaj bi želeli pretvoriti paketno datoteko v izvršljivo, če v bistvu delujejo enako? Tukaj je nekaj razlogov:

    • Prenosljivost - v datoteko EXE lahko vključite dodatna orodja, od katerih je odvisna paketna datoteka.
    • Zaščita - EXE zagotavlja zaščito za vaš izvorni skript, da se zagotovi, da ni nenamerno spremenjen.
    • Priročnost - Izvedljive datoteke je mogoče pripeti v meni Start in / ali Windows 7 Opravilna vrstica.

    S spodnjo skripto lahko preprosto zgradite svojo izvedljivo datoteko iz paketne datoteke, skupaj z vgrajenimi orodji in z njimi.

    Konfiguracija

    Ta skript izkorišča 7-Zip napredni SFX (SelF eXtractor) za združevanje in izvrševanje paketne datoteke z vsemi vključenimi orodji. Torej boste morali prenesti (povezave na koncu) in jih izvleči v en imenik.

    Ko ste vse prenesli, nastavite spremenljivko 'PathTo7Zip' v skripti na mesto, kjer so te datoteke prenesene.

    Scenarij

    @ECHO OFF ECHO Naredite EXE Iz BAT ECHO Avtor: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. REM Uporaba: REM MakeExeFromBat BatFileToConvert [IncludeFile1] [IncludeFile2] […] REM REM Zahtevani parametri: REM BatFileToConvert REM izvirna paketna datoteka za uporabo za izdelavo izhodne Exe datoteke. REM REM Neobvezni parametri: REM IncludeFile REM Dodatne datoteke za vključitev v datoteko Exe. REM Lahko vključite zunanja orodja, ki jih uporablja paketna datoteka, tako da so na voljo na izvršilnem stroju. SETLOCAL REM Konfiguracija (ni potrebnih narekovajev): SET PathTo7Zip = REM ---- Ne spreminjajte ničesar pod to vrstico ---- SET OutputFile = "% ~ n1.exe" SET SourceFiles = "SET% TEMP% MakeEXE_files.txt" SET Config = "% TEMP% MakeEXE_config.txt" SET Source7ZFile = "% Temp% MakeEXE.7z" REM Odstrani obstoječe datoteke IF EXIST% OutputFile% DEL% OutputFile% REM Ustvari izvorni arhiv ECHO "% ~ dpnx1">% SourceFiles%: AddInclude Če je % 2 ==  GOTO EndInclude ECHO "% ~ dpnx2" >>% SourceFiles% SHIFT / 2 GOTO AddInclude: EndInclude "% PathTo7Zip% 7za.exe"% Source7ZFile% @% SourceFiles% REM Konfiguracijska datoteka ECHO !! @ Namesti @! UTF-8! >% Config% ECHO RunProgram = "% ~ nx1" >>% Config% ECHO;! @ InstallEnd @! >>% Config% REM Build EXE COPY / B "% PathTo7Zip% 7zsd.sfx" +% Config% +% Source7ZFile%% OutputFile% REM Čiščenje IF EXIST% SourceFiles% DEL% SourceFiles% EXIST% Config% DEL% Config % IF EXIST% Source7ZFile% DEL% Source7ZFile% ENDLOCAL

    Zaključek

    Pomembno je opozoriti, da čeprav je datoteka, ki izhaja iz datoteke, popolnoma enaka datoteki izvorne BAT, to ni prava serijska izvedljiva konverzija. Nastala datoteka je EXE, vendar je namenjena uporabi za samoraztezne instalaterje. Ko izvedete nastalo datoteko EXE, se postopek zgodi takole:

    1. Vsebina datoteke EXE se ekstrahira v imenik temp.
    2. Konfiguracijska datoteka, ki jo ustvari skript, se bere.
    3. Paketna datoteka, vsebovana v datoteki EXE, se izvrši v novem oknu z ukazom.
    4. Ko končate, so začasne datoteke odstranjene.

    V operacijskem sistemu Windows Vista in novih operacijskih sistemih se po zagonu skripta prikaže naslednje okno s sporočili. Ko izberete »Ta program je nameščen pravilno«, v prihodnje za to datoteko ne bo prikazano sporočilo.

    Ker se EXE-datoteka zažene v novem oknu, tipičen način prijavljanja (z uporabo znaka »>«) ne bo deloval po pričakovanjih. Če želite prijaviti izhod, boste morali to izvirno obdelati v izvornem skriptu.

    Kljub tem manjšim nevšečnostim, lahko pretvorite paketno datoteko v izvršljivo datoteko.

    Povezave

    Download Naredite EXE iz BAT Script iz Sysadmin Geek

    Prenesite orodje 7-Zip Command Line Tool

    Prenesite 7-Zip Advanced 7zSD SFX