Latest Posts Recent Comments 문의사항 신고하기 이용안내 이벤트 포인트 리스트 공지사항 관리자문의

공지사항

고정공지

(자유게시판에서 질문 금지) 질문하신 유저는 통보 없이 "계정정리" 될수 있습니다.

놀이터 일간 추천 베스트

놀이터 일간 조회 베스트

URL 링크 : https://portableapps.com/manuals/Portabl...index.html 

우선 아래 PortableApps 빌더 를 받습니다.

PortableAppsLauncher_repack_V2.7z_빌더 제가 사용하기 편하게 수정된 빌더입니다.

NSIS3 로 변경, 스플래시 자동 스톱, 원드라이브 저장 옵션, 일부 플러그인 함수등등 추가된 버전입니다. 


다운 받으면 뒤에 이름 _빌더 지우고 압축을 푸시면 됩니다. (크롬이 설정 파일을 막는 이유로 이름 바꿈...)

작업 경로가 길면 오류가 날 수 있으니 가능하면 최상위 폴더에 풀어주세요. 예: C:\PortableGenerator


오리지날은 아래 주소에서 다운 가능합니다.

https://portableapps.com/apps/development/portableapps.com_launcher



그럼 시작하겠습니다.

강좌용 프로그램은 우선 간단한 Master PDF 로 하겠습니다.


우선 적당한 폴더에 PortableApps 용 템플릿 (Work.7z_템플릿 ) 을 풀어 넣습니다.

(Work.7z_템플릿을 Work.7z 로 이름을 바꾸고 압축을 푸시면됩니다.)


참고로 저는 PortableApps\Work\ 에 풀어 사용합니다. 강좌도 이 경로라고 가정하겠습니다.


템플릿 App\AppInfo 폴더로 이동하여 아이콘 파일인 appicon.ico 은 적당히 바꾸고

가장 중요한 appinfo.ini 부터 수정해 봅시다. (아래 항목은 빠짐없이 적어주셔야 컴파일이 됩니다.)

[Details]

Name=Master PDF   ;; 프로그램 이름을 적습니다.

AppId=MasterPDFPortable   ;; 프로그램의 포터블 파일명입니다.

Publisher=Copyright (c) Code Industry Ltd. All rights reserved   ;; 프로그램 제작사 입니다.

Homepage=www.code-industry.net       ;; 프로그램 제작사 홈페이지 입니다.

Description=multifunctional PDF Editor   ;; 프로그램의 설명을 적습니다. (이건 생략 가능)

Language=Multilingual  ;; 지원 언어 (제대로 LocaleName 을 적어야 합니다. Locale.txt 참고)


[Version]

PackageVersion=5.1.68  ;; 프로그램 버전을 적습니다.



이제 Master PDF 를 설치해봅시다. 그전에 참고...

설치전 기록은 꼭 하셔야 만들기가 조금은 더 수월해집니다.

설치 기록을 확인하기 위해서 전 2가지 방법을 사용합니다.


첫째 Revo Uninstaller 를 사용하여 기록하는 방법

첫째 방법은 간단합니다 위 프로그램을 사용해 설치하면 자동으로 기록해줍니다.


제목 없음 01.png




두번째는 RegCool 로 설치전 스냅샷을 저장하고 설치후 그걸 비교하는 방법입니다.

첫째 방법은 간단하니 넘어가고 좀 생소한 두번째 방법을 설명하겠습니다.


001.PNG



RegCool 을 실행하고 도구 메뉴에 [레지스트리 스냅샷] 을 선택합니다.


위 처럼 나오면 [샷1 만들기]로 현재 레지스트리를 저장합니다.

그후 Master PDF 설치 하시고 설치가 완료되면 [샷2 만들기] 를 눌러 다시 레지스트리를 저장합니다.


그럼 [레지스트리 비교] 버튼이 활성화 되고 눌러서 비교를 하면됩니다.


프로그램에 따라서 첫째 방법이 좋을때도 혹은 두번째 방법이 좋을때도 있습니다.


