batch 배치 파일을 exe 실행 파일로 변환하기 (윈도우즈 기본 기능 : iexpress.exe) - gui, cli 둘다 지원
윈도우즈의 iexpress.exe 파일을 이용하면 배치 파일을 exe 실행 파일로 변환 시킬 수 있습니다.
파일을 찾아 더블클릭하여 GUI 환경에서 셋팅도 가능하며,
아래와 같이 convert.bat 파일을 만들어 cmd 화면에서 cli 명령으로 변환도 가능합니다.
본래는 패키지 만드는 도구이지만 이렇게 하나의 배치파일도 exe 파일로 변환이 가능합니다.
여기에서는 command line 에서 변환하는 방법을 안내 드립니다.
변환 도구를 아래와 같이 작성합니다.
1. 명령 프롬프트에서 사용시
convert.bat
;@echo off ; rem https://github.com/npocmaka/batch.scripts/edit/master/hybrids/iexpress/bat2exeIEXP.bat ;if "%~2" equ "" ( ; echo usage: %~nx0 batFile.bat target.Exe ;) ;set "target.exe=%__cd__%%~2" ;set "batch_file=%~f1" ;set "bat_name=%~nx1" ;set "bat_dir=%~dp1" ;copy /y "%~f0" "%temp%\2exe.sed" >nul ;(echo()>>"%temp%\2exe.sed" ;(echo(AppLaunched=cmd.exe /c "%bat_name%")>>"%temp%\2exe.sed" ;(echo(TargetName=%target.exe%)>>"%temp%\2exe.sed" ;(echo(FILE0="%bat_name%")>>"%temp%\2exe.sed" ;(echo([SourceFiles])>>"%temp%\2exe.sed" ;(echo(SourceFiles0=%bat_dir%)>>"%temp%\2exe.sed" ;(echo([SourceFiles0])>>"%temp%\2exe.sed" ;(echo(%%FILE0%%=)>>"%temp%\2exe.sed" ;iexpress /n /q /m %temp%\2exe.sed ;del /q /f "%temp%\2exe.sed" ;exit /b 0 [Version] Class=IEXPRESS SEDVersion=3 [Options] PackagePurpose=InstallApp ShowInstallProgramWindow=0 HideExtractAnimation=1 UseLongFileName=1 InsideCompressed=0 CAB_FixedSize=0 CAB_ResvCodeSigning=0 RebootMode=N InstallPrompt=%InstallPrompt% DisplayLicense=%DisplayLicense% FinishMessage=%FinishMessage% TargetName=%TargetName% FriendlyName=%FriendlyName% AppLaunched=%AppLaunched% PostInstallCmd=%PostInstallCmd% AdminQuietInstCmd=%AdminQuietInstCmd% UserQuietInstCmd=%UserQuietInstCmd% SourceFiles=SourceFiles [Strings] InstallPrompt= DisplayLicense= FinishMessage= FriendlyName=- PostInstallCmd=<None> AdminQuietInstCmd= UserQuietInstCmd= |
그리고 변환이 필요한 bat 파일이 있다면 (예: run.bat) 아래 예시와 같이 명령을 수행하면 됩니다.
c:\> convert.bat run.bat run.exe
2. GUI 환경에서 사용시
순차적으로 실행 합니다.
시작 > 실행 > iexpress 입력 후 엔터
Create new Self Extraction Directive file.
Extract files and run an installation command
타이틀 이름 적기
No prompt
Do not display a license
Package file
> 압축할 파일을 찾기 (bat 파일)
Install Program to Launch
> exe 실행시 압축 해제 후 사용할 기본 명령어
> setup.bat 파일을 변환한다면 아래와 같이 입력
> cmd.exe /c "setup.bat"
Default (recommended)
No message
Package name and Options
> (exe 변환 파일 저장 위치) 찾아보기 누른 뒤 경로와 생성할 exe 파일명 지정
No restart
Save Self Extraction Directive (SED) file (중요치않다)
Create package
끝.
* 참고로 파일명은 setup.bat > setup.exe 으로 했을때 잘 실행되지만
이상하게 다른 이름을 사용하면 실행이 되지 않는다.
(예: applypatch.bat > applypatch.exe)
* exe 로 실행시 %~dp0 이나 %~s0 의 기본 변수는 사용되지 못함에 주의
'윈도우즈 > OS 일반' 카테고리의 다른 글
배치파일 실행시 명령 프롬프트 창 보이지 않게 하기 (0) | 2020.06.07 |
---|---|
명령 프롬프트에서 alert 메세지 띄우기 (0) | 2020.05.29 |
윈도우10 USB 부팅 디스크 만들기(우분투에서) (0) | 2019.06.04 |
원격으로 윈도우 서버 패스워드 변경하기 (0) | 2019.05.23 |
Wowza streaming 삭제 (0) | 2018.01.04 |