Dodatkowe możliwości instalacji

W tym artykule poznamy dodatkowe możliwości instalacji.

Dodatkowe możliwości instalacji

Poprzedni artykuł podstawowego instalatora. Jednak możliwe, że zajdzie potrzeba bardziej zaawansowanego przetwarzania danych podczas instalacji. Na przykład, możesz zechcieć instalować paczkę tylko, gdy jakieś warunki zostaną spełnione, np., gdy dana biblioteka jest zainstalowana.

Dodatkowo w obiekcie instalacyjnym, plik obiektu jest dostępny podczas instalacji. To dostarcza funkcji mogących zostać użytymi do badania i modyfikowania plików na dysku. Możesz ich użyć do przemieszczenia, skopiowania, lub usunięcia plików, przed lub po instalacji. Na przykład mógłbyś wcześniej stworzyć kopie bezpieczeństwa plików.

Następujący kod wykona kopię pliku "/bin/grep/" i umieści go w katalogu "/main".

var binFolder=getFolder("file:///","bin");
var grep=getFolder(binFolder,"grep");

var mainFolder=getFolder("file:///","main");

File.copy(grep,mainFolder);

Pierwsza linia służy do pozyskania położenia katalogu "/bin. Tekst "file//" jest specjalnym ciągiem oznaczającym katalog główny systemu plików. Stamtąd uzyskujemy plik ‘grep’, który zawarty jest w katalogu ‘bin’. Jeżeli plik nie istnieje nastąpi błąd instalacji. Następnie, otrzymujemy katalog ‘main’, znowu z katalogu głównego systemu. W końcu wywołujemy funkcję File.copy, która kopiuje plik źródłowy do miejsca przeznaczenia.

Funkcje także przemieszczają, zmieniają nazwę i uruchamiają pliki. Tak można przemieścić plik gdyby kolidował z twoją paczka.

Obsługa błędów

Będziesz musiał sprawnie posługiwać się błędami. Zdarzy się ze plik lub katalog nie może zostać odnaleziony, lub brakuje miejsca na dysku, lub są jakiekolwiek inne problemy.

Możesz stosować funkcję getLastError(), aby sprawdzić czy wystąpił błąd. Jeżeli zwróci SUCCESS, nie było błędów. W przeciwnym wypadku, pojawi się liczba z kodem błędu. Funkcji tej możesz użyć w dowolnym momencie, aby sprawdzić czy nie pojawia się błąd.

Jeżeli nastąpi błąd, prawdopodobnie będziesz musiał przerwać instalację. Możesz także wyświetlić komunikat o błędzie. Na przykład mógłbyś umieścić następujący kod na końcu twojego skryptu instalacji.

if (getLastError() == SUCCESS){
  performInstall();
}
else {
  cancelInstall();
}

Kody błędu, który mogłyby zostać zwrócone przez getLastError() umieszczone są w pliku źródłowym Mozilla: nsInstall.h. Podczas instalacji, jest tworzony plik dziennika, który zawiera spis wykonanych operacji. Tam zostaną umieszczone błędy, które nastąpiły. Plik dziennika znajduje się w pliku ‘install.log’ w katalogu instalacyjnym Mozilli. Każda instalacja pozostawi po sobie w nim fragment teksu dokumentujący przebieg instalacji.

Funkcja logComment() jest używana do umieszczania komentarzy instalacji w dzienniku, pobiera ona jeden argument.

Autorzy i etykiety dokumentu

Etykiety: 
 Ostatnia aktualizacja: fscholz,