일괄 처리 (BAT) 스크립트를 실행 파일 (EXE) 파일로 변환
당신이 그것에 도착하면 배치 파일과 실행 파일은 거의 같은 방식으로 작동합니다. 둘 다 단순히 Windows 용 명령어 및 로직 집합을 실행하는 것입니다. 그렇다면 기본적으로 동일한 작업을 수행하는 배치 파일을 실행 파일로 변환하려는 이유는 무엇입니까? 몇 가지 이유가 있습니다.
- 이식성 - EXE 파일에 배치 파일이 의존하는 추가 도구를 포함 할 수 있습니다..
- 보호 - EXE는 원본 스크립트가 실수로 수정되지 않도록 보호합니다..
- 편의성 - 실행 파일을 Windows 시작 메뉴 및 / 또는 Windows 7 작업 표시 줄에 고정 할 수 있습니다..
아래 스크립트를 사용하면 배치 파일에서 자신 만의 실행 파일을 쉽게 만들 수 있으며 필요한 내장 도구를 사용하여 완성 할 수 있습니다..
구성
이 스크립트는 7-Zip 고급 SFX (SelF eXtractor)를 사용하여 포함 된 도구로 배치 파일을 묶고 실행합니다. 따라서 다운로드 (링크는 마지막에 제공됨)하고 단일 디렉토리로 추출해야합니다..
일단 다운로드 한 모든 것이 있으면 스크립트에서 'PathTo7Zip'변수를 다운로드 한 위치로 설정하십시오.
스크립트
@ECHO OFF 에코 BAT 에코에서 EXE 작성 작성자 : Jason Faulkner 에코 SysadminGeek.com 에코. 에코. REM 사용법 : REM MakeExeFromBat BatFileToConvert [IncludeFile1] [IncludeFile2] [...] REM REM 필수 매개 변수 : REM BatFileToConvert REM 출력 Exe 파일을 생성하는 데 사용할 원본 배치 파일입니다. REM REM 선택적 매개 변수 : REM IncludeFile REM Exe 파일에 포함 할 추가 파일입니다. REM 배치 파일에서 사용하는 외부 도구를 포함하여 실행 컴퓨터에서 사용할 수 있습니다. SETLOCAL REM 설정 (따옴표 필요 없음) : SET PathTo7Zip = REM ----이 줄 아래에 아무것도 수정하지 마십시오. ---- SET OutputFile = "% ~ n1.exe"SET SourceFiles = "% TEMP % MakeEXE_files.txt"SET Config = "% TEMP % MakeEXE_config.txt"SET Source7ZFile = "% Temp % MakeEXE.7z"REM 기존 파일 제거 IF EXIST % OutputFile % DEL % OutputFile % REM 소스 아카이브 빌드 ECHO "% ~ dpnx1"> % SourceFiles % : AddInclude "% PathTo7Zip % 7za.exe"a % Source7ZFile % @ % SourceFiles % REM 빌드 구성 파일 ECHO "% ~ dpnx2"> % SourceFiles % SHIFT / 2 GOTO AddInclude : EndInclude "% PathTo7Zip % ; @! @! UTF-8을 설치하십시오! > % Config % ECHO RunProgram = "% ~ nx1">> % Config % ECHO;! @ InstallEnd @! >> % Config % REM 빌드 EXE COPY / B "% PathTo7Zip % 7zsd.sfx"+ % Config % + % Source7ZFile % % OutputFile % REM 정리 IF EXIST % SourceFiles % DEL % SourceFiles % IF 존재 설정 % 구성 % DEL % 구성 % IF 존재 % Source7Z 파일 % DEL % Source7Z 파일 % ENDLOCAL
결론
결과 파일이 원본 BAT 파일과 정확히 동일하게 실행되지만 이는 실행 가능한 일괄 변환이 아니라는 점에 유의해야합니다. 결과 파일은 EXE이지만 자체 압축 풀기 설치 프로그램에 사용하기위한 것입니다. 결과 EXE 파일을 실행하면 프로세스는 다음과 같이됩니다.
- EXE 파일의 내용은 temp 디렉토리로 추출됩니다..
- 스크립트가 생성 한 설정 파일을 읽습니다..
- EXE 파일에 포함 된 배치 파일은 새 명령 창에서 실행됩니다..
- 완료되면 임시 파일이 제거됩니다..
Windows Vista 및 새로운 OS에서는 스크립트를 실행 한 후 다음과 같은 메시지 상자가 나타날 수 있습니다. '이 프로그램이 올바르게 설치되었습니다'를 선택하면이 파일에 대한 메시지 상자가 앞으로 표시되지 않습니다..
EXE 파일이 새 창에서 시작되기 때문에 '>'char을 사용하여 출력을 기록하는 일반적인 방법은 예상대로 작동하지 않습니다. 출력을 로그하기 위해서는 소스 스크립트에서 이것을 기본적으로 처리해야합니다.
이러한 사소한 불편 함에도 불구하고 배치 파일을 실행 파일로 변환 할 수 있다는 것은 실제로 유용 할 수 있습니다.
모래밭
다운로드 Sysadmin Geek에서 BAT 스크립트에서 EXE 만들기
7-Zip 명령 줄 도구 다운로드
7-Zip Advanced 7zSD SFX 다운로드