티스토리 뷰
1. 설치파일 추가
OutFile “Setup.exe” – 컴파일 후 생성될 설치파일 명
InstallDir “$PROGRAMFILES\myprog” – 프로그램이 설치될 경로
SetOutPath “$INSTDIR” – 파일을 쓸 경로 설정
SetOverwrite on – 파일을 쓸때 덮어쓰기 허용
File “file1.txt” – 설치할 파일 명
File “file2.txt” – 설치할 파일명
스크립트 파일과(.nsi) 설치할 파일들은 같은 경로에 있는 상태에서 컴파일 했다. 경로가 다를경우 File “file1.txt” 에서 컴파일 에러가 발생하며 “파일경로\file1.txt” 로 수정해야 한다.
2. 설치경로 변경 ON/OFF
!insertmacro MUI_PAGE_DIRECTORY – 구문 추가시 사용자가 프로그램이 설치될 경로를 지정 할 수있게 해준다. 위 스크립트에서는 사용자가 설치 경로를 변경하지 못하도록주석 처리 했다.
!define MUI_FINISHPAGE_RUN “$INSTDIR\notepad.exe” – 구문 추가시 설치 완료시 프로그램을 바로 실행할지 선택 할 수있도록 해준다.
3. 필수구성요소 설치 여부 확인
.net framework 4.0 미설치 이면 .net framework 다운로드 페이지로 이동 후 설치 진행을 멈추는 기능추가. net framework 설치 여부는 여러가지 방법이 있으며 그 중 net framework 4.0 폴더 유/무에 따라 확인하는 방법을 사용하였다.
!define NETVersion “4.0.30319” – .net 버전 명
IfFileExists “$WINDIR\Microsoft.NET\Framework\v${NETVersion}” NETFrameworkInstalled 0
MessageBox MB_ICONINFORMATION|MB_OK “다운로드 페이지로 이동”
execshell open “http://www.microsoft.com/ko-KR/download/details.aspx?id=17718” – .net framework 4.0 미 설치( 다운로드 페이지로 이동 )
Quit – .net framework 4.0 미 설치( 설치 프로그램 종료)
NETFrameworkInstalled: – .net framework 4.0 설치( 위 2가지 구문은 실행하지 않고 진행)
4. dll 등록 및 해제 프로그램 사용중인지 체크
설치 파일을 쓰기전에 현재 설치하려는 프로그램이 실행 중인지 체크하는 구문 추가. dll 등록이 필요시 dll 등록 프로그램 삭제시 dll 해제 구문추가.
ClearErrors – 에러팝업창을 보여주지 않을경우 사용
RegDll “emptyDll.dll” – DLL 등록
UnRegDll “emptyDll.dll” – DLL 해제
5. 시작메뉴 추가 및 바탕화면에 바로가기 아이콘 추가
Section -AdditionalIcons
CreateDirectory “$SMPROGRAMS\NSIS노트패드”
CreateShortCut “$SMPROGRAMS\NSIS노트패드\Uninstall.lnk” “$INSTDIR\uninst.exe”
CreateShortCut “$SMPROGRAMS\NSIS노트패드\NSIS노트패드.lnk” “$INSTDIR\notepad.exe” “” “$INSTDIR\notepad.ico”
CreateShortCut “$DESKTOP\NSIS노트패드.lnk” “$INSTDIR\notepad.exe” “” “$INSTDIR\notepad.ico”
SectionEnd
6. 그 외 옵션들
SetCompressor /FINAL /SOLID lzma – 설치할 파일들을 압축할때 사용 설치파일의 용량을 줄일 수 있다.
;SilentInstall silent – (설치시 진행창을 보여주지 않고 설치해야할 경우 추가)
;SilentUnInstall silent – (삭제시 진행창을 보여주지 않고 설치해야할 경우 추가)
'언어 > NSIS' 카테고리의 다른 글
[NSIS] reference (0) | 2016.09.01 |
---|---|
[NSIS] 프로세스 강제 종료 (0) | 2016.09.01 |
[NSIS] 특정파일이 확인 (0) | 2016.09.01 |
- Total
- Today
- Yesterday
- 생성
- 연결
- Controller
- synchronized
- 클래스
- js
- 어노테이션
- Server
- Default
- Class
- spring
- 하기
- 안드로이드
- iNT
- Delete
- java
- jdbc
- 사용
- 종류
- UTF-8
- Android
- 음식
- mysql
- 라이브러리
- mybatis
- nsis
- 스프링
- 자바
- Create
- jsp
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |