[NSIS] 사용자 정의 ini 폼 (인스톨-옵션 파일) 추가하여 NSIS 제작 하기'ㅁ';
모르는 사람도 알아볼수 있도록 정리를 해놔야겠다-_-..
좀 할줄 아는 사람들은 차라리
NSIS 설치할때 같이 설치된 Examples 보고 분석하라
-_-.. Examples 예제중 Mathtest.nsi를 집중 사격해서 방법을 알아냈다.
----------------------------------------------------------------------
하.. 그럼 각설하고 시작이다.
(여기서는 시간관계상 폼 추가 방법만 설명합니다-_-/)
우선 새 폼하나를 디자인해 보자.
우선 사용자 정의폼 양식 하나를 만든다.
물론 기본적으로 빨간 부분은 클릭으로 만들수 있고.. 내용도 넣을수있다.
빼먹지 말아야 할점은..
우선 마우스로 파란부분(메인폼의 컨트롤이 없는 아무부분)을 클릭해주면
분홍색 부분에 메인폼의 속성이 나타난다.
저부분을 저거 비슷하게 수정해준다
(나중에 저걸 그대로 보게 될 것이다.)
저장은 MyForm.ini로 해두자..
폼을 넣을 스크립트를 하나 생성한다..
(바로위의 과정은 절친하고 이쁜 여성 엘프 마법사가 함께해주니.. 전 빠질렵니다..)
-_-;; 이미 있다면 건너 뛰어도 된다.
그럼 위와 같은 모양 비슷하게 생성이 되겠지요..
그럼 이제 만들었던 MyForm.ini를
실제 스크립트에서 사용해봅시다.
음.. 라이센스창 다음에 우리가 만든 MyForm.ini 띄우는걸 목표로 하죠..
첫번째과정.
파란박스안의 ; MUI end
이부분위에 아래의 두줄을 추가합니다.
주석은 빼겟습니다.
ReserveFile "MyForm.ini"
!insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
두번째과정
파란박스 표시된 다음부분 즉
;License page
!define MUI_LICENSEPAGE_CHECKBOX
!insertmacro MUI_PAGE_LICENSE "Licence.txt"
다음부분에 다음 한줄을 붙입니다.
Page custom SeeMyForm
※주황색 부분은 함수명이므로 기억해 두어야 합니다.
세, 네번째과정
파란색 박스부분 Un.~~~~~~ 앞쪽에
2번에서 지정한 함수명을 사용해서 함수를 아래와 같이 만든다.
Function SeeMyForm
FunctionEnd
이제 저 함수안에 창을 띄워주는 명령을 넣어야 한다.
!insertmacro MUI_INSTALLOPTIONS_DISPLAY_RETURN "MyForm.ini"
즉
Function SeeMyForm
!insertmacro MUI_INSTALLOPTIONS_DISPLAY_RETURN "MyForm.ini"
FunctionEnd
이렇게 만들어 주면된다.
자이제 마지막과정 이다.
우리가 방금만든 부분인 파란박스 부분 위에
다음을 추가한다.
Function .onInit
!insertmacro MUI_INSTALLOPTIONS_EXTRACT "MyForm.ini"
FunctionEnd
요 .onInit 함수는 초기에 프로그램을 실행하면 바로 꼭한번은 실행되는부분이다.
즉 여기에 코드를 넣으면 한번은 꼭 실행된다는소리다.
저코드는 압축되어있는 MyForm.ini 파일은 사용할수 없으니.
초기화때 미리 압축을 풀어줘야한다고 명시한 것이다.
이부분을 추가하지 않는것은
시험공부를 하는데 문제를 안풀어본거하고 같은 이치다-_-;
즉뻘짓-_-;
주석처리하고 실행해보면 알것이다. 추가 하여야 한다. 과정이다.
실행시모습
패스
이것다음부분에 우리가 만들어준 폼이 나와야 정상이다
나왔다.. 우리가만들어준데로 다 나왔습니다-_-/
패스-_-
패스-_-
--------------------------------------------------------
저도 처음엔 잘 모르는 부분이였지만 알고보면 참 쉬운 -_-;;
읽으시느라 수고하셨습니다.'ㅁ'!/
퍼가실땐 링크도 좀 가져가 주세요 ;ㅂ;/
http://hyung.tistory.com/