💕💕 SPECJALNA PROŚBA 💕💕
Od ponad 20 lat dzielę się z Wami swoją pasją oraz tworzę dla was moim zdaniem ciekawe i przede wszystkim przydatne rzeczy. Całkowicie za darmo! To się nigdy nie zmieni.
Niestety, sprzęt komputerowy (laptop) na którym obecnie pracuję zestarzał się - ma już 12 lat i jest to już niestety mocno odczuwalne. Moja obecna sytuacja finansowa nie pozwala mi na zakup nowego laptopa, dzięki któremu nadal będę mógł realizować swoją pasję, a tym samym dzielić się nią z Wami.
Mam nadzieję, że dzięki Waszej pomocy będę mógł zakupić sprzęt, który posłuży równie długo co obecny. Jak wiemy, sprzęt komputerowy jest dzisiaj horrendalnie drogi (zwłaszcza laptopy). Mam nadzieję, że wspólnie to się uda.
Dlatego też postanowiłem założyć specjalną zrzutkę na uznanej platformie crowd-fundingowej, dzięki której w transparentny sposób można dorzucić coś od siebie. Cel jest ambitny, ale wierzę w siłę społeczności!
3. Sposób użycia linii poleceń
Ten dokument zgodny jest z NSIS 3.04
3.1 Sposób użycia programu MakeNSIS
Instalatory NSIS generowane są przez program MakeNSIS w wyniku kompilacji skryptu NSIS (o rozszerzeniu .NSI) do pliku wykonywalnego. Podczas instalacji środowiska NSIS ustawiana jest opcja, dzięki której możesz kompilować pliki skryptów .nsi. Klikając w Eksploratorze Windows prawym klawiszem myszy na pliku o tym rozszerzeniu uzyskujemy dostęp do opcji 'Kompiluj skrypt NSIS'.
Jeśli chcesz używać programu MakeNSIS poprzez linię poleceń, składnia polecenia wygląda następująco:
makensis [opcja | skrypt.nsi | - [...]]
3.1.1 Opcje
- /LICENSE - wyświetla stronę licencji.
- /V - Przełącznik ten (uzupełniony liczbą z zakresu 0 do 4) ustawia poziom szczegółowości danych na wyjściu.
- 0 = brak komunikatów na wyjściu
- 1 = tylko błędy
- 2 = ostrzeżenia oraz błędy
- 3 = informacje, ostrzeżenia oraz błędy
- 4 = wszystkie komunikaty
- /P - Przełącznik ten (uzupełniony liczbą z zakresu 0 do 5) ustawia priorytet procesu kompilatora.
- 0 = bezczynny
- 1 = poniżej normalnego
- 2 = normalny (domyślny)
- 3 = powyżej normalnego
- 4 = wysoki
- 5 = czasu rzeczywistego
- /O - Przełącznik ten uzupełniony nazwą informuje kompilatora, aby przekierował komunikaty dziennika do pliku o tej nazwie (zamiast na ekran)
- /PAUSE - Wstrzymuje program makensis przed zakończeniem działania, co jest użyteczne przy uruchamianiu bezpośrednio z Windows
- /NOCONFIG - Wyłącza dołączanie pliku nsisconf.nsh. Bez tego parametru, domyślne opcje instalatora pobierane są z pliku nsisconf.nsh
- /CMDHELP - Wyświetla podstawowe informacje o sposobie użycia poleceń (jeśli są określone), lub wszystkich poleceń (jeśli polecenie nie jest określone)
- /HDRINFO - Wyświetla na wyjściu informacje o opcjach jakie zostały użyte przy kompilacji
- /NOCD - Wyłącza zmianę bieżącego katalogu na ten z pliku .nsi
- /INPUTCHARSET - Umożliwia określenie wybranej strony kodowej dla plików bez znacznika BOM (ACP|OEM|CP#|UTF8|UTF16<LE|BE>)
- /OUTPUTCHARSET - Umożliwia określenie wybranej strony kodowej używanej przez standardowe wyjście stdout, gdy wyjście jest przekierowywane (ACP|OEM|CP#|UTF8[SIG]|UTF16<LE|BE>[BOM])
- /PPO lub /SAFEPPO - Uruchamia tylko preprocesor i wypisuje wyniki do standardowego wyjścia stdout. Wersja bezpieczna (safe) nie uruchomi takich instrukcji jak !appendfile lub !system. Instrukcje !packhdr oraz !finalize nie są nigdy wykonywane
- /WX - Ostrzeżenia traktowane są jak błędy
- /D - Użycie tego przełącznika (raz lub kilka razy) dodaje parametr do symboli globalnej listy (Patrz !define)
- /X - Użycie tego przełącznika (raz lub kilka razy) wykonuje fragment kodu, który określisz. Na przykład: "/XAutoCloseWindow false"
- Nadając skryptowi nazwę "-", informujemy kompilator makensis, aby użył standardowego wejścia jako źródła.
3.1.2 Uwagi
- Parametry przetwarzane są w odpowiedniej kolejności. Zapis: makensis /Ddef skrypt.nsi nie jest tym samym co zapis: makensis skrypt.nsi /Ddef.
- Jeśli wybranych jest kilka skryptów, traktowane są one jako jeden połączony.
- W systemach Windows 95, 98 oraz NT, priorytety procesu poniżej normalnego oraz powyżej normalnego nie są dostępne. W tych systemach, priorytet poniżej normalnego ustawia priorytet na bezczynny, zaś powyżej normalnego na wysoki.
3.1.3 Zmienne środowiskowe
Makensis sprawdza liczbę zmiennych środowiskowych, które informują o lokalizacji elementów wymaganych do stworzenia instalatora. Do tych zmiennych zaliczamy:
- NSISDIR, NSISCONFDIR - miejsca, do których instalowane są dane nsis oraz pliki konfiguracyjne. NSISDIR odzwierciedla zmienną skryptu ${NSISDIR}. Więcej informacji znajduje się tutaj: Stałe.
- APPDATA (na platformie Windows) lub HOME (na innych platformach) - Lokalizacja pliku konfiguracyjnego użytkownika.
3.1.4 Przykłady
Podstawowe użycie:
makensis.exe mójskrypt.nsi
Tryb cichy:
makensis.exe /V1 mójskrypt.nsi
Ustawienie metody kompresji:
makensis.exe /X"SetCompressor /FINAL lzma" mójskrypt.nsi
Zmiana zachowania skryptu:
makensis.exe /DUSE_UPX /DVERSION=1.337 /DNO_IMAGES mójskrypt.nsi
Kolejność parametrów:
makensis /XSection zawartoscsekcji.nsi /XSectionEnd
3.2 Sposób użycia instalatora
Wygenerowane instalatory oraz deinstalatory akceptują kilka opcji poprzez linię poleceń. Opcje te dają użytkownikowi trochę większą kontrolę nad procesem instalacji.
3.2.1 Opcje wspólne
- /NCRC - wyłącza sprawdzanie sum kontrolnych CRC, jeśli nie użyto polecenia CRCCheck force w skrypcie.
- /S - uruchamia instalatora lub deinstalatora w trybie cichym. Więcej informacji znajdziesz tutaj: Ciche instalatory/deinstalatory.
- /D - ustawia domyślny katalog instalacji ($INSTDIR), ignorując polecenia InstallDir oraz InstallDirRegKey. Musi to być ostatni parametr wpisany w linii poleceń i nie może zawierać żadnych znaków cudzysłowia, nawet w przypadku gdy ścieżka dostępu zawiera spacje. Obsługiwane są tylko ścieżki bezwzględne.
3.2.2 Opcje deinstalatora
- _?= ustawia $INSTDIR. Także, zabrania deinstalatorowi kopiowania siebie do katalogu tymczasowego oraz jego uruchomienia z tej lokalizacji. Może być użyte wraz z poleceniem ExecWait, które oczekuje na zakończenie pracy deinstalatora. Musi to być ostatni parametr wpisany w linii poleceń i nie może zawierać żadnych znaków cudzysłowia, nawet w przypadku gdy ścieżka dostępu zawiera spacje.
3.2.3 Przykłady
installer.exe /NCRC
installer.exe /S
installer.exe /D=C:\Program Files\NSIS
installer.exe /NCRC /S /D=C:\Program Files\NSIS
uninstaller.exe /S _?=C:\Program Files\NSIS
# deinstalacja starszej wersji
ExecWait '"$INSTDIR\uninstaller.exe" /S _?=$INSTDIR'