
기존 install 프로그램을 한번 NSIS라는 언어로 만들어 봤어요
NSIS로 만들면 압축률이 좋아가지고 기존 인스톨프로그램보다 정확히 1메가 바이트 적고요..
그외에도 NSIS로 만들면 옵션 설치 등 거의 다 가능하더라고요..
그래서 배우는겸 한번 만들어봤어요..
그리고 좋은점이 아직 이기능은 배우지 않았는데 업데이트되는 기능도 있더라고요 조금 어렵지만..
설치파일 아이콘
처음에 뜨는 스플래시 이미지
환영 페이지
원래 라이센스 페이지
디렉토리 페이지
설치과정을 보여주는 페이지
마지막 설치완료 페이지를 없애고 새창을 뛰어서 코딩 홈페이지로 가게끔 설정 했어요
설치과정은
먼저 압축력이뛰어난 7zip으로 파일을 압축하고
설치할때 7zip을 풀어야되니까 7za.exe와 KOI,7z설치 그다음 압축을 경로에 풀고
부산물인 7za.exe ,KOI.7z삭제
이렇게 됩니다.
다운로드 주소 http://me2.do/5Vg2zfOM
NSIS 코드 소스
; Script generated by the HM NIS Edit Script Wizard. ; HM NIS Edit Wizard helper defines !define PRODUCT_NAME "KOI 채점기 ver" !define PRODUCT_VERSION "2014.01.02" !define PRODUCT_PUBLISHER "codingfun" !define PRODUCT_WEB_SITE "http://codingfun.net" !define MUI_WELCOMEFINISHPAGE_BITMAP "Welcomes.bmp" !define MUI_HEADERIMAGE !define MUI_HEADERIMAGE_BITMAP "Headers.bmp" !define MUI_PAGE_HEADER_TEXT "설치전에 읽어볼것" !define MUI_PAGE_HEADER_SUBTEXT "KOI 채점기 ver 2014.01.02(을)를 설치하시기 전에 사용 설명내용을 읽어주시기 바랍니다.." !define MUI_LICENSEPAGE_BUTTON "다음 >" !define MUI_LICENSEPAGE_TEXT_TOP "KOI 채점기 설명내용의 아래 부분을 보시려면 [Page Down] 키를 눌러 주세요." !define MUI_LICENSEPAGE_TEXT_BOTTOM "KOI 채점기 설명내용을 다 읽으셨다면 '다음'을 눌러 주세요." !define MUI_DIRECTORYPAGE_TEXT_TOP "KOI 채점기 ver 2014.01.02(을)를 다음 폴더에 설치할 예정입니다. 경로는 변경하지 않는것을 권장합니다. 설치를 시작하시려면 '설치' 버튼을 눌러 주세요." SetCompressor lzma ; MUI 1.67 compatible ------ !include "MUI.nsh" ; MUI Settings !define MUI_ABORTWARNING !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico" ; Welcome page !insertmacro MUI_PAGE_WELCOME ; License page !insertmacro MUI_PAGE_LICENSE "LICENSE.txt" ; Directory page !insertmacro MUI_PAGE_DIRECTORY ; Instfiles page !insertmacro MUI_PAGE_INSTFILES ; Finish page !insertmacro MUI_PAGE_FINISH ; Language files !insertmacro MUI_LANGUAGE "Korean" ; Reserve files !insertmacro MUI_RESERVEFILE_INSTALLOPTIONS ; MUI end ------ Function .onInit SetOutPath $TEMP File /oname=spltmp.bmp "spi.bmp" ; optional advsplash::show 1900 1000 850 -1 $TEMP\spltmp Pop $0 ; $0 has '1' if the user closed the splash screen early, ; '0' if everything closed normally, and '-1' if some error occurred. Delete $TEMP\spltmp.bmp FunctionEnd Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" OutFile "KOI 채점기 ver 2014.01.02_SETUP.exe" InstallDir "C:\KOI\" ShowInstDetails show Section "MainSection" SEC01 SetOutPath "$INSTDIR" SetOverwrite on File "7za.exe" File "KOI.7z" Nsis7z::Extract "KOI.7z" Delete "$INSTDIR\7za.exe" Delete "$INSTDIR\KOI.7z" ExecShell "open" " http://codingfun.net/usage " quit SectionEnd BrandingText "[Codingfun.net]"
오~ 이런게 있었네요~ 좋은 프로그램 알려줘서 고마워요~
혹시 설치 폴더를 고정할 수 있나요?
그리고 설치가 완료된 후에 자동으로 특정 명령어를 실행할 수 있나요?