이 부분을 설명하기가 좀 애매한게 

프로그램마다 저장 방법 저장 위치 등 너무 천차만별이라서 딱 이거다 할수가 없네요.

사실 포터블은 이런거 찾는게 전부라고 할 수 있는데 자주 만들어 감을 익히는 방법밖에 없습니다.


그래서 중요하게 살펴보아야할 곳을 알려드리겠습니다. 


프로그램과 관련해 살펴보아야 할 폴더

C:\Program Files

C:\Program Files\Common Files

C:\Program Files (x86)

C:\Program Files (x86)\Common Files


프로그램 설정 그리고 부속 파일과 관련해 살펴보아야 할 폴더

C:\ProgramData

C:\Users\<유저>\AppData\Local

C:\Users\<유저>\AppData\Roaming


프로그램 설정과 관련해 살펴보아야할 레지스트리

HKEY_CURRENT_USER\Software

HKEY_LOCAL_MACHINE\SOFTWARE



이렇게 각각의 파일 위치와 레지스트리 정보를 확인 했으면 본격적으로 만들어 봅시다.


일단 확인한 바로는


설정은 레지스트리 HKCU\Software\Code Industry\Master PDF Editor 5

Master PDF 설치는 C:\Program Files 폴더에

부속 파일은 %LOCALAPPDATA%\Master PDF Editor 폴더에

이렇게 확인되었습니다.



Master PDF 설치 폴더의 파일을 App\MasterPDF 로 복사해 옵니다.


그럼 폴더 구조가 이렇게 됩니다.

002.PNG



이제 App\AppInfo\Launcher 폴더로 이동해 설정파일 MasterPDFPortable.ini 파일을 수정해봅시다.

참고: 설정 파일 이름은 "프로그램의 포터블 파일명" (AppId) 과 같아야하고 확장자는 .ini 입니다.


[Launch]

ProgramExecutable=MasterPDF\MasterPDFEditor.exe   ;; 실행할 파일명입니다.

DirectoryMoveOK=yes   ;; 포터블 위치가 이동할때 이전 위치를 저장해두고 쓸수있게 합니다.

SupportsUNC=yes   ;; UNC 네트워크 위치를 사용가능하게 해줍니다.


[Language]

Base=ko    ;; 언어 설정입니다.


[LanguageStrings]

en=en_en  ;; 언어 설정의 문자형입니다. (프로그램 언어 치환에 사용됩니다)

ko=ko_kr


[Activate]

Registry=true     ;; 레지스트리 사용을 가능하게합니다.

OneDrive=false   ;; 설정을 원드라이브에 저장할지 설정합니다.

Splash=false      ;; 스플래시 화면을 보여줄지 설정합니다.

;; 스플래시 화면은 App\AppInfo\Launcher\splash.jpg 가 존재하면 그 이미지를 보여줍니다.



;; 이 설정들은 필요한 경우 data 폴더에 저장됩니다.

;; 해당 레지스트리를 종료시 백업 시작시 복구 합니다.

[RegistryKeys]

MasterPDF=HKCU\Software\Code Industry\Master PDF Editor 5


;;  시작할때 해당 레지스트리 항목을 수정합니다.

;;  REG_SZ: 는 문자형 REG_DWORD: 는 숫자형입니다. 

[RegistryValueWrite]

;; 경로는 HKCU\...\Master PDF Editor 5\ 이고 항목은 check_updates 값은 0 입니다. 

HKCU\Software\Code Industry\Master PDF Editor 5\check_updates=REG_DWORD:0


;; %PAL:LanguageCustom% 이 값은 언어 문자형 그러니까 en_en 이 됩니다.

HKCU\Software\Code Industry\Master PDF Editor 5\lang=REG_SZ:%PAL:LanguageCustom%


;; %PAL:UserName% 는 조금뒤에 설명할 Custom.nsh 파일에서 생성된 유저명이 적힌 변수입니다.

HKCU\Software\Code Industry\Master PDF Editor 5\user_name=REG_SZ:%PAL:UserName%


