반응형
NSIS 란
NSIS(Nullsoft Scriptable Install System)는 Windows 환경에서 설치 프로그램을 만들 때 사용하는 도구로, 주로 프로그램을 쉽게 배포, 설치할 수 있도록 해주며, 스크립트 기반으로 작동하여 매우 유연한 설치 프로세스를 지원한다. 설치할 파일 설치 과정에서 할 작업들을 스크립트로 작성하여 배포 가능한 **설치 파일(.exe)**을 생성합니다. 따라서 스크립트에서 프로그램 설치, 바로가기 생성, 레지스트리 편집, 제거 기능까지 모두 처리가능하다.
2. NSIS 스크립트 구조
NSIS 스크립트는 크게 다음과 같은 구조로 나뉩니다:
- OutFile: 생성될 설치 프로그램 파일 지정
- InstallDir: 프로그램이 설치될 기본 경로 지정
- Section: 실제 설치 작업(파일 복사, 바로가기 생성 등) 정의
- Uninstall Section: 프로그램을 제거할 때 수행될 작업 정의
7일차에 이어서 내가 하려는 작업은,
- Python으로 만든 EXE 파일을 설치 프로그램에 포함,
- 설치할 때 관리자 권한을 요구하여 Program Files에 설치,
- 설치 후 자동으로 실행되는 프로그램을 설정하는 것이다
!define
NSIS 스크립트에서 상수를 정의하는 명령어로, 파일 경로나 이름, 특정 옵션 등을 한 번 정의해 놓고 스크립트 전체에서 일관성 있게, 여러번 쓰고 싶을 때 쓴다.
아래는 예시 코드
!define INSTALL_DIR "$PROGRAMFILES\MyApp"
!define EXE_FILE "MyApp.exe"
OutFile "MyAppInstaller.exe"
InstallDir "${INSTALL_DIR}"
Section "MainSection"
SetOutPath $INSTDIR
File "${EXE_FILE}"
CreateShortcut "$DESKTOP\MyApp.lnk" "$INSTDIR\${EXE_FILE}"
SectionEnd
- !define INSTALL_DIR "$PROGRAMFILES\MyApp": INSTALL_DIR라는 상수를 정의,설치 경로를 지정
- !define EXE_FILE "MyApp.exe": EXE_FILE 상수를 정의하고 실행 파일 이름 지정
- ${}: 상수 값을 참조할 때 , 사용 ,위 코드에 ${INSTALL_DIR}는 INSTALL_DIR에 정의된 경로
주석 ;
NSIS Script 에서는 다른 파일과달리 ;을 주석으로 사용한다.
아래 예시
; 주석1
OutFile "MyAppInstaller.exe" ; 주석2
반응형
'인턴 기록' 카테고리의 다른 글
[인턴] 인턴 45일차 [issued] NSIS 설치 여부 확인 프로세스 추가 (4) | 2024.10.16 |
---|---|
파일 탐색해서 파일 내용 바꾸기(python) (1) | 2024.09.25 |
관리자 권한 없이 프로그램 업데이트 코드 짜기 (C언어) (2) | 2024.09.20 |
[Windows API] 윈도우 사용자 이름 가져오기 (0) | 2024.09.20 |
라이센스 키 검증 변경 코드 컴파일하기 (0) | 2024.09.19 |