인스톨쉴드9 데브스튜디오 사용 매뉴얼 (VB6에서 개발후 배포프로그램 만들기) ㈜ IGCLUB 황은성 주임
참고 프로그램 Rtc.rexsoft.co.kr 의 인스톨쉴드
설치 프로그램이 할 수 있는 요소들 구성요소 선택 (설치유형 선택) 설치될 때 프로그램에 대한 설명 바로가기 선택 (바탕화면, 시작프로그램) 시작프로그램에 들어가서 시작시 프로그램 실행 연결프로그램 등록 (특정한 확장자를 선택하면 특정한 프로그램이 실행되도록 설정) COM, COM+ , DCOM 파일 등록 (일반사용자가 설정하기는 번거롭고 불가능하다고 봄) -> 설치, 제거의 자동화가 필요함 프로그램 추가 제거에서 제거가능 프로그래
Windows Installer 란 MS에서 만든 프로그램 배포를 위한 Windows 서비스 1.2 버전을 거쳐서 현재 2.0 까지 나와있음 오피스 2000, 오피스 2003 등을 설치할 때 보이는 형식의 배포프로그램이 Windows Installer
Windows Installer 의 장점 자체복구 (dll,실행파일이 지워졌을 경우 자체복구함) 구성요소로 나누어 설치 롤백 (설치가 중단되었을때 설치이전상태로 되돌리는 것) 단일파일로 만드는 것 지원 머지 모듈 (설치시에 자주 사용하는 프로그램을 그룹화하여 설치시에 체크만 하여 쉽게 포함하도록 함) 사용자가 접근할 수 있는 정보 (프로그램 추가제거에서 자세한 사항클릭시 프로그램에 대한 정보를 보여줄 수 있음) 완벽한 설치 해제
프로젝트의 구성 <- 설치하고자 하는 제품자체 <- 설치유형 (표준설치,사용자 정의설치,최소설치) <- 특정기능별 로 분류한것임
예시
설치과정의 예 워드프로세서 : 프로젝트 이름 표준,최소,사용자정의 : 설치유형 (Setup Type) 기능선택 : Feature
프로그램 추가/제거시 설정 Description – General Information – Project Properties – Mainternance Experience Standard :
프로그램 추가/제거시 설정 2
Product GUID GUID – 인스톨쉴드 설치프로그램 패키지의 고유한 값. 응용프로그램의 중복설치시 이 값으로 구분함 , 프로그램이 Upgrade 되었을때는 같은 값을 가져야 함? – 확인필요)
Feature 1 Visible 속성 – 설치시 구성요소들을 보일것인지 유무를 설정
shared file 과 sharedselfregfile
파일추가 1 (정적연결) Project Assistant 에서 Application Files 에서 파일이나 폴더별로 선택 가능 일반 파일만 추가가능하고 Shared file 이나 selfregfile 은 추가할 수 없음 이런식으로 파일이나 폴더를 추가하는 것을 정적연결 (static link) 라고 함
파일추가 2 (정적연결) Organization > Setup Design > 해당 Feature 에서 특성에 맞추어 추가한다. TARGETDIRFiles : 프로그램이 설치되는곳 (실행할프로그램.exe) TARGETDIRSelfRegFiles : 프로그램이 설치되는곳에 자동설치파일 (fpSpr60.ocx) WINSYSDIRSharedFile : 시스템폴더에 설치되는 공유파일 (vb6ko.dll) WINSYSDIRSharedSelfRegFiles : 시스템폴더에 설치되는 자동설치파일smartui2.ocx)
파일추가 3 (동적연결) 다음과 같은 순서로 동적연결을 한다 . Application Data > File and Folders에서 아래쪽 탐색창에서 트리부분에 오른쪽 클릭을 하여 Show Components and Subfolders 에 체크가 되도록 한다. File Linking 을 선택하고 Dynamic Links 를 선택하고 해당 폴더를 선택한다. 동적연결인 파일은 작은 박스모양의 아이콘으로 보여진다. 동적연결이 추가되면 앞에서 설명한 Organization > Setup Design > 해당 Feature 에서 정적연결된 파일들이 보이지 않는다. 동적 연결을 어떤 이유로 사용되는지, 사용될때 왜 위외같이 변하는지는 파악하지 못하였다.
바로가기 System Configuration > Shortcuts 에서 추가함 별도의 icon 파일을 지정해 줄 수 있음 Run 속성 : 프로그램을 실행할때 사이즈를 정해줌 Arguments : 실행시 인자를 지정함
Objects / Merge module Application Data > Objects 에서 선택 Merge Module : 자주 사용되는 objects/파일을 그룹으로 만들어 놓은 것 Objects : 상단의 리스트에서 하단의 Feature 로 드래그앤드롭하면 추가됨
Dependancy Scanner 사용 Perform Static Scanning : 설치할 프로그램들이 각자 필요로 하는 dll 이나 ocx 파일들이 있는지 검사하는 기능 Perform Dynamic Scanning : 직접 프로그램을 실행하면서 필요로 하는 dll 이나 ocx 파일들을 검사하는 기능 Import Visual Basic 6.0 Project : Visual Basic Project 파일을 선택해서 해당 프로젝트에서 필요로 하는 dll 이나 ocx 파일을 검사하는 기능 Filter Files : 검사시에 시스템에서 사용되는 시스템 파일들은 빼놓기 위한 항목 또는 userscan.ini 파일에 있는 파일들은 제외하고 검사하게 됨 인스톨한후 프로그램에 제대로 설치가 되지 않은다면 위의 기능을 사용하면 상당부분 해결될 것으로 생각됨 Visual basic 실행파일의 경우에는 microsoft visual basic virtual machine (merge module) 을 추가해 주어야 한다는데 확인해 보아야 함 강좌에서는 적지 않은 수의 dll 및 exe 기본적으로 있는 것이라며 파일을 선택하지 않았는데 어떤 것이 그런 것인가에 대한 정보가 없음
Release (배포) Project Assistant 를 이용하면 체크만으로 쉽게 Release 를 할 수 있음 작은 용량으로 나누어야 하는 상황에서만 Installation designer 에서 release를 추가하여 사용하면 됨 Project Assistant 의 Build Installation 선택 Single Execution : 단일 실행파일 Internet : 웹을 통한 배포파일 CD-ROM : 일반적인 형태의 배포파일
Release (배포) 2 Internet을 선택하면 아래와 같이 접속을 위한 웹페이지도 기본적으로 생성됨 Internet을 선택할 경우에는 Verisign 에서 인증키를 받아서 추가하여야함
레지스트리 추가 System Configuration > Registry 에서 추가 윗부분은 자신의 컴퓨터 아랫부분은 설치할곳의 컴퓨터 사용할 레지스트리부분을 위에서 아래로 드래그앤 드롭하면 됨 Reg파일을 사용할 때는 Import reg file 을 선택 New > Key 를 선택하여 직접 입력가능
기타 추가가능 아래의 기능은 처음에 프로젝트를 만들 때 Windows Installer 로 선택하면 설정하는 메뉴가 보이게 된다. Ini 파일 (ini files) 환경변수 (environment variant) ODBC 설정 (ODBC)
Ini 파일 (ini files) Add로 생성하거나 기존의 파일을 import 할 수 있다. 파일이 선택된 후 오른쪽에 컴포넌트를 선택할 수 있다. target으로 설치될 경로를 선택할 수 있다. action 에서 값을 덮어쓸지, 새로쓸지등을 File : Section : [URL] , [SEND] Keyword : NISZONE, HELP, IE Data Value : http://nprotect......
환경변수 환경변수를 등록할 수 있다. Placement : 값이 있을경우 덮어쓸지, 새로쓸지 선택 Type : User로 하면 특정유저에게만 유효, System 으로 하면 모든 유저든지 유효
ODBC 설정 ODBC설정을 할 수 있다. 해당되는 트리를 선택한 후 Property값을 입력하면 된다. Access 같이 폴더경로가 필요한 값은 절대경로로 하지 말고 상대경로로 지정한다.
프로그램과 파일 연결 편집기등을 설치한다고 할 때 특정 파일은 특정프로그램으로 열리게 설정할 수 있음 Components 에서 해당 실행파일의 Advanced Settings 의 File Types 에서Extensions 에서 New Extension 선택해서 하나추가 새로 추가한 부분에서 ProgId의 값을 넣음 (ex : memo) , 추가하면 ProgIds 에 memo 라고 생성됨 ProgIds 의 memo 를 선택해서 아이콘과 설명등을 입력한다. 추가했던 Extension 부분을 확장자명 으로 정확히 수정 한다 (ex : txt) 해당파일을 열고 싶으면 Open의 Argument 값세팅
COM Server 설치 Application Data > Files and Folder > 하단의 트리에서 오른쪽클릭하면 Launch Component Wizard 선택 Wizard 창에서 두번째 선택하고 다음 COM Server 선택하고 다음 설치될 경로 선택 설치할 파일 선택 (Extract … 선택) 특정 등록이 필요한 dll이나 ocx경우 잘 안될때에는 component wizard로 추가하면 잘 된다고 함..
NT Service Application Data > Files and Folder > 하단의 트리에서 오른쪽클릭하면 Launch Component Wizard 선택 Wizard 창에서 두번째 선택하고 다음 NT Service 선택하고 다음 Services 에서 서비스 이름 선택 하고 다음 인자값이 필요한 경우에는 Arguments 에서 입력 기타 사항을 입력하고 마침 기존에 돌아가고 있는 서비스를 수정하고 싶을때는 CONTROL NT SERVICE 선택
FONT 설치 Application Data > Files and Folder > 하단의 트리에서 오른쪽클릭하면 Launch Component Wizard 선택 Wizard 창에서 두번째 선택하고 다음 Fonts 선택하고 다음 자신의 시스템에서 설치되 있는 폰트 선택 [FONTSFOLDER] 로 복사가 됨
Merge module 새로 만들기 자주 사용되는 기능이나 컴포넌트를 Merge module 로 만들어 놓고 추가만 해서 사용하면 추가 Create new project > Merge Module Project 를 선택한다. Mergemodule Property 에서 값을 세팅 Targerdir 에서 설치될 곳 선택 Files and Folders 에서 파일들을 추가 빌드하면 msm이라는 머지모듈 생성 Tools > Option > File locations 에 보면 머지모듈이 있는 경로가 나오는데 이곳에 msm 파일을 복사하고 재실행하면 됨
스플래시 이미지 (프로그램 시작시 이미지) Behavior and Logic > Support Files > Splash Screen 언어에 독립적일때와 아닐때 구분할 수 있음 이미지 추가하면 프로그램 시작시 해당 그림파일이 보임 BMP 파일만 추가할 수 있음
백그라운드 타이틀 넣기 Dialog의 백그라운드 이미지를 넣기 위해서 다음과 같이 한다. 동영상 강좌를 참고하도록한다. 이미지들을 추가한 후 스크립트를 직접 넣어주어야 한다.
Direct Table MSI 에서 사용하는 정보들을 가지고 있음. Windows Installer에서 사용하는 파일이기 때문에 이곳의 내용을 수정하면 직접적으로 내용을 수정할 수 있음
스킨 변경하기 Skin Customization Kit 을 사용하면됨 Skin.ini 파일에 속성값을 넣어주고 각 부분을 구성하는 gif파일을 만들어서 실행파일을 실행하면 됨 C:\skinkit\Bin>CreateSkinFile.exe C:\skinkit\Samples\Sandstone C:\skinkit\Sample s\Sandstone.skin Done. 도움말 참고
Vb6ko.dll 추가하기 Windows shared file 추가하기에서 추가해줌 비주얼베이직을 사용해서 작업한 파일은 vb6ko.dll 을 사용하여 동작되게 되는데 인스톨쉴드9에서 Visual Basic Wizard 를 사용하면 이 dll이 추가되지 않으므로 직접 추가해 주어야 함
InstallScript 와 Windows Installer 새로운 프로젝트를 추가할 때 InstallScript와 Windows Installer 중 하나를 선택하고 그 안에서 Visual Basic 6.0 Wizard 를 선택한다. Visual Basic 6.0 Wizard 를 선택하면 소스의 vbp 파일을 이용해서 설치되어야 하는 dll 들을 자동을 찾아주므로 쉽고 빠르게 배포프로그램을 만들 수 있다.
InstallScript 와 Windows Installer 비교 설명 장점 아주 간단하게 설치 프로그램을 만들 수 있다. 스킨을 바꾸거나 직접 만들 수 있다. 빌보드 (설치될때 배경이미지 바뀌는것) 을 할수 있다. Ini 파일, 환경변수, ODBC, COM+ 등을 설정할 수 있다. 빌보드 설정을 할 수 없다. 단점 Ini 파일, 환경변수, ODBC, COM+ 등을 설정할 수 없다 설치될 경로를 설정할 수 없다. 기본 스킨밖에 사용할 수 없다. 설치될 경로를 설정할 수 있다.
Setup tyupe