;; %LOCALAPPDATA% = 윈도우 환경변수로 "C:\Users\<유저>\AppData\Local" 경로입니다.

HKCU\Software\Code Industry\Master PDF Editor 5\tesseract_ocr_path=REG_SZ:%LOCALAPPDATA%\Master PDF Editor\tessdata\


;; 프로그램이 종료될때 삭제할 레지스트리입니다. 앞에 숫자는 순서대로...

[RegistryCleanupForce]

1=HKCU\Software\Classes\Applications\MasterPDFEditor.exe

2=HKCU\Software\Classes\MasterPDFEditor5.Document

;; 탐색기 PDF 파일 우측 메뉴에 등록되는 메뉴를 종료시 삭제 하는 레지스트리 (강좌 아래에 추가 설명)

3=HKCU\Software\Classes\SystemFileAssociations\.pdf\shell\MasterPDFEditor5.Document

4=HKCU\Software\Classes\SystemFileAssociations\.xps\shell\MasterPDFEditor5.Document


;; 프로그램이 종료될때 해당 레지스트리가 비어있으면 삭제합니다.

[RegistryCleanupIfEmpty]

1=HKCU\Software\Code Industry\Master PDF Editor

2=HKCU\Software\Code Industry


;; 프로그램 부속 파일이 있는 경로를 종료시 백업 시작시 복구 합니다. 

[DirectoriesMove]

MasterPDF=%LOCALAPPDATA%\Master PDF Editor


;; 프로그램이 종료될때 삭제할 폴더입니다.

[DirectoriesCleanupForce]

;; 앞에 ; 은 주석이란 말입니다. (주석은 실행시엔 해석(실행)을 안합니다)

;1=%LOCALAPPDATA%\..\LocalMaster PDF Editor



이 정도로 하고 이제 빌드해 봅시다.


PortableAppsLauncher\PortableGenerator.exe 를 실행합니다.

003.PNG


004.PNG


템플릿 파일들이 있는 작업 폴더를 선택합니다. 

템플릿 파일이 Work\App 에 있다면 Work\ 폴더를 선택하시면 됩니다.


그럼 Work\ 폴더에 빌드된 MasterPDFPortable.exe 가 생성됩니다.

실행해 봅시다.


잘 실행되는데 설정을 보면 이런데가 있군요.


005.PNG



주석에 작성자 유저명 ...

이걸 실행한 컴퓨터마다 해당 유저명으로 표시해 주고 싶습니다.


그리고 프로그램을 실행한 후 부터 탐색기 PDF 파일 우측 메뉴에 자동으로 메뉴가 등록되는데


006.PNG


이것도 없애고 싶습니다.


이럴때 사용하는게 Custom.nsh 파일입니다.

이 파일은 .ini 로 해결할수 없는 여러가지를 해결해줍니다.

참고: PortableAppsLauncher\Other\Source 폴더에 사용 예제가 많으니 살펴보시면 좋습니다.



우선 App\AppInfo\Launcher\Custom.nsh 파일을 만들어 줍니다.

그리고 다음과 같이 편집합니다.

${SegmentFile}


;; 프로그램이 시작될때 실행할 코드들

${SegmentPrePrimary}


  ;; 여기에 코드 작성


!macroend


;; 프로그램이 종료될때 실행할 코드들

${SegmentPostPrimary}


  ;; 여기에 코드 작성


!macroend



위에 작성된것이 기본 템플릿입니다.


이제 필요한 코드를 작성해봅시다.


${SegmentFile}


;; 프로그램이 시작될때 실행할 코드들

${SegmentPrePrimary}


        ;; 시작할때 유저명을 가져오는 코드입니다.


        ;; 윈도우 환경 변수 %HOMEPATH% 를 가져옵니다.

         ExpandEnvStrings $0 "%HOMEPATH%"

        ;; %HOMEPATH% 에서 유저 이름만 걸러냅니다.

         ${GetFileName} $0 $R0

        ;; PAL:UserName 변수에 유저 이름을 저장합니다.

        ;; 이후 설정 파일인 .ini 에서 %PAL:UserName% 을 사용할 수 있습니다.

         ${SetEnvironmentVariablesPath} PAL:UserName $R0


