2013-04-17 17 views
6

Mam instalatora NSIS, tutaj mam kilka składników, które użytkownik może wybrać opcję zainstalowania:Jak mogę zrobić sekcję w NSIS domyślnie wyłączone

Section "Modules" SecModules 
    SetOutPath "$INSTDIR" 
    CreateDirectory $INSTDIR\modules 
    ... 
SectionEnd 

Section "Freenode util" SecFreenode 
    SetOutPath "$INSTDIR" 
    CreateDirectory $INSTDIR\modules 
    ... 
SectionEnd 

jak mogę zrobić drugi zaznaczone? Domyślnie wszystkie są zaznaczone

Odpowiedz

14
; unselected because it is /o 
Section /o "Modules" SecModules 
    SetOutPath "$INSTDIR" 
    CreateDirectory $INSTDIR\modules 
    ... 
SectionEnd 

; selected 
Section "Freenode util" SecFreenode 
    SetOutPath "$INSTDIR" 
    CreateDirectory $INSTDIR\modules 
    ... 
SectionEnd 
+0

Pamiętaj, że powinieneś [przyjąć własną odpowiedź] (http://meta.stackexchange.com/questions/16930/is-it-ok-to-answer-your-own-question-and-accept- to) jeśli uważasz, że rozwiązuje twój problem :) – mgarciaisaia

4

Oprócz Section /o, można również użyć SectionIn kontrolować sekcje domyślne. Ten drugi może być przydatny, jeśli masz kilka sekcji i planujesz zaoferować kilka typów instalacji (patrz InstType). Wreszcie możesz kontrolować stan sekcji w oparciu o logikę, używając SectionSetFlags.

+0

Nie rozumiem, jak mogę tego użyć do mojego celu. Chcę mieć listę opcjonalnych składników, a niektóre z nich powinny być instalowane domyślnie, a niektóre z nich tylko wtedy, gdy użytkownik je sprawdzi. Nie rozumiem, o co w tym przypadku chodzi w SectionIn – Petr