확장팩 팁과 노하우 게시판

전체보기

모바일 상단 메뉴

본문 페이지

[애드온] [nsi] 설치 애드온 만들기 - 기초편 -

장군라작스2
댓글: 6 개
조회: 9804
추천: 39
2012-09-11 20:55:04

설치 애드온 만들기 - 기초편 -

 

-- 1개의 애드온이나 그룹 이하의 설치 애드온을 만들고자 할때

 

설치 애드온 설치 화면

 

 

 

 

 

 

설치 애드온을 만들기 위해서는 항상 바이러스 체크를 함으로써 타 유저가 안전하게 사용할 수 있도록 해야합니다.

 

설치 애드온을 받았을때는 사용전에 바이러스 테스트를 한 후에 게임을 실행 하는것이 좋습니다.

 

설치 애드온 만들기


다운로드 :  

nsis ; 중급 이상 사용자는 해당 사이트에서 다운로드

http://nsis.sourceforge.net/

http://nsis.sourceforge.net/Download

 

HM NIS Edit ; 중급 이상 사용자는 해당 사이트에서 다운로드

http://hmne.sourceforge.net/index.php#Download

 


HM NIS Edit ; 초급 이상 사용자는 해당사이트에서 다운로드 ( 한글화 버전 받기 )

http://jgh0721.tistory.com/attachment/dk39.exe


-- 목록 --


test.nsi ; 스크립트가 있는 데이터  ;(초급 사용자는 HM NIS Edit, Venis IX 로 Open 사용 권장)

wow.ico ; 설치 애드온이 만들어 지고 나서 생기는 설치 아이콘 (개인에 맞게 설정 : 48 X 48)

wow_welcome.bmp ; 설치 애드온의 설치 화면의 일부 화면 (개인에 맞게 설정 / 권장 크기 : 200 X 300, 164 X 314)

License.txt ; 설치 애드온의 설치 화면에서 나오는 라이센스 항목 (개인에 맞게 설정)

MONKTEST 5.0.4_a ; 설치 애드온 예제


 

- 설명 -



test.nsi 기본 데이터 


# script by MONK

## 배포할 프로그램의 정보
!define PRODUCT_NAME "MONK" ; 설치 애드온 이름
!define PRODUCT_VERSION "5.0.4_a" ;프로그램의 버전
!define PRODUCT_PUBLISHER "MONK" ;프로그램을 배포하는 사람
!define PRODUCT_DIR_ROOT_REGKEY "HKLM" ;프로그램의 설치 정보를 넣을 레지스트리의 최상위 경로
!define PRODUCT_DIR_REGKEY "SoftwareTEST" ;프로그램의 설치 정보를 넣을 레지스트리의 하위 경로
## 설치 프로그램의 아이콘과 배경 삽입
!define MUI_ICON "wow.ico" ;설치 프로그램의 아이콘
!define MUI_WELCOMEFINISHPAGE_BITMAP "wow_welcome.bmp" ;환영 페이지의 배경
!define MUI_WELCOMEFINISHPAGE_BITMAP_NOSTRETCH ;환영 페이지의 배경을 늘리지 않음
## 설치 프로그램의 정보 설정
OutFile "MONKTEST ${PRODUCT_VERSION}.exe" ;설치 프로그램의 이름


test.nsi 개인에 맞게 수정한 데이터 


# script by RUI ; 스크립트를 만든 사람 (개인에 맞게 변경, 예제 MONK ->RUI)

## 배포할 프로그램의 정보
!define PRODUCT_NAME "RUI" ; 설치 애드온 이름 (개인에 맞게 변경, 예제 MONK -> RUI) 
!define PRODUCT_VERSION "5.0.5_a1" ;프로그램의 버전 (개인에 맞게 변경, 예제 5.0.4a -> 5.0.5_a1) 
!define PRODUCT_PUBLISHER "RUI" ;프로그램을 배포하는 사람 (변경, 예제 MONK -> RUI)
!define PRODUCT_DIR_ROOT_REGKEY "HKLM" ;프로그램의 설치 정보를 넣을 레지스트리의 최상위 경로
!define PRODUCT_DIR_REGKEY "SoftwareRUITEST"  ;(개인에 맞게 변경, 예제 TEST -> RUITEST)
## 설치 프로그램의 아이콘과 배경 삽입
!define MUI_ICON "wow.ico" ;설치 프로그램의 아이콘
!define MUI_WELCOMEFINISHPAGE_BITMAP "wow_welcome.bmp" ;환영 페이지의 배경
!define MUI_WELCOMEFINISHPAGE_BITMAP_NOSTRETCH ;환영 페이지의 배경을 늘리지 않음
## 설치 프로그램의 정보 설정
OutFile "RUITEST ${PRODUCT_VERSION}.exe" ;설치 프로그램의 이름 (변경, 예제 MONKTEST -> RUITEST) 


 