!macroend


;; 프로그램이 종료될때 실행할 코드들

${SegmentPostPrimary}


  ;; 여기에 코드 작성


!macroend



그리고 종료할때 탐색기 PDF 파일 우측 메뉴를 삭제하는 코드는 .ini [RegistryCleanupForce] 를 사용합시다.

위에서 작성한 MasterPDFPortable.ini 참고...

;; 프로그램이 종료될때 삭제할 레지스트리입니다.

[RegistryCleanupForce]

1=...생략

2=...생략

;; 탐색기 PDF 파일 우측 메뉴에 등록되는 메뉴를 종료시 삭제 하는 레지스트리

3=HKCU\Software\Classes\SystemFileAssociations\.pdf\shell\MasterPDFEditor5.Document

4=HKCU\Software\Classes\SystemFileAssociations\.xps\shell\MasterPDFEditor5.Document



이제 PortableAppsLauncher\PortableGenerator.exe 를 실행하여 다시 빌드하면 포터블 완성입니다.


이번 강좌는 비교적 쉬운 프로그램으로 했습니다.

다음 기회가되면 좀더 어렵고 고급 기능(DefaultData, FileWrite 등등)이 필요한 강좌를 써보도록 하겠습니다.



참고 사항

간혹 프로그램에 따라서 런타임 파일이 필요한 프로그램이 있습니다.

이건 만들땐 잘 실행되는데 윈도우 새로 설치한 다른컴 에선 실행 안되면 대부분 이 런타임 파일이 없는겁니다.

이땐 필요한 런타임 파일을 App\MasterPDF(프로그램이있는폴더) 에 넣어주면됩니다.

보통 런타임 파일은 msvcp1xx.dll, msvcr1xx.dll, vcruntime140.dll 이런것들이 있습니다.

이 런타임에 대한 좀더 자세한 사항은 다음 기회에...



참고 사이트들

NSIS 도움말: http://nsis.sourceforge.net/Docs/

플러그인들 : http://nsis.sourceforge.net/Category:Plugins

portableapps 도움말: https://portableapps.com/manuals/PortableApps.comLauncher/index.html

자료만 받아갈줄 아는 회원님들께, 개발자님들에게 최소한의 경우는 우리가 피드백으로 보답하는 겁니다

문제가 있던 없던 그동안 고생하신 것을 생각하여 피드백 작성을 부탁 드립니다
­

의견쓰기::  상업광고, 인신공격,비방, 욕설, 아주강한음담패설등의 코멘트는 예고없이 삭제될수 있습니다. 회원정리 게시판

profile

드림컴

2018.10.25 20:14
가입일: 2016:05.27
총 게시물수: 13
총 댓글수: 220

멋진강좌 감사합니다.

profile

Ruby

2018.10.26 13:50
가입일:
총 게시물수: 1
총 댓글수: 48

수고하셨습니다.

profile

풍선맨

2018.10.27 05:54
가입일: 2018:10.27
총 게시물수: 14
총 댓글수: 29

자세한 글 감사합니다~

profile

행복한나무

2018.10.28 10:53
가입일: 2018:10.17
총 게시물수: 1
총 댓글수: 5
소중한 강좌 정말 감사드립니다.!
profile

달림이

2018.10.29 07:34
가입일: 2015:11.28
총 게시물수: 823
총 댓글수: 7588

great expert of you . Gooooooood.  

Let's study.  all of OhMae


profile

가치

2018.10.29 13:02
가입일: 2018:03.21
총 게시물수: 0
총 댓글수: 19

추천에 한표 했어요

강좌 2탄도 기대합니다

