2009-10-04 1 views
19

NSIS Modern User Interface를 사용하여 처음으로 설치 프로그램을 만들려고합니다. 나는 이미 거기에있는 "Run XXXX"옵션 외에도 마침 페이지 (설치 프로그램의 마지막 화면)에서 만든 바탕 화면 바로 가기를 선택하도록 옵션 (확인란)을 추가 할 수있는 방법을 알고 싶습니다.NSIS 설치 프로그램의 마침 페이지에 바탕 화면 바로 가기 옵션을 추가하는 방법은 무엇입니까?

+3

두 행복 : (A)를 확인하지 마십시오을 "쓸모 넣어 바탕 화면 아이콘 "확인란을 선택합니다. 바탕 화면은 Vista에서 훨씬 열등한 프로그램 시작 방법이며 시작 메뉴의 검색과 비교됩니다. 그리고 (b) 실행 확인란을 선택하면 프로그램이 adminsitrativ 권한이 아니라 현재 대화 형으로 로그온 한 사용자로 실행됩니다. – Joey

답변

30

마침 페이지에서 추가 정보 체크 박스를 사용하지 않는 경우, 당신은 당신이 원하는 작업을 수행하는 데 사용할 수 있습니다 :

Function finishpageaction 
CreateShortcut "$desktop\foo.lnk" "$instdir\foo.exe" 
FunctionEnd 

!define MUI_FINISHPAGE_SHOWREADME "" 
!define MUI_FINISHPAGE_SHOWREADME_NOTCHECKED 
!define MUI_FINISHPAGE_SHOWREADME_TEXT "Create Desktop Shortcut" 
!define MUI_FINISHPAGE_SHOWREADME_FUNCTION finishpageaction 
+0

고마워요! 이것은 내가 필요로하는 것을 정확하게한다!! – takoloco

+1

대신 MUI_FINISHPAGE_RUN, MUI_FINISHPAGE_RUN_TEXT, MUI_FINISHPAGE_RUN_FUNCTION, MUI_PAGE_FINISH를 사용해야합니까? 이것들과 MUI_FINISHPAGE_SHOWREADME 등의 차이점은 무엇입니까? – AnAurelian

+0

@David 기본 텍스트 이외에 실제 차이점은 없습니다. – Anders

8

사용자가 바탕 화면 아이콘을 추가 할 수있게하는 가장 간단한 대체 방법은 사용자 지정 섹션을 만드는 것입니다. 그런 다음 사용자는 설치 프로그램의 "기능"페이지에 바로 가기를 추가하도록 선택할 수 있으며 UI를 많이 수정하지 않아도됩니다.

Section "Desktop Shortcut" SectionX 
    SetShellVarContext current 
    CreateShortCut "$DESKTOP\Your Program.lnk" "$INSTDIR\YourProgram.exe" 
SectionEnd 
+0

이것은 설치 프로그램의 비정상적인 예기치 않은 옵션을 간단히 건너 뛴 부분에 넣으므로이 방법을 사용하지 말 것을 권장합니다. 사용자가 바로 가기를 원하는지 여부를 묻는 것은 어떤 이유로 든 설치 프로세스가 끝난 시점에있을 것으로 예상됩니다. –

+0

일반적으로 설치가 끝날 때 완전히 건너 뛸 수있는 사소한 세부 사항이므로 예상됩니다. 바탕 화면 바로 가기는 편리하지만 필수는 아닙니다. 응용 프로그램을 설치하기 위해 필요하지 않습니다. 설치 과정의 _end_에 이러한 종류의 옵션을 유지하면 사용자가 더 적은 노력으로 더 많은 것을 할 수 있다고 느낄 수 있습니다. –