-- Section과 MUI_DESCRIPTION_TEXT 수정 --

 

Section의 개별 선택 


Section /o "Ara_Broker_Guild_Friends" add01_SEC ; /o 옵션은 체크 되어 있는 항목을 기본적으로 체크가 해제 된 상태에서 선택하게 해주는 옵션

SetOutPath "$INSTDIRInterfaceAddOnsAra_Broker_Guild_Friends" 
; 설치후에 애드온이 있는 위치

; 파일 복사
File /a /r "E:WoWMONKAddOnsAra_Broker_Guild_Friends" ; 설치전에 애드온이 있는 위치
SectionEnd


 

Section과  MUI_DESCRIPTION_TEXT의 목록은 동일 해야 합니다. ; 예) add01_SEC

 

기본 


!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN ; 애드온을 설명 해주는 옵션
!insertmacro MUI_DESCRIPTION_TEXT ${add01_SEC} "길드원과 친구 목록 "
!insertmacro MUI_FUNCTION_DESCRIPTION_END

 

-- 애드온을 추가 하고자 할때 --

 

예제)

 

Section의 개별 선택  


Section /o "Ara_Broker_Guild_Friends" add01_SEC ; /o 옵션은 체크 되어 있는 항목을 기본적으로 체크가 해제 된 상태에서 선택하게 해주는 옵션

SetOutPath "$INSTDIRInterfaceAddOnsAra_Broker_Guild_Friends" ; 설치후에 애드온이 있는 위치

; 파일 복사
File /a /r "E:WoWMONKAddOnsAra_Broker_Guild_Friends" ; 설치전에 애드온이 있는 위치
SectionEnd


Section /o "GTFO" add02_SEC  ; 추가 섹션

SetOutPath "$INSTDIRInterfaceAddOnsGTFO"

; 파일 복사
File /a /r "E:WoWMONKAddOnsGTFO" 
SectionEnd

-----------------------------------------------------------------------------------------------------

 

Section과  MUI_DESCRIPTION_TEXT의 목록은 동일 해야 합니다. ; 예) add01_SEC

 

기본 -------------------------------------------------------------------------------------------------

 

!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN ; 애드온을 설명 해주는 옵션
!insertmacro MUI_DESCRIPTION_TEXT ${add01_SEC} "길드원과 친구 목록 "
!insertmacro MUI_FUNCTION_DESCRIPTION_END

!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN ; 추가 !insertmacro

!insertmacro MUI_DESCRIPTION_TEXT ${add02_SEC} "바닥 경고 "
!insertmacro MUI_FUNCTION_DESCRIPTION_END



* 개별의 Section의 순서가 add01_SEC 이였다면, 다음은 개인에 맞게 Gtfo_SEC로 하여도 무방합니다. 

* 그룹의 Section의 순서가 add01_SEC 이였다면, 다음은 add02_SEC 순서로 하는것이 좋습니다.

 

- 컴파일 방법 -


Venis IX -> Tools -> Comfile

HM NIS Edit -> NSIS(N) -> 스크립트 컴파일(C) -> Ctrl + 9
HM NIS Edit -> NSIS(N) -> 컴파일 및 실행(O) -> Shift + 9

해당파일.nsi -> 마우스 오른쪽 버튼 클릭 -> Compile NSIS Script -> 클릭


 


-- 스크립트 --



# script by 부서진 두개골

# script by MONK

