NSIS 다운로드 사용법 설치
페이지 정보

조회 3회 작성일 25-04-05 21:48
본문
NSIS란?NSIS는 NSIS 다운로드 사용법 설치 Nullsoft Sriptable Install System의 약자로 Windows 설치 프로그램을 생성하는 오픈 소스입니다. NSIS는 스크립트 기반이기 때문에 쉽게 사용할 수 있습니다. 설치뿐만 아니라 제거, 시스템 설정, 파일 압축 및 해제 등의 추가 기능도 사용할 수 있습니다. 가장 큰 특징은 플러그인 사용입니다. 이미 많은 플러그인들이 나와있으며 사용자가 직접 제작할 수도 있습니다.NSIS 주요 기능Small overhead sizeNSIS는 효율적으로 만들어졌습니다. 타 설치 프로그램에 비해 작은 오버헤드를 가집니다.Compatible with all major Windows versionsWindows 95, Windows 98, Windows ME, Windows NT, Windows 2000, Windows XP Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008R2, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012R2, Windows Server 2016, Windows 10, Windows 11 등 대부분의 Windows 플랫폼에 호환되는 단일 설치 프로그램을 만들 수 있습니다.Unique compression methods세 가지 통합 압축 방법(ZLib, BZip2, LZMA) 중 하나를 선택할 수 있습니다. 특히, LZMA 압축은 다른 일반적인 압축 방법보다 개선된 결과를 제공합니다.Script basedNSIS는 스크립트 기반입니다. 이 스크립트는 설치 작업을 수행하는데 많은 도움이 되는 명령어들을 포함하고 있습니다. 스크립트를 사용하여 사용자 정의 로직, 버전 체크 등의 기능들을 쉽게 추가할 수 있습니다.Multiple languages in one installer하나의 NSIS 다운로드 사용법 설치 인스톨러에 다국어 인터페이스를 지원할 수 있습니다. 40개국 이상의 번역이 이미 포함되어 있습니다. 또한 자신만의 언어 파일을 만들어 사용할 수 있습니다.Many features and checks for the target system스크립트는 타겟 시스템을 사용할 수 있도록 명령어를 제공합니다. 폴더 생성, 레지스트리 편집, 텍스트 및 이진 파일 수정 뿐만 아니라 환경 변수 수정, 시스템 재부팅 등의 명령을 내릴 수 있습니다. 추가 플러그인을 사용하면 Windows API를 직접 호출할 수 있습니다.Custom dialogs and interfaces사용자 정의 마법사 페이지를 생성하여 사용자 입력을 얻거나 구성 옵션을 통합할 수 있습니다. NSIS는 클래식, 모던 마법사 인터페이스를 포함하고 있습니다. 또한, 사용자 정의 인터페이스를 새로 만드는 것도 가능합니다.Plug-in systemNSIS는 설치 프로그램과 통신할 수 있는 플러그인을 사용하여 기능을 확장할 수 있습니다. 플러그인은 C, C++, Delphi 등의 언어로 작성할 수 있으며 설치 작업을 수행하거나 설치 프로그램 인터페이스를 확장하는데 사용할 수 있습니다. 단 한 줄의 스크립트 코드로 플러그인을 사용할 수 있습니다. 플러그인도 설치되는 데이터처럼 압축할 수 있으며 제공된 기능을 사용할 경우에만 포함됩니다.Support for web installation, file patchingNSIS 배포판에는 웹에서 파일을 다운로드하고, 인터넷 연결을 구성하고, 기존 파일을 패치하는 등의 작업을 수행할 수 있는 플러그인이 포함되어 있습니다.Project integration, different releases and NSIS 다운로드 사용법 설치 automatic buildsNSIS 컴파일러에는 강력한 전처리기 기능이 있습니다. 여러 프로젝트를 단일 인스톨러로 통합하거나 자동으로 인스톨러 빌드를 생성할 수 있습니다.Easy and human readable file formatsNSIS 스크립트 형식과 인터페이스 대화 상자에 사용되는 형식은 쉽고 문서화가 잘 되어 있습니다. 또한, 원하는 편집기로 파일을 쉽게 편집할 수 있습니다. 이를 통해 자동 스크립트 생성도 가능합니다.NSIS 설치하기Main Page NSIS (Nullsoft Scriptable Install System) is a professional open source system to create Windows installers. It is designed to be as small and flexible as possible and is therefore very suitable for internet distribution. Being a user's first experience with your product, a stable and reli...nsis.sourceforge.io위 사이트에 접속하면 NSIS 설치 프로그램을 다운로드 받을 수 있습니다.[그림 1] NSIS 설치 프로그램 다운로드NSIS 편집기NSIS 스크립트는 단순 텍스트 파일입니다. 그렇기 때문에 어떠한 텍스트 편집기로도 스크립트를 작성할 수 있습니다. NSIS는 스크립트 오류가 발생했을 때, 줄 번호를 통해 오류의 위치를 알려주므로 줄 번호를 표시하는 편집기 사용을 권장합니다. 또한, 문법 강조를 지원하는 편집기를 사용하면 스크립트 작성이 더욱 편리해집니다. NSIS 편집기로 사용하는 대표적인 두 편집기로 Visual Studio Code와 HM NIS Edit이 있습니다. 이 글에서는 HM NIS Edit 편집기를 사용하겠습니다. NSIS 다운로드 사용법 설치 HM NIS Edit 편집기는 아래의 사이트에서 설치할 수 있습니다.HM NIS EDIT: A Free NSIS Editor/IDE Home | Features | Screenshot | Download | Development | Revision history | Project page | Thanks HM NIS Edit is the best Editor/IDE for Nullsoft Scriptable Install System (NSIS). Its useful for experts and beginners in the creation of Setup progra...[그림 2] HM NIS Edit 설치 프로그램 다운로드NSIS 스크립트 구조Installer Attributes인스톨러 속성은 인스톨러의 동작과 UI를 설정합니다. 이 속성들을 사용해 설치 중 표시되는 문구나 설치 유형의 개수를 변경할 수 있습니다. 대부분의 이러한 속성들은 초기화만 가능하며 실행 중에는 변경할 수 없습니다. Pages수동 설치 프로그램은 사용자가 직접 인스톨러를 설정할 수 있도록 하는 마법사 페이지를 제공합니다. 인스톨러 제작자는 Page 명령어를 사용하 사용자에게 어떤 페이지들이 표시될지를 설정할 수 있습니다. Page 명령어를 통해 설정할 수 있는 페이지 목록들은 아래와 같습니다.인스톨러 실행 시, 위에서 Page 명령어를 사용한 페이지들이 순서대로 표시됩니다. 언인스톨러 실행 시, 위에서 UninstPage 명령어를 사용한 페이지들이 순서대로 표시됩니다.Sections인스톨러에는 사용자가 설치할 수 있는 여러 구성 요들이 존재하는 것이 일반적입니다. 예를 들어, NSIS 배포 인스톨러에서는 추가 도구, 플러그인, 예제 등을 선택할 수 있습니다. NSIS 다운로드 사용법 설치 각 구성 요소마다 자기만의 코드를 가지고 있습니다. 만약, 사용자가 특정 구성 요소를 선택하면 인스톨러는 선택된 구성 요소의 코드를 실행시켜 줍니다. 스크립트 상에서 해당 코드는 Sections에 정의되어 있습니다. 각 Section은 Components 페이지에서 하나의 Component에 해당합니다. Section의 이름은 Component의 이름으로 표시되며 Component가 선택되면 Section의 코드가 실행됩니다. 하나의 Section만으로도 인스톨러를 빌드할 수 있지만, Components 페이지를 사용하고 사용자가 Component를 선택할 수 있도록 하려면 둘 이상의 Section을 사용해야 합니다. Section에서 사용되는 코드는 인스톨러 속성 명령어와는 많이 다릅니다. Section 내의 코드는 실행 중에 실행됩니다. 이러한 코드들은 파일 추출, 레지스크리, INI 파일 또는 일반 파일들을 읽고 쓰기, 디렉토리 생성, 바로가기 생성 등을 수행할 수 있습니다.FunctionsFunctions도 Sections처럼 스크립트 코드를 포함할 수 있습니다. Sections와 Functions의 차이점은 호출되는 방식입니다. Function에는 사용자 정의 함수와 콜백 함수 두 종류가 있습니다. 사용자 정의 함수는 Section 또는 Function 내에서 Call 명령어를 통해서 사용자에 의해 호출됩니다. Function 내 코드가 실행된 후, 인스톨러는 Function 내에서 설치를 중지시키지 않았다면 계속해서 Call 명령어 이후의 명령어를 실행시킵니다. 콜백 함수는 인스톨러 시작과 같은 특정 정의된 이벤트 발생 시, 인스톨러에 의해서 호출되는 함수입니다. 예를 들어, 사용자가 인스톨러를 시작할 때에 어떠한 작업을 하고 싶다면 NSIS 다운로드 사용법 설치 '.onInit'이라는 함수를 정의하면 됩니다. NSIS 컴파일러는 '.onInit'이라는 이름으로 콜백 함수로써 함수를 인식합니다. 그리고 인스톨러가 시작될 때, 이 함수를 호출해줍니다. '.onInit'함수 정의 예는 아래와 같습니다.NSIS 스크립트 작성논리적 코드 구조조건부 코드 실행 또는 반복문 내 코드 실행은 StrCmp, IntCmp, IfErrors, Goto 등을 사용하여 수행할 수 있습니다. 이 방법보다 더 쉬운 방법도 있습니다. 바로 LogicLib를 사용하는 것입니다. LogicLib는 복잡한 논리적 코드 구조를 더 단순하게 만들어줍니다. LogicLib의 문법은 일반적인 프로그래밍 언어와 비슷합니다. 아래는 LogicLib를 사용하지 않는 경우와 사용한 경우의 차이의 예입니다.LogicLib을 사용한 코드가 훨씬 가독성이 높은 것을 확인할 수 있습니다. LogicLib을 사용하면 아래의 예처럼 swich문 또한 사용 가능합니다.아래의 예처럼 이중 조건문도 지원합니다.LogicLib은 labels과 relative jumps의 필요성을 제거함으로 label 이름 충돌을 방지하고, 스크립트를 수정할 때마다 relative jump의 오프셋을 수정할 필요성을 제거해줍니다.변수Var 명령어를 사용해 사용자 정의 변수를 선언할 수 있습니다. 변수는 전역적이며 Section 또는 Function 내에서 사용할 수 있습니다. 아래는 변수를 선언하고 사용하는 예입니다.추가로 임시 저장용으로 사용 가능한 스택이 존재합니다. 스택에는 Push, Pop 명령어로 접근할 수 있습니다. Push 명령어로 스택에 값을 추가할 수 있고, Pop 명령어로 스택에서 값을 제거하고 변수에 그 값을 저장할 수 있습니다.스크립트 실행사용자가 인스톨러 또는 NSIS 다운로드 사용법 설치 언인스톨러를 실행하면 스크립트에 정의된 순서대로 페이지들이 화면에 표시됩니다. instfiles 페이지에 도달했을 때, 선택된 Component에 해당하는 Section들이 스크립트에 정의된 순서대로 실행됩니다. 만약에 Components 페이지를 화면에 표시하지 않는 경우, 모든 Section들이 실행됩니다. Section 내의 코드 외에도 콜백 함수의 코드도 있습니다. 만약 콜백 함수가 정의되었다면 Section 코드 실행 전에 콜백 함수가 실행됩니다.컴파일러 명령어컴파일러 명령어는 컴파일 타임에 실행됩니다. 조건부 컴파일, 헤더 파일 포함, 응용 프로그램 실행, 작업 디렉토리 변경 등에 사용할 수 있습니다. 가장 일반적인 사용법은 define입니다. define은 컴파일 타임 상수를 만들 때 사용할 수 있습니다. 아래는 제품 버전을 define 하는 예입니다.또 다른 사용법으로 macro가 있습니다. macro는 컴파일 타임에 코드를 삽입할 때 사용할 수 있습니다. macro를 사용하면 일반적인 코드를 한 번만 작성하고 약간의 수정으로 여러 번 사용할 수 있습니다. 아래는 macro 사용 예입니다.컴파일러스크립트 작성 후, 인스톨러 생성을 위해서 해야할 작업은 컴파일입니다. MakeNSIS.exe는 NSIS 컴파일러입니다. 컴파일러는 스크립트를 읽고 구문 분석을 한 후, 인스톨러를 생성합니다. 스크립트를 컴파일하려면 '.nsi'파일을 오른쪽 마우스 클릭합니다. 'Compile NSIS Script'를 선택합니다. MakeNSISW가 실행됩니다. 이는 NSIS 컴파일러 인터페이스로 MakeNSIS를 호출하여 스크립트를 컴파일합니다. MakeNSISW는 MakeNSIS 결과를 받아서 화면에 출력합니다. 스크립트를 컴파일하는 또 다른 방법으로는 makensis.exe를 이용하는 NSIS 다운로드 사용법 설치 방법이 있습니다. 컴파일러는 스크립트를 확안한 후, 경고 또는 에러를 전달해줍니다. 만약에 에러가 발생한다면 컴파일러는 컴파일을 중지시키고 줄 번호를 포함한 에러 메시지를 표시해줍니다.Plug-insNSIS는 스크립트로부터 호출되는 플러그인을 지원합니다. 플러그인은 C, C++, Delphi 등의 언어로 제작된 DLL입니다. 플러그인을 사용하여 다양한 코드를 스크립트에서 사용할 수 있습니다. 플러그인 사용법은 다음과 같습니다.NSIS는 NSIS 디렉토리 아래의 Plugins 디렉토리에서 플러그인을 탐색합니다. 그리고 사용할 수 있는 플러그인의 함수들을 모두 나열합니다. 또한 '!addplugindir'을 사용하면 NSIS에게 다른 경로에서 플러그인을 탐색하도록 명령할 수 있습니다. NSIS 배포판에는 이미 많은 플러그인들이 포함되어 있습니다. 자기 자신만의 플러그인을 만들어서 사용하는 것도 가능합니다.참고Previous | Contents | Next Chapter 2: Tutorial: The Basics Introduction Script Files Scripting structure Installer Attributes Pages Sections Functions Working with Scripts Script Execution Compiler Commands Compiler Modern UI Plug-ins More Chapter 2: Tutorial: The Basics 2.1 Introduction Most softwa...nsis.sourceforge.ioMain Page NSIS (Nullsoft Scriptable Install System) is a professional open source system to create Windows installers. It is designed to be as small and flexible as possible and is therefore very suitable for internet distribution. Being a user's first experience with your product, a stable and NSIS 다운로드 사용법 설치 reli...nsis.sourceforge.io
- 이전글씨알리스정품구별법 x77.kr 25.04.05
- 다음글20대씨알리스 XXA.KR 25.04.05