List of Articles
번호 제목 글쓴이 날짜 조회 수
893 정보 두루마리 휴지를 향긋하게 사용하기 + 6 골드킹82 08-21 209
892 정보 눅눅해진 김을 다시 바삭하게? + 6 골드킹82 08-21 180
891 정보 넘치는 냄비안넘치게 하기 + 5 골드킹82 08-21 227
890 정보 닭비린내 제거방법 + 2 골드킹82 08-21 194
889 정보 쌀벌래 방지법 + 6 골드킹82 08-21 156
888 정보 자동차유리에 흡착고무 떨어지면? + 5 골드킹82 08-21 257
887 정보 세면대 하수고 막힘 + 5 골드킹82 08-21 161
886 정보 운동호 냄새제거 + 2 골드킹82 08-21 138
885 정보 자동차정소 꿀팁 + 2 골드킹82 08-21 147
884 정보 요리에 마늘을 사용할때 + 2 골드킹82 08-21 107
883 정보 옷걸이에 옷이 잘떨어지면? + 3 골드킹82 08-21 113
882 정보 잘열리지 않는 꿀단지 뚜껑열기 + 2 골드킹82 08-21 218
881 정보 소중한 내옷에 껌이 달라 붙으면? + 3 골드킹82 08-21 111
880 정보 일상생활 보플제거팁 + 2 골드킹82 08-21 109
879 정보 집안에 개미가생기면? + 3 골드킹82 08-21 123
878 정보 집안에 바퀴벌레가생기면? + 2 골드킹82 08-21 168
877 정보 전자렌지 청소법 + 2 골드킹82 08-21 162
876 정보 볼펜이 바닦에뭍으면? + 3 골드킹82 08-21 105
875 정보 새하얀 치아를 얻으려면? + 3 골드킹82 08-21 175
874 일반 계란이 바닥에 깨졌을떄? + 2 골드킹82 08-21 177
873 일반 화장실 청소할때 꿀팁 + 2 골드킹82 08-21 176
872 정보 변기가 막혔을떄 + 2 골드킹82 08-21 151
871 윈도우 화면 분할 꿀팁 + 4 골드킹82 08-21 228
870 일반 외국인에게 태극기 설명하는 법 file + 6 푸른바다처럼 08-17 366
869 정보 소고기 그것은 사랑! 알고 먹자~ file + 18 고마워요 08-11 397
868 일반 트루이미지(Acronis Trueimage) 복구 경험담 file + 12 기이수 08-10 532
867 일반 WinNTSetup3 몰랐던 설치 방법 file + 10 엔냐 08-09 551
866 일반 윈도우10 사용자라면, 확인해야할 설정 (개인정보 보내기) file + 36 푸른바다처럼 08-09 794
865 정보 정말 임시...임시 저장소 file + 11 하ㅇ룽 08-08 374
864 일반 이사 할때 꿀팁 file + 20 금수저 08-08 397
863 정보 윈도우 무료 폰트 사이트 입니다.. 종류가 다양합니다. + 21 건강하고행복하게 08-05 583
862 일반 유튜브 단축기 file + 12 푸른바다처럼 08-04 373
861 정보 Youtube Vanced (안드로이드 폰에서 무료로 Youtube Premium 기능 사용) file + 29 또뭉이 07-28 924
860 일반 뭉친어깨 푸는 팁 file + 32 푸른바다처럼 07-28 689
859 드라이버 amd 3900x cpu와 인텔 ac9260 사용시 윈도우 부팅 문제가 있네요 + 7 카알 07-27 527
858 정보 메인보드 메뉴얼 사이트 file + 19 금수저 07-25 587
857 일반 윈도우10(1809버전 이상가능) 클립보드 히스토리 + 24 스프린터 07-22 716
856 일반 성범죄자가 되지 않기 위한 필수사항들 file + 19 푸른바다처럼 07-20 711
855 일반 Windwos 10이 설치된 PC에 다중 원격접속이 가능하게 설정하는 방법 + 15 구영탄 07-19 907
854 일반 windows10 파일 삭제시 확인창 "나오게" 설정하는법 + 8 구영탄 07-19 503
853 정보 그래픽카드 이상 시 증상 + 17 금수저 07-18 599
852 일반 지메일 (Gmail) 오래된 메일 쉬운 정리 방법. + 25 스프린터 07-11 776