Teisendage partii (BAT) skript rakendatavaks (EXE) failiks
Kui sa selle juurde jõuad, töötavad partiifailid ja käivitatavad failid päris palju samamoodi. Mõlemad on lihtsalt Windowsi juhiste ja loogika komplekt. Nii et miks sa tahaksid teisendada pakettfaili käivitatavaks, kui nad sisuliselt sama tööd teevad? Siin on mõned põhjused:
- Kaasaskantavus - saate oma EXE-faili lisada täiendavaid tööriistu, mis sõltub pakettfailist.
- Kaitse - EXE kaitseb teie lähtekoodi skripti, et tagada selle tahtmatu muutmine.
- Mugavus - Täitmisfaile saab kinnitada Windowsi Start-menüüsse ja / või Windows 7 Task Bar-i.
Alltoodud skripti abil saate hõlpsasti ehitada oma käivitatava faili partiifailist, mis on varustatud manustatud tööriistadega.
Konfiguratsioon
See skript kasutab ära 7-Zip-i täiustatud SFX-i (SelF eXtractor), et komplekteerida ja teostada partiifaili mis tahes lisatud tööriistadega. Nii peate need alla laadima (lõpus olevad lingid) ja need väljavõtma ühte kataloogi.
Kui olete kõik alla laadinud, määrake skriptil muutuja "PathTo7Zip" asukohale, kus need failid alla laaditi.
Skript
@ECHO OFF ECHO Tee EXE BAT ECHO-st Kirjutas: Jason Faulkner ECHO SysadminGeek.com ECHO. ECHO. REM kasutamine: REM MakeExeFromBat BatFileToConvert [IncludeFile1] [IncludeFile2] […] REM REM nõutavad parameetrid: REM BatFileToConvert REM allika partii fail, mida kasutatakse väljund Exe faili loomiseks. REM REM Valikulised parameetrid: REM IncludeFile REM Täiendavad failid, mida lisada Exe faili. REM Saate lisada partiifailis kasutatavaid väliseid tööriistu, et need oleksid täidesaatvas masinas saadaval. SETLOCAL REM konfigureerimine (pole vaja tsitaate): SET PathTo7Zip = REM ---- Ärge muutke midagi selle real allpool ---- SET OutputFile = "% ~ n1.exe" SET SourceFiles = "% TEMP% MakeEXE_files.txt" SET Config = "% TEMP% MakeEXE_config.txt" SET Source7ZFile = "% Temp% MakeEXE.7z" REM Eemalda olemasolevad failid IF EXIST% OutputFile% DEL% Väljundfail% REM Ehita allika arhiiv ECHO "% ~ dpnx1">% SourceFiles%: AddInclude IF % 2 == GOTO EndInclude ECHO "% ~ dpnx2" >>% SourceFiles% SHIFT / 2 GOTO AddInclude: EndInclude "% PathTo7Zip% 7za.exe"% Source7ZFile% @% SourceFiles% REM Ehita konfigureerimisfail ECHO ;! @ Installige @! UTF-8! >% Config% ECHO RunProgram = "% ~ nx1" >>% Config% ECHO;! @ InstallEnd @! >>% Config% REM Build EXE COPY / B "% PathTo7Zip% 7zsd.sfx" +% Config% +% Source7ZFile%% Väljundfail% REM Puhastage IF EXIST% SourceFiles% DEL% SourceFiles% IF EXIST% Config% DEL% Config % IF EXIST% Source7ZFile% DEL% Source7ZFile% ENDLOCAL
Järeldus
Oluline on märkida, et kuigi saadud fail töötab täpselt sama allika BAT-failiga, ei ole see tegelik partii käivitatavale konversioonile. Saadud fail on EXE, kuid see on mõeldud kasutamiseks kaevandavate paigaldajate jaoks. Tulemusliku EXE-faili käivitamisel läheb protsess selliseks:
- EXE-faili sisu ekstraheeritakse temp-kataloogi.
- Skriptiga loodud konfiguratsioonifail loetakse.
- EXE-failis sisalduv partiifail täidetakse uues käsuaknas.
- Pärast lõpetamist eemaldatakse temp-failid.
Windows Vista ja uute operatsioonisüsteemide puhul võib pärast skripti käivitamist näha järgmist sõnumikasti. Pärast valiku „See programm õigesti installitud” valimist ei kuvata selle faili jaoks tulevikus sõnumikasti.
Kuna EXE-fail käivitub uues aknas, ei tööta tüüpiline väljundi kasutamise viis (kasutades ">" char ") ootuspäraselt. Väljundi sisselogimiseks peate seda algupärases skriptis käsitlema.
Hoolimata nendest väiksematest ebamugavustest võib partiifaili teisendatavaks muutmiseks olla tõesti kasulik.
Lingid
Lae Make EXE alates BAT Script alates Sysadmin Geek
Lae 7-Zip käsurea tööriist
Lae alla 7-Zip Advanced 7zSD SFX