NSIS 는 Setup 파일을 만들기에 좋은 도구임은 틀림없는데요.
스크립트를 익혀야하는 단점이 있습니다.
하지만 특별한 처리 필요없이 파일들을 간단하게 말아서 구성 하는경우에는
HM NIS Edit 의 스크립트 작성 마법사를 이용해 Setup 파일을 구성할 수 있습니다.
먼저 NSIS 를 설치하고
다음에 HM NIS Edit 를 설치 합니다.
https://sourceforge.net/projects/hmne/
(HM NIS Edit 를 설치할때 오류가 뜰때가 있는데 무시하고 진행하면 됩니다.)
HM NIS Edit 를 실행합니다.
스크립트 작성 마법사 버튼을 클릭
다음
프로그램정보를 입력합니다.
설치 아이콘이 있다면 선택 합니다.(프로그램 추가/제거에 해당 아이콘이 표시됩니다.)
만들어질 설치파일 이름을 입력합니다. (변경이 필요없다면 그대로 둡니다.)
설치 언어를 선택합니다.
GUI 는 설치시 화면에 보여질 UI 모양인데 Modern,Classic 이 있습니다.
압축형태를 선택합니다. (zlib,bzip2,LZMA,사용안함)
프로그램 기본 디렉토리를 설정하고 Licence 파일을 선택합니다.
(메모장으로 하나 만들어 넣으면 됩니다. 한글안됨 - 방법을 찾으면 공유하겠습니다.)
기본적으로 아래처럼 나오는데 우측의 내용을 지우고 새로 넣으면 됩니다.
좌측은 그룹으로 그룹별로 선택 설치할 수 있도록 합니다.
(제가 처리할 파일은 두개의 파일만 있어서 두개만 넣었습니다.)
프로그램 시작 메뉴 명을 입력하고 바로가기는 기본적으로 추가되 있으나
또 추가를 원하는 경우 '바로 가기 추가' 버튼을 클릭해 추가할 수 있습니다.
설치후 실행될 파일을 선택합니다.
제거시 사용할 문구를 입력합니다.
([NAME] 에는 프로그램 이름이 자동으로 들어갑니다.)
모두 체크하고 완료!
(스크립가 저장될 파일(nsi) 의 명을 입력하는 창이 나옴)
스크립트가 아래처럼 작성이 되면서 컴파일 되고 Setup 파일이 만들어집니다.
Setup 만들기 완료!
실행해 봅니다.
설치 확인
1. 바탕화면 바로가기 아이콘 확인
2. 프로그램 및 기능 목록 확인
3. 메뉴 확인
4. 제거 확인
아래는 자동으로 만들어진 전체 스크립트
; Script generated by the HM NIS Edit Script Wizard.
; HM NIS Edit Wizard helper defines !define PRODUCT_NAME "BoardPanPro" !define PRODUCT_VERSION "1.0" !define PRODUCT_PUBLISHER "keisoft" !define PRODUCT_WEB_SITE "http://keisoft.kr" !define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\BoardPanPro.exe" !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" !define PRODUCT_UNINST_ROOT_KEY "HKLM"
; MUI 1.67 compatible ------ !include "MUI.nsh"
; MUI Settings !define MUI_ABORTWARNING !define MUI_ICON "bp.ico" !define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico"
; Welcome page !insertmacro MUI_PAGE_WELCOME ; License page !insertmacro MUI_PAGE_LICENSE "licence.txt" ; Directory page !insertmacro MUI_PAGE_DIRECTORY ; Instfiles page !insertmacro MUI_PAGE_INSTFILES ; Finish page !define MUI_FINISHPAGE_RUN "$INSTDIR\BoardPanPro.exe" !insertmacro MUI_PAGE_FINISH
; Uninstaller pages !insertmacro MUI_UNPAGE_INSTFILES
; Language files !insertmacro MUI_LANGUAGE "Korean"
; MUI end ------
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" OutFile "Setup.exe" InstallDir "$PROGRAMFILES\BoardPanPro" InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" "" ShowInstDetails show ShowUnInstDetails show
Section "MainSection" SEC01 SetOutPath "$INSTDIR" SetOverwrite on File "BoardPanPro.exe" CreateDirectory "$SMPROGRAMS\BoardPanPro" CreateShortCut "$SMPROGRAMS\BoardPanPro\BoardPanPro.lnk" "$INSTDIR\BoardPanPro.exe" CreateShortCut "$DESKTOP\BoardPanPro.lnk" "$INSTDIR\BoardPanPro.exe" File "BoardPanPro.exe.config" SectionEnd
Section -AdditionalIcons WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" CreateShortCut "$SMPROGRAMS\BoardPanPro\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url" CreateShortCut "$SMPROGRAMS\BoardPanPro\Uninstall.lnk" "$INSTDIR\uninst.exe" SectionEnd
Section -Post WriteUninstaller "$INSTDIR\uninst.exe" WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\BoardPanPro.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\BoardPanPro.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" SectionEnd
Function un.onUninstSuccess HideWindow MessageBox MB_ICONINFORMATION|MB_OK "$(^Name)는(은) 완전히 제거되었습니다." FunctionEnd
Function un.onInit MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "$(^Name)을(를) 제거하시겠습니까?" IDYES +2 Abort FunctionEnd
Section Uninstall Delete "$INSTDIR\${PRODUCT_NAME}.url" Delete "$INSTDIR\uninst.exe" Delete "$INSTDIR\BoardPanPro.exe.config" Delete "$INSTDIR\BoardPanPro.exe"
Delete "$SMPROGRAMS\BoardPanPro\Uninstall.lnk" Delete "$SMPROGRAMS\BoardPanPro\Website.lnk" Delete "$DESKTOP\BoardPanPro.lnk" Delete "$SMPROGRAMS\BoardPanPro\BoardPanPro.lnk"
RMDir "$SMPROGRAMS\BoardPanPro" RMDir "$INSTDIR"
DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}" SetAutoClose true SectionEnd
|