## 배포할 프로그램의 정보
!define PRODUCT_NAME "MONK" ; 설치 애드온 이름
!define PRODUCT_VERSION "5.0.4_a" ;프로그램의 버전
!define PRODUCT_PUBLISHER "MONK" ;프로그램을 배포하는 사람
!define PRODUCT_DIR_ROOT_REGKEY "HKLM" ;프로그램의 설치 정보를 넣을 레지스트리의 최상위 경로
!define PRODUCT_DIR_REGKEY "SoftwareTEST" ;프로그램의 설치 정보를 넣을 레지스트리의 하위 경로
## 설치 프로그램의 아이콘과 배경 삽입
!define MUI_ICON "wow.ico" ;설치 프로그램의 아이콘
!define MUI_WELCOMEFINISHPAGE_BITMAP "wow_welcome.bmp" ;환영 페이지의 배경
!define MUI_WELCOMEFINISHPAGE_BITMAP_NOSTRETCH ;환영 페이지의 배경을 늘리지 않음
## 설치 프로그램의 정보 설정
OutFile "MONKTEST ${PRODUCT_VERSION}.exe" ;설치 프로그램의 이름
InstallDirRegKey HKLM "SOFTWAREBlizzard EntertainmentWorld of Warcraft" "InstallPath" ;프로그램을 설치할 경로를 와우의 레지스트리에서 가져오기
InstallDir $INSTDIR ;프로그램을 설치할 경로 설정
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" ;설치 프로그램의 상위에 주로 나올 제목
BrandingText /TRIMRIGHT "${PRODUCT_NAME}" ;설치 프로그램의 하부에 가로줄과 함께 나올 텍스트


# MUI 1.67 compatible : 매크로 삽입 ------------------------------------------------------------
!include "MUI.nsh"
!include "WordFunc.nsh"
!include "FileFunc.nsh"


# 페이지 삽입 ------------------------------------------------------------
;!define MUI_ABORTWARNING ;설치/제거 도중 취소하면 경고

!insertmacro MUI_PAGE_WELCOME ;환영 페이지
!insertmacro MUI_PAGE_LICENSE "License.txt" ;라이센스 페이지 (본인에 맞게 설정)

!insertmacro MUI_PAGE_COMPONENTS ;설치 항목 선택 페이지
!insertmacro MUI_PAGE_DIRECTORY ;설치할 경로 선택 페이지
!insertmacro MUI_PAGE_INSTFILES ;설치 페이지
;!define MUI_FINISHPAGE_NOAUTOCLOSE ;인스톨후 마지막페이지로 바로 넘어가지 않음
!define MUI_FINISHPAGE_RUN "$INSTDIRLauncher.exe" ;마지막페이지에서 실행할 프로그램
!define MUI_FINISHPAGE_RUN_TEXT "월드오브워크래프트 실행하기" ;마지막페이지에서 실행할 프로그램의 설명
!insertmacro MUI_PAGE_FINISH ;마지막 페이지


# 언어 파일 설정 ------------------------------------------------------------
; 본 항목은 반드시 페이지 삽입 보다 뒤에 와야 합니다.
;!insertmacro MUI_LANGUAGE "English"
!insertmacro MUI_LANGUAGE "Korean"

 

Section /o "Ara_Broker_Guild_Friends" Add01_SEC ; /o 옵션는 체크 되어 있는 항목을 기본적으로 체크가 해제 된 상태에서 선택 하게 해주는 옵션

 SetOutPath "$INSTDIRInterfaceAddOnsAra_Broker_Guild_Friends"

; 파일 복사
  File /a /r "E:WoWTESTAddOnsAra_Broker_Guild_Friends" 
 SectionEnd

 


; Section descriptions
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
 !insertmacro MUI_DESCRIPTION_TEXT ${Add01_SEC} "길드원과 친구 목록"
!insertmacro MUI_FUNCTION_DESCRIPTION_END


 


Lv62 장군라작스2

모바일 게시판 하단버튼

댓글

새로고침
새로고침

모바일 게시판 하단버튼

지금 뜨는 인벤

더보기+

모바일 게시판 리스트

모바일 게시판 하단버튼

글쓰기

모바일 게시판 페이징

최근 HOT한 콘텐츠

  • 와우
  • 게임
  • IT
  • 유머
  • 연예
AD