29 rozdzial 28 ciw47mwstcqakqpq Nieznany

background image

Rozdział 28

Przygotowanie programu
instalacyjnego aplikacji

Trudno przecenić wpływ instalacji na późniejsze poprawne lub błędne działanie
aplikacji. Nawet najlepszy program może okazać się niestabilny, jeśli zostanie
niepoprawnie zainstalowany. Program instalacyjny i wrażenie jakie wywołuje na
użytkowniku pełni rolę pierwszego powitania - użytkownicy właśnie na jego
podstawie będą wyrabiać sobie pierwsze opinie o aplikacji i jej autorze. Na
szczęście Delphi oferuje praktyczne narzędzie do tworzenia programów
instalacyjnych.

Razem z

Delphi dostarczana jest specjalna wersja popularnego programu

InstallShield - InstallShield Express. Program ten umożliwia tworzenie procedur
instalacyjnych dla aplikacji, napisanych w

Delphi. Po określeniu kilku

parametrów, charakteryzujących pożądaną postać i sposób działania procedury
instalacyjnej, InstallShield automatycznie przygotowuje gotowe nośniki (dyskietki
lub dyski CD-ROM), zawierające program instalacyjny i pliki aplikacji. Mimo że
InstallShield wykonuje lwią część zadań, związanych z przygotowaniem procedury
instalacyjnej, autor aplikacji musi wykonać szereg czynności wstępnych.

Po pierwsze - organizacja

Gdy już zapadnie decyzja o udostępnieniu aplikacji użytkownikom, należy przede
wszystkim zadbać o odpowiednie zorganizowanie i uporządkowanie elementów
programu. Spośród plików, wchodzących w skład aplikacji, należy wybrać te
niezbędne dla jej działania, oraz pliki o charakterze pomocniczym. Należy ponadto
zwrócić uwagę, czy aplikacja nie korzysta z pewnych dodatkowych plików, np.
elementów systemu operacyjnego, których pewna część użytkowników może nie
mieć. Przygotowanie odpowiednio zorganizowanej listy plików pozwoli
zaoszczędzić wiele czasu podczas tworzenia dysków instalacyjnych.

Ustalenie wymagań aplikacji w zakresie oprogramowania
sieciowego

Kolejnym krokiem powinno być określenie wymagań aplikacji w zakresie
oprogramowania sieciowego. Czy aplikacja wymaga protokołu TCP/IP? Czy

background image

830

Część IV

protokół ten jest zainstalowany na komputerze użytkownika? Czy wymagany
będzie dostęp do współużytkowanego katalogu sieciowego? Czy system
użytkownika ma niezbędne prawa dostępu do tego katalogu? Powyższe pytania
ilustrują charakter problemów, jakie należy wziąć pod uwagę przed przystąpieniem
do instalowania aplikacji.

Sterownik bazy danych, niezbędny do uruchomienia
aplikacji na komputerze użytkownika

Oprócz wspólnych elementów oprogramowania sieciowego, aplikacja może
wymagać sterownika bazy danych, dostosowanego do systemu konkretnego
producenta. Jeśli np. aplikacja korzysta z tabel, rezydujących na serwerze Sybase,
to w systemie użytkownika musi zostać zainstalowany moduł Open Client firmy
Sybase. Jeśli aplikacja wymaga dowolnego sterownika ODBC, to musi on być
zainstalowany w systemie użytkownika. Problem ten dotyczy wprawdzie tylko
aplikacji typu klient-serwer i programów, wykorzystujących ODBC, jest jednak
niezwykle istotny - bez odpowiednich sterowników aplikacja nie może działać.

Wymagania, dotyczące serwera bazy danych

Jeśli aplikacja korzysta z serwera bazy danych, to system kliencki musi mieć
odpowiednie prawa dostępu do serwera. Czy serwer już istnieje, czy też trzeba go
będzie dopiero przygotować do pracy? Czy jest to serwer lokalny, czy odległy?
Wreszcie, czy system kliencki ma własny identyfikator użytkownika, hasło i prawa
dostępu do serwera?

Przygotowanie bazy danych

Zanim system kliencki będzie mógł uzyskać dostęp do bazy danych, konieczne jest
wykonanie szeregu czynności przygotowawczych. W

przypadku systemów

współpracujących z odległym serwerem, należy ustalić, czy to administrator
serwera bazy danych musi utworzyć obiekty bazy, wymagane przez aplikację, czy
też zadanie to spada na osobę instalującą aplikację. Jeśli obiekty bazy danych ma
tworzyć autor aplikacji, to powinien on posłużyć się odpowiednimi do tego celu
środkami - programem Database Desktop, skryptem w języku SQL lub innym
narzędziem.

Jeśli aplikacja wykonuje operacje na tabelach lokalnych, to należy przygotować
kopie pustych tabel, które następnie zostaną dołączone do pakietu instalacyjnego.
W praktyce konieczne jest sporządzenie kopii roboczych tabel, używanych przy
tworzeniu aplikacji i usunięcie z nich wszelkich danych testowych.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

831

Wymienione powyżej zagadnienia ilustrują typowe problemy, z którymi styka się
autor gotowej aplikacji przed przystąpieniem do tworzenia oryginałów dysków
instalacyjnych. Jak już wspomniano, szczególnie istotne jest właściwe
zaplanowanie instalacji. Instalowanie aplikacji do obsługi baz danych -
a szczególnie aplikacji typu klient-serwer - to trudne przedsięwzięcie, którego
powodzenie zależy w dużym stopniu od poczynionych przygotowań.

W dalszej części niniejszego rozdziału omówimy tworzenie prostego
i zaawansowanego programu instalacyjnego. W przypadku prostego programu
instalacyjnego, autor musi jedynie określić szereg parametrów, bez których
InstallShield nie będzie w stanie wygenerować odpowiedniego kodu. W części
poświęconej tworzeniu zaawansowanego programu instalacyjnego, przedstawimy
przykład umiarkowanie skomplikowanej procedury instalacyjnej, w której znajdą
zastosowanie niektóre dodatkowe opcje programu InstallShield.

W końcowej części tego rozdziału omówione zostaną zagadnienia, związane
z użyciem skryptów SQL do tworzenia obiektów bazy danych w środowisku
klient-serwer. Jeśli aplikacja nie może działać bez uprzednio przygotowanych
obiektów bazy danych, umiejętność posługiwania się skryptami SQL okaże się
niezbędna dla prawidłowego przygotowania instalacji.

Prosta procedura instalacyjna (Basic Setup)

Aby zainstalować specjalną wersję programu InstallShield, dostarczaną razem
z Delphi, należy uruchomić program instalacyjny z dysku CD-ROM Delphi.
Dostęp do tego programu uzyskać można wprost z głównego ekranu procedury
instalacyjnej Delphi, uruchamianej automatycznie po włożeniu dysku do napędu.
Po zainstalowaniu program InstallShield można uruchomić wywołując plik
wykonywalny

ISX.EXE

, standardowo umieszczany w

katalogu \

Program

Files\InstallShield\IS Express Delphi Edition

.

Przy pierwszym uruchomieniu program pyta, czy ma otworzyć istniejący projekt
czy utworzyć nowy. Należy wybrać opcję tworzenia nowego projektu -

Create

a

New Setup Project

.

Na ekranie pojawi się teraz okno dialogowe

New Project

. Należy w nim wpisać

nazwę i typ projektu, katalog, a także określić, czy w ramach projektu ma być
tworzona opcja instalacji indywidualnej (Custom Setup). W przypadku instalacji
indywidualnej końcowy użytkownik może dostosować przebieg instalacji do
własnych potrzeb, w szczególności zainstalować tylko wybrane komponenty
aplikacji.

W pierwszym przykładzie ograniczymy się do stworzenia najprostszej procedury
instalacyjnej. Należy zatem wpisać jedynie nazwę projektu (w polu

Project Name

),

background image

832

Część IV

a następnie kliknąć przycisk

Create

, co spowoduje utworzenie nowego projektu -

zob. rysunek 29.1.

Na ekranie pojawi się teraz główne okno programu InstallShield. Widoczna lista
obejmuje dziewięć głównych etapów tworzenia programu instalacyjnego. Każdy
etap podzielony jest na szereg czynności cząstkowych. Sekwencyjne wykonanie
kolejnych czynności doprowadzi do utworzenia programu instalacyjnego.
InstallShield zaznacza czynności, które zostały już wykonane - pomaga to
zorientować się, na którym etapie znajduje się bieżący projekt. Z listy wynika, że
pierwszą czynnością po utworzeniu nowego projektu jest wprowadzenie
informacji o aplikacji (Application Information). Jest to pierwsza czynność etapu
Set the Visual Design, który decyduje o

postaci graficznej programu

instalacyjnego. Główne okno programu InstallShield przedstawiono na rysunku
29.2.

Postać graficzna procedury instalacyjnej

W pierwszym z dziewięciu etapów tworzenia programu instalacyjnego należy
wprowadzić informacje o instalowanej aplikacji i określić szereg parametrów,
decydujących o wyglądzie programu. Aby wprowadzić dane o aplikacji, m.in.
nazwę głównego pliku wykonywalnego, numer wersji, itd. należy kliknąć przycisk

Application Information

.

Rysunek 29.1.
W oknie
dialogowym New
Project określić
można parametry
nowego projektu.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

833

Informacje o aplikacji - Application information

W sekcji

App Info

autor programu instalacyjnego wpisuje nazwę aplikacji, jej

głównego pliku wykonywalnego i numer wersji. Możliwe jest również wpisanie
nazwy firmy, jeśli w danym projekcie różni się ona od podanej przy instalacji
programu InstallShield.

W polu

Application Name InstallShield

wpisuje domyślnie nazwę projektu, podaną

wcześniej w polu

New Project

. Należy pamiętać, że wpisana tutaj nazwa stanie się

automatycznie nazwą katalogu docelowego. Dlatego niewskazane jest
wykorzystywanie pełnej długości pola, w którym można wpisać nazwę, składającą
się nawet z osiemdziesięciu znaków.

Zawartość pola

Application Executable

określa główny plik wykonywalny

aplikacji. Plik ten zostanie automatycznie dodany do grupy

Program Files

w oknie

dialogowym

Groups and Files

(pod warunkiem, że w oknie tym nie zdefiniowano

jeszcze żadnych innych grup i plików). Z kolei w oknie dialogowym

General Icon

Settings

tworzona jest odpowiednia ikona (o ile nie zdefiniowano w nim wcześniej

żadnych innych pozycji). Aby wybrać plik wykonywalny z listy należy posłużyć
się przyciskiem wielokropka, widocznym obok pola

Application Executable

.

Na tym etapie pracy nie zachodzi na ogół konieczność zmiany informacji o wersji
i firmie. Dane o aplikacji są zatem kompletne. Stronę

App Info

przedstawiono na

rysunku 29.3.

Rysunek 29.2.
Główne okno
programu
InstallShield.

background image

834

Część IV

WSKAZÓWKA:

Okno dialogowe, zawierające stronę

App Info

, obejmuje jeszcze dwie strony -

Main

Window

i

Features

, odpowiadające kolejnym pozycjom na głównej liście

programu InstallShield. Aby uzyskać do nich dostęp nie trzeba zamykać okna
dialogowego i powracać do głównej listy opcji - wystarczy zmienić aktywną
stronę. Ta sama zasada obowiązuje w przypadku każdego z dziewięciu etapów
pracy z programem InstallShield, ujętych na głównej liście. Opcje, wchodzące
w skład każdego etapu, można wywoływać wprost z okna dialogowego.

Okno główne - Main Window

Na stronie

Main Window

autor programu instalacyjnego wpisuje tytuł jego

głównego okna, wybiera ewentualny rysunek (mapę bitową) i ustala kolor tła.
W polu

Main Title

(główny tytuł) wpisywana jest automatycznie nazwa aplikacji,

podana na stronie

App Info

. Można jednak samodzielnie wpisać inny tytuł, niosący

więcej informacji niż sama tylko nazwa projektu. Tytuł w postaci tekstu można
zastąpić rysunkiem - mapą bitową. Tytuł nie powinien być zbyt długi, gdyż
program instalacyjny wyświetli go stosunkowo dużą czcionką. Zbyt długi napis nie
zmieści się w oknie.

Jeśli wybrana zostanie opcja wyświetlania mapy bitowej (Bitmap) w miejsce
tekstu, to w polu Bitmap należy wpisać nazwę odpowiedniego pliku

BMP

. Można

również posłużyć się przyciskiem wielokropka w celu wybrania pliku z listy.

Jako kolor tła (Backgroud Color) wybierany jest domyślnie stopniowo rozjaśniany
niebieski (Dithered Blue). Można jednak wybrać inny kolor z rozwijanej listy.
W przypadku naszego przykładowego, prostego programu instalacyjnego nie
zachodzi potrzeba wprowadzania jakichkolwiek zmian na stronie

Main Window

.

Należy zatem zaakceptować wartości domyślne i przejść do następnej strony.
Stronę

Main Windows

przedstawiono na rysunku 29.4.

Rysunek 29.3.
Informacje
o aplikacji wpisuje
się na stronie App
Info.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

835

Opcje dodatkowe - Features

Strona

Features

zawiera tylko jeden element - przełącznik, decydujący

o

utworzeniu specjalnego programu odinstalowującego aplikację. Jednym

z wymagań przyznania aplikacji oficjalnego logo zgodności z Windows 95 jest
wyposażenie jej w

automatyczną procedurę odinstalowującą. Dlatego

w większości przypadków omawiany przełącznik powinien pozostać uaktywniony.
Procedura odinstalowująca usuwa wszystkie pliki zapisane na dysku przez
program instalacyjny, a także wszelkie wpisy w rejestrze systemowym, utworzone
domyślnie przez program InstallShield. Należy jednak pamiętać, że nie będą
automatycznie usuwane wszelkie dodatkowe wpisy w rejestrze, zdefiniowane
przez autora programu instalacyjnego i aplikacji. Aby usunąć dodatkowe pozycje
rejestru należy posłużyć się opcją

Uninstall

Keys

w oknie dialogowym

Make

Registry

Changes

(zob. dalsza część rozdziału). Stronę

Features

przedstawiono na

rysunku 29.5.

Rysunek 29.4.
Strona Main
Window (Okno
główne)
w programie
InstallShield.

Rysunek 29.5.
Ta opcja decyduje
o ewentualnym
wygenerowaniu
automatycznego
programu
odinstalowującego
aplikację.

background image

836

Część IV

Aby zachować wprowadzone informacje o aplikacji i formie graficznej programu
instalacyjnego należy kliknąć

OK

.

Opcje programu Install Shield, dotyczące Delphi

W kolejnym etapie przygotowywania programu instalacyjnego należy wybrać
wymagane przez aplikacją moduły oprogramowania, związane ze środowiskiem
Delphi. Jeśli aplikacja przeznaczona jest do obsługi bazy danych, to
najprawdopodobniej wymagała będzie zainstalowania aparatu bazy danych
Borland Database Engine. Podobnie, jeżeli aplikacja uzyskuje dostęp do odległych
serwerów, korzystając ze sterowników SQL Links firmy Borland, to oczywiście
odpowiednie sterowniki powinny znaleźć się w pakiecie instalacyjnym.

Opcje ogólne - General Options

Aby wybrać moduły, z których korzystać będzie instalowana aplikacja, należy
kliknąć przycisk

General Options

. Moduł SQL Links może być instalowany tylko

łącznie z Borland Database Engine. Stronę okna dialogowego

General Options

przedstawiono na rysunku 29.6.

Dołączanie BDE

Aby dołączyć do pakietu instalacyjnego moduł BDE należy uaktywnić odpowiedni
przełącznik. Na ekranie pojawi się drugie okno dialogowe, w którym InstallShield
pyta, czy program instalacyjny ma przeprowadzać pełną (Full) czy cząstkową

Rysunek 29.6.
W oknie
dialogowym
General Options
należy wybrać
komponenty
środowiska firmy
Borland, które
mają być
instalowane razem
z aplikacją.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

837

(Partial) instalacje BDE. Na razie należy wybrać domyślnie proponowaną pełną
instalację i kliknąć

OK

.

Definiowanie aliasów BDE, przeznaczonych do dołączenia

Kolejne cztery okna dialogowe służą do konfigurowania aliasów BDE, które mają
być tworzone automatycznie przez program instalacyjny. Aby zapewnić
prawidłowe działanie zainstalowanej aplikacji należy zadbać o

dołączenie

wszystkich wymaganych aliasów. Aby dołączyć nowy alias należy kliknąć
przycisk

New

i wpisać nazwę w oknie dialogowym, przedstawionym na rysunku

29.7.

Aby przejść dalej należy kliknąć przycisk

OK

.

InstallShield pyta teraz, czy alias ma być instalowany do użycia zarówno z 16-
bitową, jak i 32-bitową wersją Borland Database Engine. Z reguły nie ma takiej
potrzeby, dlatego odpowiedni przełącznik można pozostawić w

stanie

nieaktywnym i kliknąć

OK

.

W trzecim kroku należy określić szczegółowe własności aliasu, który ma być
utworzony w systemie docelowym. Nazwa aliasu przenoszona jest z poprzedniego
okna dialogowego. W bieżącym oknie dialogowym należy natomiast wybrać typ
aliasu.

Jeśli alias odnosi się do tabeli lokalnej (np. typu Paradox lub dBASE), to
konieczne będzie wpisanie ścieżki dostępu do plików, zawierających dane. Należy
pamiętać, że w

ścieżce dostępu można stosować specjalne identyfikatory

katalogów, rozpoznawane przez program InstallShield. Na przykład, w przypadku
prostych programów instalacyjnych ścieżka dostępu do plików danych będzie
składała się jedynie z identyfikatora <INSTALLDIR>.

W wierszowym polu edycyjnym można określić dodatkowe parametry aliasu. Na
przykład, jeśli skorzystanie z aliasu wymaga podłączenia do odległego serwera
bazy danych, to w polu tym można wpisać nazwę serwera i identyfikator
użytkownika. Aby zdefiniować wartość parametru, wystarczy wpisać jego nazwę,
znak równości i wartość, np.:

ENABLE BCD=TRUE

Rysunek 29.7.
InstallShield
automatycznie
utworzy aliasy
BDE, stosowane
przez aplikację,
napisaną w Delphi.

background image

838

Część IV

Omawiane okno dialogowe przedstawiono na rysunku 29.8.

Czwarte i ostatnie okno dialogowe, związane z definiowaniem aliasów BDE,
zawiera jedynie informację o zakończeniu definiowania aliasu. Należy kliknąć
przycisk

Finish

, co ostatecznie zakończy proces definiowania.

Dołączanie sterowników SQL Links

Kliknięcie przycisku

Finish

spowoduje powrót do okna dialogowego

General

Options

. Jeśli aplikacja będzie łączyła się z odległym serwerem za pośrednictwem

sterowników SQL Links, należy uaktywnić odpowiednią opcję. Program poprosi
teraz o wybranie sterowników SQL Links, które mają być dołączone do aplikacji.
Dostępne są sterowniki dla serwera Sybase SQL Server (zarówno ze starszą
biblioteką DB-Library, jak i nowszą CT-Lib), Oracle, InterBase, Informix, DB2
i Microsoft SQL Server. Należy zaznaczyć na liście żądane sterowniki i kliknąć
przycisk

Finish

(zob. rysunek 29.9).

Rysunek 29.8.
W tym oknie
dialogowym należy
szczegółowo
zdefiniować nowy
alias.

Rysunek 29.9.
Z listy,
prezentowanej
w tym oknie
dialogowym,
należy wybrać
sterowniki SQL
Links, które mają
być zainstalowane
razem z aplikacją.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

839

UWAGA:

Jeśli w omawianym oknie dialogowym wybrany zostanie choć jeden sterownik
SQL Links, to na ekranie pojawi się informacja o konieczności zainstalowania
modułu BDE. Należy wówczas upewnić się, czy na stronie

General Options

aktywny jest przełącznik BDE (Borland Database Engine).

Aby przejrzeć listę plików, przygotowaną zgodnie z wybranymi opcjami, należy
przejść na stronę

Advanced

okna dialogowego i kliknąć

OK

.

Wybór komponentów i plików

Na tym etapie przygotowywania programu instalacyjnego jego autor definiuje
komponenty, wchodzące w skład aplikacji. Rozbicie aplikacji na komponenty
umożliwia przygotowanie kilku różnych wariantów instalacji. Każdy komponent
zawiera z reguły szereg logicznie powiązanych plików. Końcowy użytkownik
może zatem bez szkody dla podstawowej aplikacji pominąć niektóre komponenty,
korzystając z

opcji instalacji indywidualnej. W

omawianym tutaj prostym

przykładzie wystarczy zdefiniować podstawowe komponenty, niezbędne do
wygenerowania programu instalacyjnego.

Grupy i pliki - Groups and Files

Grupy zawierają zbiory związanych ze sobą plików - plików, które znajdą się
w tym samym katalogu na komputerze docelowym. Oprócz grup, związanych
z modułem BDE, InstallShield automatycznie tworzy grupę

Program Files

,

w której znajdą się pliki, tworzące rdzeń aplikacji. Aby otworzyć odpowiednie
okno dialogowe należy skorzystać z przycisku

Groups and Files

. Następnie należy

podwójnie kliknąć na grupie

Program Files

, co spowoduje rozwinięcie listy

zawartych w niej plików. Na razie grupa zawiera jedynie wskazany wcześniej
główny plik wykonywalny aplikacji.

Do otwartej grupy powinniśmy dodać inne pliki, niezbędne do uruchomienia
aplikacji. Elementy, wchodzące w skład środowiska Delphi, takie jak Borland
Database Engine, można pominąć, gdyż zostaną one uwzględnione w oddzielnych
grupach. Potencjalnymi kandydatami na członków grupy

Program Files

będą

wszelkie elementy lokalne w stosunku do aplikacji - takie, jak lokalne tabele baz
danych (i ich pliki pomocnicze), pakiety Delphi (pliki DPL), biblioteki DLL,
wymagane przez aplikację (na przykład

DBCLIENT.DLL

), itp. Pliki, które mogą

być używane przez więcej niż jedną aplikację, np., niektóre biblioteki DLL
i kontrolki ActiveX, powinny znaleźć się w katalogu wspólnym dla wszystkich
aplikacji zainstalowanych w systemie.

background image

840

Część IV

Pliki można umieszczać w grupie przeciągając je wprost z okna Eksploratora
Windows na listę plików, należących do grupy. Aby uruchomić Eksploratora
należy posłużyć się przyciskiem

Launch Explorer

.

Należy pamiętać, że istnieje możliwość samodzielnego definiowania innych grup,
co pozwala na rozmieszczenie plików w różnych katalogach. Aby dodać nową
grupę, należy kliknąć przycisk

Add Group

, wpisać nazwę nowej grupy i właściwy

dla niej katalog docelowy (w polu

Destination Directory

). Grupa zostanie

utworzona po naciśnięciu przycisku

OK

.

Specjalne identyfikatory katalogów

W polu

Destination Directory

(katalog docelowy) można używać specjalnych

identyfikatorów katalogów, rozpoznawanych przez program InstallShield. Dzięki
nim możliwe jest jednoznaczne zdefiniowanie ścieżki dostępu, bez dokładnej
znajomości struktury katalogów w systemie docelowym. Odpowiedni identyfikator
zastępuje np. rzeczywistą ścieżkę dostępu do katalogu

SYSTEM

środowiska

Windows albo do katalogu

Program Files

. W tabeli 29.1 wymieniono

i opisano specjalne identyfikatory katalogów, rozpoznawane przez program
InstallShield.

Tabela 29.1. Identyfikatory katalogów, rozpoznawane przez program

InstallShield.

Identyfikator Zastępowany przez...

<INSTALLDIR>

Katalog docelowy, określony przez użytkownika

<WINDIR>

Katalog, w którym znajduje się system Windows

<WINSYSDIR>

Katalog SYSTEM w Windows 95 (lub SYSTEM32
w Windows NT)

<WINSYS16DIR>

Katalog SYSTEM (z elementami 16-bitowymi)
w Windows NT

<WINDISK> Litera

napędu, na którym znajduje się system

Windows

<WINSYSDISK> Litera

napędu, na którym znajduje się katalog

SYSTEM

<ProgramFilesDir>

Katalog Program Files

<CommonFilesDir>

Katalog Common Files

[nazwa grupy]

Katalog docelowy wskazanej grupy

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

841

WSKAZÓWKA:

Do każdego z wymienionych powyżej identyfikatorów można dopisać nazwę
dowolnego podkatalogu. Na przykład zapis

<ProgramFilesDir>\Borland

zostanie zinterpretowany jako podkatalog Borland w standardowym katalogu

C:\Program

Files

.

Po zdefiniowaniu wszystkich niezbędnych grup i

przeciągnięciu do nich

odpowiednich plików, można przejść na stronę

Components

tego samego okna

dialogowego. Na rysunku 29.10 przedstawiono omówioną powyżej stronę

Groups

.

Komponenty - Components

Strona

Components

znajduje zastosowanie tylko przy tworzeniu programu

instalacyjnego z opcją instalacji indywidualnej. Podział aplikacji na komponenty
umożliwia użytkownikowi wybór składników, które mają zostać zainstalowane
i tych, które mają być pominięte. W omawianym, prostym przykładzie nie ma
potrzeby stosowania jakichkolwiek opcji, dostępnych za pośrednictwem strony

Components

. Dlatego na razie stronę tę pominiemy - na jej bliższe omówienie

przyjdzie czas przy okazji omawiania przykładu zaawansowanego programu
instalacyjnego.

Warianty instalacji - Setup Types

Również strona

Setup Types

używana jest tylko przy tworzeniu programu z opcją

instalacji indywidualnej. W

przypadku prostych programów instalacyjnych

dostępna jest jedynie opcja pełnej instalacji. Dlatego na razie pominiemy opis
strony

Setup Types

- powrócimy do niej przy okazji omawiania przykładu

zaawansowanego programu instalacyjnego.

Aby zachować utworzone definicje grup plików należy kliknąć

OK

.

Rysunek 29.10.
Na stronie Groups
można zdefiniować
i opisać grupy
plików.

background image

842

Część IV

Wybór elementów interfesju komunikacji z użytkownikiem

W kolejnym etapie pracy realizowana jest tylko jedna czynność - wybór okien
dialogowych (Dialog Boxes), które mają być wyświetlane przez tworzony program
instalacyjny.

Okna dialogowe - Dialog Boxes

Po kliknięciu przycisku

Dialog Boxes

na ekranie powinno pojawić się okno

dialogowe, przedstawione na rysunku 29.11.

Okna dialogowe, które zostaną zaznaczone na liście, będą kolejno pojawiać się
w trakcie instalacji. W tabeli 29.2 opisano dostępne okna.

Tabela 29.2. Okna dialogowe, które mogą pojawiać się w trakcie instalacji.

Nagłówek angielski

Nagłówek polski

Opis

Welcome Bitmap

Rysunek powitalny Ilustracja (mapa bitowa)

wyświetlana po uruchomieniu
instalatora.

Welcome Message

Komunikat
powitalny

Komunikat wyświetlany po
uruchomieniu instalatora.

Software License
Agreement

Umowa licencyjna
oprogramowania

Okno z tekstem umowy
licencyjnej - tekst w pliku
wskazanym przez autora
aplikacji.

Readme Information

Plik README -
informacje
z ostatniej chwili.

Okno z tekstem wskazanego
pliku "README".

Rysunek 29.11.
Okno Dialog Boxes
umożliwia wybór
okien dialogowych,
które pojawiać się
będą w trakcie
instalacji.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

843

Nagłówek angielski

Nagłówek polski

Opis

User Information

Dane o użytkowniku Okno, w którym użytkownik

może wprowadzić swoje dane.

Choose Destination
Location

Wybór katalogu
docelowego

Okno, w którym użytkownik
może wybrać katalog docelowy.

Setup Type

Rodzaj instalacji

Okno, umożliwiające
użytkownikowi wybór instalacji
typowej, minimalnej lub
indywidualnej.

Custom Setup

Instalacja
indywidualna

Okno z opcjami instalacji
indywidualnej.

Select Program Folder Wybór folderu

programów

Okno, umożliwiające
użytkownikowi wybór folderu
dla ikony aplikacji w menu Start.

Start Copying Files

Rozpoczęcie
kopiowania plików

Informacja poprzedzająca
kopiowanie plików.

Progress Indicator

Wskaźnik postępu

Informacja o postępie
kopiowania plików.

Billboards

Ilustracje

Ilustracja (mapa bitowa)
wyświetlana podczas
kopiowania.

Online registration

Rejestracja przez
modem

Opcja zdalnej rejestracji
użytkownika za pośrednictwem
modemu.

Setup Complete

Koniec instalacji

Komunikat o zakończeniu
instalacji.

Aby dane okno pojawiło się w trakcie instalacji, wystarczy zaznaczyć je na liście.
W przypadku niektórych okien możliwe jest określenie dodatkowych ustawień.
Aby uzyskać dostęp do parametrów aktualnie podświetlonego okna dialogowego
należy kliknąć przycisk

Settings

.

Custom Setup

Okno Custom Setup umożliwia instalację tylko wybranych przez użytkownika
komponentów.

background image

844

Część IV

Rysunki - mapy bitowe

InstallShield Express pozwala na stosowanie jedynie 16-kolorowych map
bitowych. Należy pamiętać o tym ograniczeniu, wybierając rysunek powitalny
i ilustrację. Przykładowy rysunek powitalny jest statyczny - nie zmieni się, gdy
użytkownik wybierze własny rysunek. Wybrana mapa bitowa pojawi się dopiero
po uruchomieniu programu instalacyjnego.

Zmiany w rejestrze systemowym

W następnym etapie tworzenia programu instalacyjnego należy zdefiniować
pozycje, jakie program instalacyjny ma wpisać do rejestru systemowego.
Większość aplikacji nie wymaga jednak wprowadzania zmian w rejestrze, dlatego
przy omawianiu prostego, przykładowego programu instalacyjnego możemy
pominąć ten etap.

Wybór folderów i ikon

W tym etapie pracy należy zdefiniować foldery programów i ikony, które mają być
tworzone przez program instalacyjny. W oknie dialogowym

General Settings

(ogólne ustawienia) można wybrać ikony, które powinny znaleźć się w folderze
aplikacji, umieszczonym w menu

Start

. To samo okno dialogowe umożliwia

zdefiniowanie parametrów wywołania aplikacji.

Okno dialogowe

Advanced Settings

umożliwia z kolei umieszczenie w menu

Start

osobnej ikony instalowanej aplikacji. Ponadto można tutaj wybrać alternatywny
katalog roboczy, załadować ikonę z zewnętrznego pliku zasobów i zdefiniować
klawisz skrótu dla aplikacji.

W przypadku prostego programu instalacyjnego wszystkie powyższe czynności
można pominąć. Jak już wcześniej wspomniano, na liście w oknie

General

Settings

automatycznie umieszczona została ikona głównego pliku

wykonywalnego aplikacji. Przy tworzeniu prostych procedur instalacyjnych nie ma
na ogół potrzeby dokonywania jakichkolwiek dalszych zmian w konfiguracji
folderów i ikon. Do zagadnienia tego powrócimy przy okazji omawiania przykładu
zaawansowanego programu instalacyjnego.

Przygotowanie zawartości nośników (Disk Builder)

Ostatnim etapem pracy, który autor aplikacji może wykonywać na własnym
komputerze, jest przygotowanie zawartości nośników. Polecenie

Run Disk Builder

tworzy pliki, reprezentujące zawartość nośników (tzw. disk images). Oczywiście
nośniki zawierać będą instalowaną aplikację i sam program instalacyjny. Należy
pamiętać o zadeklarowaniu właściwego typu nośnika - dzięki temu utworzone pliki

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

845

(disk images) będą miały właściwe rozmiary. Przed przystąpieniem do dalszych
działań należy zapisać bieżący projekt.

Po kliknięciu przycisku

Disk Builder

na ekranie pojawi się odpowiednie okno

dialogowe. W jego lewym-dolnym rodu znajduje się rozwijana lista, z której
można wybrać typ nośnika. Domyślnie przyjmowany jest rozmiar 1.44 MB. Do
wyboru jest szereg innych typów dyskietek oraz dysk CD-ROM. Aby rozpocząć
tworzenie plików, reprezentujących zawartość nośników należy skorzystać
z przycisku

Build

. Omawiane okno dialogowe przedstawiono na rysunku 29.12.

Jeśli przygotowanie zawartości nośników zakończy się bez przeszkód, to w lewej
części okna dialogowego pojawi się szereg ikon, reprezentujących dyskietki
instalacyjne (jeśli jako nośnik wskazano dysk CD-ROM, to pojawi się tylko jedna
ikona). Po przygotowaniu zawartości nośników należy kliknąć przycisk

Close

, co

spowoduje zamknięcie okna dialogowego.

Testowanie procedury instalacyjnej

W tym momencie stopień zaawansowania przygotowań pozwala już na
przetestowanie programu instalacyjnego. Przed jego pierwszym uruchomieniem
należy jednak zwrócić uwagę na kilka potencjalnych zagrożeń. Po pierwsze,
program instalacyjny należy zawsze testować na osobnym komputerze - w żadnym
wypadku nie na tym, na którym tworzona jest aplikacja. Konfiguracja komputera
przeznaczonego do testów powinna być jak najbardziej zbliżona do konfiguracji
komputera (lub komputerów) końcowego użytkownika. Dzięki temu test wypadnie
bardziej wiarygodnie i pozwoli wykryć ewentualne problemy jeszcze przed
pierwszą instalacją, przeprowadzaną u klienta.

Po drugie, jeśli już doszło do sytuacji, w której testowy projekt został
zainstalowany w systemie, zawierającym uprzednio standardowe komponenty
środowiska firmy Borland, należy zachować szczególną ostrożność przy próbach
odinstalowania aplikacji. Program odinstalowujący może bowiem usunąć pewne

Rysunek 29.12.
Pojawienie się
okna dialogowego
Disk Builder
rozpoczyna proces
przygotowania
zawartości
nośników, tj.
programu
instalacyjnego
i spakowanych
plików aplikacji.

background image

846

Część IV

kluczowe elementy, niezbędne do poprawnej pracy środowiska programistycznego
Delphi. Jeśli w trakcie odinstalowania Delphi akurat nie korzysta z danego
komponentu, to system Windows uzna, że komponent ten nie jest używany
i zezwoli na jego usunięcie. Program instalacyjny umieszcza szereg plików w tych
samych katalogach, w których znajdują się pliki Delphi. Dlatego odinstalowanie
aplikacji może skutecznie uniemożliwić dalsze korzystanie z Delphi.

Usunięcie niektórych plików uniemożliwi także ponowne uruchomienie procedury
Disk Builder, gdyż do przygotowania zawartości nośników niezbędne są pliki,
które właśnie odinstalowano. Brakujące pliki trzeba w takim przypadku ponownie
zainstalować z dysku CD-ROM, zawierającego pakiet Delphi. Dopiero to pozwoli
naprawić szkody, spowodowane przez procedurę odinstalowującą.

Powyższe rozważania nasuwają jeden wniosek: programy instalacyjne, utworzone
przy pomocy narzędzia InstallShield, należy testować na specjalnie
przygotowanych komputerach, chyba że nie przewiduje się usuwania raz
zainstalowanej aplikacji. Wskazane jest ponadto sporządzenie kopii plików
z

komputera testowego (w szczególności katalogu Windows i

rejestru

systemowego) przed zainstalowaniem aplikacji. W przyszłości, przy kolejnych
testach procedury instalacyjnej, będzie można zawsze wrócić do pierwotnej,
"czystej" konfiguracji systemu.

OSTRZEŻENIE:

Niepoprawnie przeprowadzony test procedury instalacyjnej w

programie

InstallShield może przynieść katastrofalne skutki. Niektóre zmiany, poczynione
w środowisku systemowym komputera, używanego do przygotowania aplikacji,
mogą okazać się niemal nieodwracalne. Konkurencyjny w

stosunku do

InstallShield program WISE umożliwia testowanie procedury instalacyjnej bez
wprowadzania jakichkolwiek rzeczywistych zmian w systemie. Dzięki temu autor
aplikacji może prześledzić proces instalacji bez obaw o stan swojego własnego
systemu. Natomiast program InstallShield może w

skrajnych przypadkach

nieodwracalnie zmodyfikować system, na którym przygotowywana jest procedura
instalacyjna. Należy podkreślić konieczność zachowania szczególnej ostrożności
przy uruchamianiu jakiegokolwiek programu instalacyjnego - nawet własnego
autorstwa.

Przygotowanie nośników

Ostatnim z

dziewięciu etapów tworzenia programu instalacyjnego jest

sporządzenie nośników dystrybucyjnych. Proces ten sprowadza się do skopiowania
przygotowanych uprzednio plików (disk images) na dyskietki lub dysk optyczny.
Gdy na ekranie pojawi się okno dialogowe

Copy To Floppy

wystarczy kliknąć

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

847

przycisk

Copy All Disk Images

. InstallShield skopiuje odpowiednie pliki na kolejne

dyskietki (zob. rysunek 29.13).

Gotowych nośników można już użyć do zainstalowania aplikacji na komputerze
końcowego użytkownika. Jednak przedtem należy je przetestować, instalując
aplikację na oddzielnym komputerze, przeznaczonym do prób. Pozwoli to raz
jeszcze skontrolować działanie programu instalacyjnego i upewnić się, że nośniki
są wolne od wad fizycznych.

Jeżeli program instalacyjny działa poprawnie, to należy zapisać projekt
w programie InstallShield, tak aby w przyszłości można było ponownie sporządzić
nośniki instalacyjne.

Zaawansowana procedura instalacji (Advanced Setup)

W niniejszej sekcji omówiony zostanie bardziej złożony przykład. Pokażemy,
w jaki sposób przygotować program instalacyjny, zawierający opcję instalacji
indywidualnej (Custom Setup). Instalacja indywidualna umożliwia użytkownikowi
końcowemu wybór plików, które mają zostać zainstalowane. Opcję taką wybiera
wielu zaawansowanych użytkowników - powinni oni mieć możliwość pominięcia
elementów aplikacji, które nie są niezbędne do jej funkcjonowania
w podstawowym zakresie. Opcja instalacji indywidualnej pozwala na ograniczenie
przestrzeni dyskowej, zajmowanej przez aplikację; jej obecność powoduje, że
program instalacyjny postrzegany będzie jako bardziej dopracowany.

Pierwsze kroki

Jeśli w programie InstallShield wciąż otwarty jest poprzedni, prosty projekt,
należy zapisać go na dysku, a następnie zamknąć, korzystając z opcji menu

File\Close

. Należy teraz nacisnąć CTRL+N w celu utworzenia nowego projektu.

Rysunek 29.13.
Okno dialogowe
Copy To Floppy
umożliwia
rozpoczęcie
kopiowania plików
na dyskietki lub
inne nośniki.

background image

848

Część IV

Na ekranie pojawi się okno dialogowe

New Project

. Podobnie jak w poprzednim,

prostym projekcie, należy w nim wpisać nazwę i typ projektu, katalog, a także
określić, czy w ramach projektu ma być tworzona opcja instalacji indywidualnej
(Custom Setup). W przypadku instalacji indywidualnej końcowy użytkownik może
dostosować przebieg instalacji do własnych potrzeb, w szczególności zainstalować
tylko wybrane komponenty aplikacji.

Należy zatem uaktywnić opcję

Include a custom setup type

, po czym wpisać

nazwę projektu w polu

Project Name

. Ponadto w polu

Project Path

należy wybrać

istniejący katalog (pliki z projektami instalacji dobrze jest przechowywać
w oddzielnym katalogu, takim jak

\DATA

lub

\My Documents

; w omawianym

przykładzie wybrano katalog

\My Documents

). Projekt powinien znaleźć się

w nowym podkatalogu o nazwie

Installs

. Aby utworzyć nowy podkatalog

należy najpierw wybrać

C:\My Documents

w polu

Project Path

, a następnie

wpisać

Installs

w polu

New Subdirectory

. Tworząc projekt, InstallShield

najpierw utworzy podkatalog, a następnie umieści w nim plik nowego projektu.

Na ekranie pojawi się teraz główne okno programu InstallShield. Jak już
wspomniano przy okazji omawiania prostej procedury instalacyjnej, w oknie tym
widoczna jest lista obejmująca dziewięć głównych etapów tworzenia programu
instalacyjnego. Każdy etap podzielony jest na szereg czynności cząstkowych.
Sekwencyjne wykonanie kolejnych czynności doprowadzi do utworzenia
programu instalacyjnego. InstallShield zaznacza czynności, które zostały już
wykonane - pomaga to zorientować się, na którym etapie znajduje się bieżący
projekt. Etapy tworzenia procedury instalacyjnej wymieniono i scharakteryzowano
w tabeli 29.3.

Tabela 29.3. Dziewięć etapów tworzenia procedury instalacyjnej w programie

InstallShield.

Etap Opis

Set the Visual Design

Ustalenie parametrów, decydujących o

postaci

Rysunek 29.14.
W oknie
dialogowym New
Project należy
wpisać informacje
o nowym projekcie.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

849

Etap Opis

graficznej procedury instalacyjnej.

Select InstallShields
Options for Delphi

Wybór komponentów środowiska firmy Borland,
które mają być dołączone do instalowanej aplikacji.

Specify Components and
Files

Grupowanie plików i tworzenie kilku wariantów
instalacji.

Select the User Interface
Components

Wybór okien dialogowych, które mają pojawiać się
na ekranie w trakcie instalacji.

Make Registry Changes

Przygotowanie automatycznej modyfikacji rejestru
systemowego.

Specify Folders and Icons Zdefiniowanie folderów i ikon, które mają zostać

utworzone w trakcie instalacji.

Run Disk Builder

Przygotowanie plików, będących kopiami dyskietek
(lub innych nośników) instalacyjnych.

Test the Installation

Testowanie procedury instalacyjnej.

Create Distribution Media Kopiowanie plików na dyskietki lub inne nośniki.

W momencie tworzenia nowego projektu, InstallShield wskazuje na pierwszy etap
tworzenia programu instalacyjnego - Application Information.

Postać graficzna procedury instalacyjnej

Jak już wspomniano w sekcji „Prosta procedura instalacyjna”, w pierwszym
z dziewięciu etapów tworzenia programu instalacyjnego należy wprowadzić
informacje o instalowanej aplikacji i określić szereg parametrów, decydujących
o wyglądzie programu. Aby wprowadzić dane o aplikacji, m.in. nazwę głównego
pliku wykonywalnego, numer wersji, itd. należy kliknąć przycisk

Application

Information

.

Informacje o aplikacji - Application information

W sekcji

App Info

autor programu instalacyjnego wpisuje nazwę aplikacji, jej

głównego pliku wykonywalnego i numer wersji. Możliwe jest również wpisanie
nazwy firmy, jeśli w danym projekcie różni się ona od podanej przy instalacji
programu InstallShield.

W polu

Application Name InstallShield

wpisuje domyślnie nazwę projektu, podaną

wcześniej w oknie

New Project

. Nazwa projektu może składać się z więcej niż

jednego wyrazu, należy jednak pamiętać, że wpisana nazwa stanie się

background image

850

Część IV

automatycznie nazwą katalogu docelowego. Dlatego niewskazane jest
wykorzystywanie pełnej długości pola, w którym można wpisać nazwę, składającą
się nawet z osiemdziesięciu znaków.

Zawartość pola

Application Name

wykorzystywana jest w kilku sytuacjach:

„W oknach dialogowych

Welcome Message

(komunikat powitalny) i

Choose

Destination Location

(wybór katalogu docelowego).

„Jako element domyślnie proponowanej ścieżki dostępu w polu

Choose

Destination Location

. Domyślna ścieżka dostępu ma postać:

C:\Program

Files\Nazwa firmy\Nazwa aplikacji

UWAGA:

Dane, wpisane w polu

Application Name

, automatycznie zastąpią ustawienia

wybrane w polu

Choose Destination Location

. Jeśli użytkownik zmienił domyślny

katalog docelowy (

Destination Location

), to zmiany te zostaną utracone.

Nazwy, wpisywane w omawianym oknie dialogowym, używane są również w jako
identyfikatory niektórych kluczy w

rejestrze systemowym, tworzonych

automatycznie przez program instalacyjny: klucza w gałęzi Uninstall, klucza
w gałęzi App Paths i

klucza z

informacjami o

użytkowniku. Pierwszy

z powyższych trzech kluczy przyjmuje następującą postać:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Uninstall\Nazwa aplikacji

W kluczu tym wpisywane są dwie wartości:

DisplayName

(nazwa wyświetlana

na liście

Dodaj/Usuń programy

w Panelu sterowania) i

UninstallString

(wywołanie programu

UNINST.EXE

, odinstalowującego aplikację).

Drugi klucz, umieszczany w gałęzi

App

Paths

, przyjmuje taką formę:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
App Paths\TWOJEXE.EXE

Trzeci klucz, zawierający informacje o użytkowniku, wygląda tak:

HKEY_LOCAL_MACHINE\SOFTWARE\Firma\Nazwa aplikacji\Wersja

Wartości tego klucza zawierają imię i nazwisko użytkownika, nazwę firmy
i ewentualnie numer seryjny. Aplikacja może odczytywać te wartości z rejestru
systemowego.

Zawartość pola

Application Executable

określa główny plik wykonywalny

aplikacji. Plik ten zostanie automatycznie dodany do grupy

Program Files

w oknie

dialogowym

Groups and Files

(pod warunkiem, że w polu tym nie zdefiniowano

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

851

jeszcze żadnych innych grup i plików). Z kolei w oknie dialogowym

General Icon

Settings

tworzona jest odpowiednia ikona (o ile nie zdefiniowano w nim wcześniej

żadnych innych pozycji). Aby wybrać plik wykonywalny z listy należy posłużyć
się przyciskiem wielokropka, widocznym obok pola

Application Executable

.

W polu

Version

wpisać można numer wersji aplikacji. Pozwala to rozróżnić wersje

tego samego programu zainstalowane na jednym komputerze. InstallShield próbuje
odczytać numer wersji z

zasobu VERSIONINFO, dołączonego do pliku

wykonywalnego. Odczytana wartość jest automatycznie proponowana w polu
Version.

WSKAZÓWKA:

W rozdziale 13 - „Ostateczne poprawki” opisano metodę dodawania standardowej
informacji w wersji do aplikacji Delphi.

W polu

Company

wpisywana jest automatycznie nazwa firmy, podana podczas

instalacji programu InstallShield. Można jednak zamiast niej wpisać dowolną inną
nazwę. Jak już wspomniano, wpisana tutaj nazwa zostanie automatycznie
skopiowana do rejestru systemowego.

Na rysunku 29.15 przedstawiono wypełnioną stronę

App Info

.

Okno główne - Main Window

Na stronie

Main Window

autor programu instalacyjnego wpisuje tytuł jego

głównego okna, wybiera ewentualny rysunek (mapę bitową) i ustala kolor tła.
W polu

Main Title

(główny tytuł) wpisywana jest automatycznie nazwa aplikacji,

podana na stronie

App Info

. Można jednak samodzielnie wpisać inny tytuł, niosący

więcej informacji niż sama tylko nazwa projektu. Tytuł w postaci tekstu można
zastąpić rysunkiem - mapą bitową.

Rysunek 29.15.
Informacje
o aplikacji wpisuje
się na stronie App
Info.

background image

852

Część IV

Tytuł nie powinien być zbyt długi, gdyż może nie zmieścić się w oknie.

Należy teraz kliknąć przycisk

Browse

, widoczny obok pola

Logo Bitmap

i rysunek

(mapę bitową), który ma być używany w charakterze znaku graficznego aplikacji.
W podkatalogu

Images\Splash

głównego katalogu Delphi dostępnych jest

kilka gotowych rysunków. W programie InstallShield Express używać można
wyłącznie 16-kolorowych map bitowych.

Po wybraniu rysunku należy jeszcze ustalić jego położenie. Znak graficzny
aplikacji umieszczany jest domyślnie w prawym-górnym rogu ekranu. Na ogół nie
ma powodu, by zmieniać domyślnie proponowane położenie albo kolor tła ekranu.

Stronę

Main Window

przedstawiono na rysunku 29.16.

Opcje dodatkowe - Features

Jak już wcześniej wspomniano, strona

Features

zawiera tylko jeden element -

przełącznik, decydujący o utworzeniu specjalnego programu odinstalowującego
aplikację. Przełącznik ten powinien pozostać uaktywniony, dlatego należy jedynie
kliknąć

OK

, co spowoduje zachowanie ustawień, dotyczących wyglądu procedury

instalacyjnej.

Opcje programu Install Shield, dotyczące Delphi

W kolejnym etapie przygotowywania programu instalacyjnego należy wybrać
wymagane przez aplikacją moduły oprogramowania, związane ze środowiskiem
Delphi. O ile aplikacja nie korzysta z innego niż BDE aparatu bazy danych,
konieczne będzie zainstalowanie właśnie Borland Database Engine. Podobnie,
jeżeli aplikacja uzyskuje dostęp do odległych serwerów, korzystając ze
sterowników SQL Links firmy Borland, to oczywiście odpowiednie sterowniki
powinny znaleźć się w pakiecie instalacyjnym.

Rysunek 29.16
Strona opisująca
okno główne -
Main Window -
w programie
InstallShield.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

853

Opcje ogólne - General Options

Aby wybrać moduły, z których korzystać będzie instalowana aplikacja, należy
kliknąć przycisk

General Options

. Moduł SQL Links może być instalowany tylko

łącznie z Borland Database Engine.

Dołączanie BDE

Aby dołączyć do pakietu instalacyjnego moduł BDE należy uaktywnić odpowiedni
przełącznik. Na ekranie pojawi się drugie okno dialogowe, w którym InstallShield
pyta, czy program instalacyjny ma przeprowadzać pełną (Full) czy cząstkową
(Partial) instalacje BDE. Należy wybrać domyślnie proponowaną pełną instalację
i kliknąć

OK

.

Definiowanie aliasów BDE, przeznaczonych do dołączenia

Kolejny zestaw okien dialogowych służy do konfigurowania aliasów BDE, które
mają być tworzone automatycznie przez program instalacyjny. Aby zapewnić
prawidłowe działanie zainstalowanej aplikacji należy zadbać o

dołączenie

wszystkich wymaganych aliasów. Aby dołączyć nowy alias należy kliknąć
przycisk

New

i wpisać nazwę w oknie dialogowym, przedstawionym na rysunku

29.17.

Aby przejść dalej należy kliknąć przycisk

OK

.

InstallShield pyta teraz, czy alias ma być instalowany do wykorzystania zarówno
z 16-bitową, jak i 32-bitową wersją Borland Database Engine. Aplikacje 32-bitowe
nie korzystają z 16-bitowych aliasów, dlatego odpowiedni przełącznik można
pozostawić w stanie nieaktywnym i kliknąć

OK

.

W trzecim kroku należy określić szczegółowe własności aliasu, który ma być
utworzony w systemie docelowym. Nazwa aliasu przenoszona jest z poprzedniego
okna dialogowego. W bieżącym oknie dialogowym należy natomiast wybrać typ
aliasu.

Jeśli alias odnosi się do tabeli lokalnej (np. typu Paradox lub dBASE), to
konieczne będzie wpisanie ścieżki dostępu do plików, zawierających dane. Należy
pamiętać, że w ścieżce dostępu można stosować nazwy grup plików (ujęte
w

nawiasy kwadratowe). Zostaną one zastąpione nazwami katalogów,

Rysunek 29.17.
InstallShield
automatycznie
utworzy aliasy
BDE, stosowane
przez aplikację,
napisaną w Delphi.

background image

854

Część IV

przypisanymi do tych grup. Na przykład, zamiast

<INSTALLDIR>\Data

lub

C:\DATA\RENTMAN\DATA

w polu

Path

(ścieżka dostępu) można wpisać po

prostu [Data Files], tj. odwołanie do grupy plików, która zostanie zdefiniowana
później. InstallShield zastąpi nazwę grupy ścieżką dostępu do jej katalogu
docelowego.

W wierszowym polu edycyjnym można określić dodatkowe parametry aliasu. Aby
zdefiniować wartość parametru, wystarczy wpisać jego nazwę, znak równości
i wartość, np.:

USER NAME=SYSDBA

Omawiane okno dialogowe przedstawiono na rysunku 29.18.

Czwarte i ostatnie okno dialogowe, związane z definiowaniem aliasów BDE,
zawiera jedynie informację o zakończeniu definiowania aliasu. Należy kliknąć
przycisk

Finish

, co ostatecznie zakończy proces definiowania.

Dołączanie sterowników SQL Links

Kliknięcie przycisku

Finish

spowoduje powrót do okna dialogowego

General

Options

. Jeśli aplikacja będzie łączyła się z odległym serwerem za pośrednictwem

sterowników SQL Links, należy uaktywnić odpowiednią opcję. Program poprosi
teraz o wybranie sterowników SQL Links, które mają być dołączone do aplikacji.
Dostępne są sterowniki dla serwera Sybase SQL Server, Oracle, InterBase,
Informix, DB2 i Microsoft SQL Server. Należy zaznaczyć na liście żądane
sterowniki i kliknąć przycisk

Finish

.

Wybór komponentów i plików

W tym etapie przygotowywania programu instalacyjnego jego autor definiuje
komponenty, wchodzące w skład aplikacji. Rozbicie aplikacji na komponenty
umożliwia przygotowanie kilku różnych wariantów instalacji. Każdy komponent

Rysunek 29.18.
W tym oknie
dialogowym należy
szczegółowo
zdefiniować nowy
alias.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

855

zawiera z reguły szereg logicznie powiązanych plików. Końcowy użytkownik
może zatem bez szkody dla podstawowej aplikacji pominąć niektóre komponenty,
korzystając z opcji instalacji indywidualnej. Autor programu instalacyjnego może
zdefiniować grupy plików, należących do aplikacji ale przechowywanych
w oddzielnych katalogach. Dzięki temu użytkownik końcowy może zrezygnować
z instalacji niektórych plików pomocniczych.

Grupy i pliki - Groups and Files

Grupy zawierają zbiory związanych ze sobą plików - plików, które znajdą się
w tym samym katalogu na komputerze docelowym. Oprócz grup, związanych
z modułem BDE, InstallShield automatycznie tworzy trzy grupy Program Files
(pliki programu), Help Files (pliki pomocy) i Sample Files (pliki przykładowe).

Aby otworzyć odpowiednie okno dialogowe należy skorzystać z przycisku

Groups

and

Files

. Następnie należy podwójnie kliknąć na grupie

Program

Files

, co

spowoduje rozwinięcie listy zawartych w niej plików. Na razie grupa zawiera
jedynie wskazany wcześniej główny plik wykonywalny aplikacji.

Do otwartej grupy należy dodać inne pliki, niezbędne do uruchomienia aplikacji.
Elementy, wchodzące w skład środowiska Delphi, takie jak Borland Database
Engine, można pominąć, gdyż zostaną one uwzględnione w oddzielnych grupach.
W grupie

Program Files

nie należy również umieszczać plików danych aplikacji -

za chwilę pokażemy, w jaki sposób utworzyć dla nich osobną grupę. Do grupy

Program Files

powinny natomiast trafić wszelkie inne elementy niezbędne do

działania aplikacji, takie jak pakiety Delphi, biblioteki DLL, pliki konfiguracyjne,
informacyjne, itp. Pliki, które mogą być używane przez więcej niż jedną aplikację
powinny znaleźć się w

katalogu wspólnym dla wszystkich aplikacji

zainstalowanych w systemie. Bardzo często funkcję tę pełni katalog podkatalog

Common Files

katalogu

Program Files

.

Pliki można umieszczać w grupie, przeciągając je wprost z okna Eksploratora
Windows na listę plików, należących do grupy. Aby uruchomić Eksploratora
należy posłużyć się przyciskiem

Launch Explorer

.

Po przeciągnięciu wszystkich niezbędnych plików do grupy Program Files, można
przystąpić do kompletowania grupy Help Files. Opcja instalacji indywidualnej
powinna dopuszczać pominięcie plików pomocy. Pliki takie zajmują zwykle dużo
miejsca, a wielu użytkowników w ogóle z nich nie korzysta. Przeciąganie plików
do grupy Help Files odbywa się tak samo, jak w przypadku grupy Program Files.

Grupę Sample Files można usunąć, o ile do aplikacji nie będą dołączane pliki
przykładowe. Do aplikacji, pisanych na zamówienie, nie dołącza się na ogół
plików przykładowych. Nie ma zatem powodu, by pozostawiać pustą grupę
plików.

background image

856

Część IV

Należy natomiast utworzyć nową grupę, przeznaczoną na pliki bazy danych
aplikacji. Oto odpowiednia procedura postępowania:

1. Kliknąć przycisk

Add Group

. W polu

Group Name

wpisać nazwę grupy

Database Files

. W polu katalogu docelowego (Destination Directory)

powinien pozostać wpisany identyfikator

<INSTALLDIR

>.

2. Kliknąć przycisk

OK

.

3. Przeciągnąć pliki bazy danych z okna Eksploratora Windows do nowej grupy

Data Files. Wyodrębnienie specjalnej grupy, zawierającej pliki danych,
pozwala przechowywać pliki programu i jego dane w oddzielnych katalogach.

4. Po przeciągnięciu wszystkich plików można przejść na stronę

Components

.

Omówioną tutaj stronę

Groups

ilustruje rysunek 29.19.

Komponenty - Components

Podział aplikacji na komponenty umożliwia użytkownikowi wybór składników,
które mają zostać zainstalowane i tych, które mają być pominięte. Na stronie

Components

autor programu instalacyjnego kojarzy grupy, utworzone wcześniej

na stronie

Groups

, z komponentami instalacji, które końcowy użytkownik będzie

mógł włączać lub pomijać w swojej instalacji indywidualnej. Z reguły każda grupa
plików ma swój odpowiednik w

postaci komponentu. Między grupami

a komponentami występuje zwykle relacja typu "jeden do jednego".

Podobnie, jak na stronie

Groups

, także i tutaj występują trzy standardowe

elementy (oprócz komponentów związanych z

BDE) - komponenty

Application Files

(pliki aplikacji),

Help and Tutorial Files

(pliki

pomocy i

samouczka) i

Sample Files

(pliki przykładowe). Jeśli przy

Rysunek 29.19.
Na stronie Groups
można zdefiniować
grupy plików
i określić ich
zawartość.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

857

definiowaniu grup usunięta została grupa Sample Files, to oczywiście należy
usunąć także odpowiadający jej komponent.

Na stronie

Components

w prosty sposób dodawać można komponenty, których nie

ma na proponowanej liście, a

także zmieniać nazwy i

opisy istniejących

komponentów.

Do poprawnej pracy aplikacja wymaga plików danych, dlatego nie ma powodu, by
tworzyć oddzielny komponent, skojarzony z grupą Data Files. Grupa ta - podobnie
jak Program Files - zostanie skojarzona z komponentem

Application Files

.

Z kolei grupa Help Files powinna być skojarzona z osobnym komponentem, tak
aby końcowy użytkownik mógł z niej zrezygnować.

Odpowiednie modyfikacje rozpoczniemy od zmiany nazwy grupy Help and
Tutorial Files. Zamiast proponowanej nazwy można wpisać nazwę polską. Ponadto
większość aplikacji, przeznaczonych dla wąskich grup odbiorców, nie zawiera
specjalnego samouczka. Dlatego nowa nazwa powinna brzmieć np. Pliki pomocy.
Aby zmienić nazwę, należy kliknąć przycisk

Modify Component

, po czym wpisać

nową nazwę w polu

Component Name

. Zmienić można również opis komponentu

(pole

Description

). Aby zachować wprowadzone modyfikacje należy kliknąć

OK

.

Kolejnym krokiem powinno być skojarzenie grup z

poszczególnymi

komponentami. Aby skojarzyć grupę z komponentem należy kliknąć (zaznaczyć)
żądany komponent na liście

Application

Components

, podobnie zaznaczyć grupę

na liście

File

Groups

, a następnie kliknąć przycisk

Add to Application Component

.

Przycisk ten znajduje się pod listą

File Groups

. Jeśli zaznaczona grupa jest już

skojarzona z

jakimś komponentem, to wspomniany przycisk pozostanie

nieaktywny.

InstallShield automatycznie kojarzy standardowe grupy i komponenty aplikacji,
dlatego grupy Program Files i Help Files są już skojarzone z odpowiednimi
komponentami. Niestety, grupy plików, związanych z BDE, nie są automatycznie
kojarzone z odpowiadającymi im komponentami aplikacji - skojarzenie to należy
zadeklarować samodzielnie. Z

odpowiednim komponentem musi też być

skojarzona nowa, dodatkowo utworzona grupa Database Files. Aby skojarzyć
grupę z komponentem należy:

1. Kliknąć grupę

Database

Files

na liście

File

Groups

.

2. Klikn¹æ komponent

Application Files

(lub np.

Pliki aplikacji

,

jeśli zmieniono nazwę komponentu) na liście

Application Components

.

3. Kliknąć przycisk

Add to Application Component

, co spowoduje dodanie

zaznaczonej grupy do zaznaczonego komponentu.

4. Powyższy proces należy powtórzyć w odniesieniu do wszystkich grup plików,

związanych z modułem BDE.

background image

858

Część IV

Proces definiowania komponentu zilustrowano na rysunku 29.20.

Po zdefiniowaniu wszystkich komponentów aplikacji, można przejść na trzecią
stronę omawianego okna dialogowego, dotyczącą wariantów instalacji - Setup
Types.

Warianty instalacji - Setup Types

Na stronie

Setup Types

autor programu instalacyjnego może skojarzyć utworzone

wcześniej komponenty aplikacji z jednym z trzech wbudowanych wariantów
instalacji:

Compact

(minimalna),

Custom

(indywidualna) lub

Typical

(typowa).

InstallShield dopuszcza zdefiniowanie tylko tych trzech wariantów instalacji; nie
ma możliwości dodania własnych wariantów ani zmiany nazwy istniejących.

Skojarzenie komponentu z wariantem instalacji przebiega w prosty sposób.
Wystarczy zaznaczyć komponent na liście

Application Components

, zaznaczyć

wariant instalacji na liście

Setup

types

, a następnie kliknąć przycisk

Add

to

Setup

Type

.

W momencie pierwszego otwarcia strony

Setup

Types

, każdy ze zdefiniowanych

uprzednio komponentów aplikacji skojarzony jest ze wszystkimi trzema
wariantami instalacji. Skojarzenie takie jest poprawne w przypadku instalacji
indywidualnej (Custom), gdyż użytkownik sam musi zdecydować, które
z komponentów chce zainstalować, a które - pominąć. Również instalacja typowa
obejmuje zazwyczaj wszystkie dostępne komponenty aplikacji. Gdyby w typowej
instalacji niektóre z komponentów zostały pominięte, to użytkownicy, chcący
w pełni wykorzystać potencjał programu, musieliby wybierać wariant instalacji
indywidualnej.

Wariant instalacji minimalnej (Compact) obejmuje zazwyczaj tylko te
komponenty, bez których aplikacja nie może funkcjonować nawet

Rysunek 29.20
Podział aplikacji
na komponenty
umożliwia
użytkownikowi
wybór składników,
które mają zostać
zainstalowane
i tych, które mają
być pominięte.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

859

w podstawowym zakresie. Można tutaj pominąć pliki pomocy. Użytkownikom,
którzy wybierają ten wariant instalacji, zależy zwykle na ograniczeniu zużycia
przestrzeni dyskowej.

Warianty Custom i Typical są zatem od razu skonfigurowane poprawnie.
Konieczne będzie jedynie zmodyfikowanie wariantu Compact. W związku z tym
należy kliknąć wariant Compact i usunąć skojarzony z nim komponent

Pliki

pomocy

.

Kliknięcie

OK

spowoduje zachowanie definicji grup, komponentów i wariantów

instalacji. Omówioną tutaj stronę

Setup Types

przedstawiono na rysunku 29.21.

Wybór elementów interfesju komunikacji z użytkownikiem

Po przygotowaniu poszczególnych wariantów instalacji można przejść do wyboru
elementów interfejsu komunikacji z

użytkownikiem. Na tym etapie pracy

realizowana jest tylko jedna czynność - wybór okien dialogowych (Dialog Boxes),
które mają być wyświetlane przez tworzony program instalacyjny.

Okna dialogowe - Dialog Boxes

Chcąc wybrać okna dialogowe, które będą pojawiać się w trakcie instalacji, należy
kliknąć przycisk

Dialog Boxes

. Aby dane okno pojawiło się w trakcie instalacji,

wystarczy zaznaczyć je na liście. Pola

Setup Types

i

Custom Setup

są już

zaznaczone, gdyż przy tworzeniu nowego projektu w programie InstallShield
uwzględniono opcję instalacji indywidualnej.

W przypadku niektórych okien możliwe jest określenie dodatkowych ustawień.
Aby uzyskać dostęp do parametrów aktualnie podświetlonego okna dialogowego
należy kliknąć przycisk

Settings

. Na przykład, jeśli po uruchomieniu programu

Rysunek 29.21.
W oknie
dialogowym Setup
Types różnym
wariantom
instalacji
przypisuje się
poszczególne
komponenty
aplikacji.

background image

860

Część IV

instalacyjnego na ekranie powinna pojawić się powitalna ilustracja, należy
zaznaczyć na liście okno dialogowe

Welcome

Bitmap

, a następnie przejść na

stronę ustawień

Settings

. Na stronie

Settings

należy skorzystać z przycisku

wielokropka, co umożliwi wybór pliku z mapą bitową, która ma być użyta
w charakterze powitalnej ilustracji (zob. rysunek 29.22).

Rysunek, widoczny w oknie podglądu (Preview) ma charakter przykładowy i nie
zmieni się, gdy autor programu instalacyjnego wybierze własną mapę bitową.
Nowy rysunek widoczny będzie dopiero po uruchomieniu programu
instalacyjnego. Należy ponadto pamiętać, że w programie InstallShield Express
w charakterze rysunków powitalnych i ilustracji (billboards) używać można
wyłącznie 16-kolorowych map bitowych.

Plik README i umowa licencyjna oprogramowania

Program instalacyjny może wyświetlać na ekranie tekst pliku

README

(najświeższe informacje, pominięte w

zwykłej dokumentacji) lub umowy

licencyjnej oprogramowania. Dokumenty powinny być zapisane w

plikach

tekstowych. Należy pamiętać, że tekst nie będzie automatycznie formatowany.
Dlatego pliki tekstowe powinny zawierać w odpowiednich miejscach znaki końca
wiersza. Tekst, widoczny w oknie podglądu (Preview) ma charakter przykładowy
i nie zmieni się, gdy autor programu instalacyjnego wybierze własny plik
tekstowy.

Ilustracje (Billboards)

Mapa bitowa, która ma być używana podczas instalacji w charakterze ilustracji
powinna nosić nazwę

SETUP1.BMP

albo

SETUP1.WMF

. Katalog, w którym

znajduje się mapa bitowa określić można na stronie Settings.

Rysunek 29.22.
Na stronie Settings
określić można
dodatkowe
parametry okien
dialogowych.

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

861

Zmiany w rejestrze systemowym

W następnym etapie tworzenia programu instalacyjnego należy zdefiniować
pozycje rejestru systemowego, wymagane przez aplikację. Większość aplikacji nie
wymaga wprowadzania zmian w

rejestrze. InstallShield tworzy w

rejestrze

systemowym kilka standardowych wpisów, dotyczących aplikacji. Jeśli aplikacja
wymaga jakichkolwiek dodatkowych kluczy w rejestrze, to należy pamiętać
o zdefiniowaniu ich z aktywną opcją

Uninstall keys

. Zagwarantuje to usunięcie

tych kluczy z

rejestru systemowego podczas odinstalowywania aplikacji.

Aplikacje, spełniające wymogi Windows Setup Guidelines, powinny zawsze po
sobie "posprzątać".

OSTRZEŻENIE:

Podczas usuwania kluczy z rejestru systemowego Windows należy zachować
szczególną ostrożność. Usunięcie niewłaściwego klucza uniemożliwi poprawne
działanie którejś z zainstalowanych aplikacji. Zgromadzenie wszystkich informacji
konfiguracyjnych w centralnej bazie danych ma wady i zalety. W szczególności,
zbyt łatwo można "ogłupić" dowolną aplikację usuwając lub modyfikując jej
klucze w rejestrze.

Wybór folderów i ikon

Na tym etapie pracy należy zdefiniować foldery programów i ikony, które mają
być tworzone przez program instalacyjny. W oknie dialogowym

General Settings

(ogólne ustawienia) można wybrać ikony, które powinny znaleźć się w folderze
aplikacji, umieszczonym w menu

Start

. To samo okno dialogowe umożliwia

zdefiniowanie parametrów wywołania aplikacji.

Okno dialogowe

Advanced Settings

umożliwia z kolei umieszczenie w menu

Start

osobnej ikony instalowanej aplikacji. Ponadto można tutaj wybrać alternatywny
katalog roboczy, załadować ikonę z zewnętrznego pliku zasobów i zdefiniować
klawisz skrótu dla aplikacji.

Aby otworzyć odpowiednie okno dialogowe należy kliknąć przycisk

General

Settings

. Jak już wcześniej wspomniano, na liście w oknie

General

Settings

automatycznie umieszczona została ikona głównego pliku wykonywalnego
aplikacji. Jej opis należy jednak zmienić na bardziej czytelny - sama nazwa
projektu nie niesie zbyt wiele informacji. W tym celu należy kliknąć w polu opisu
i zamienić nazwę projektu na dwu- lub trzy wyrazowy, bardziej czytelny opis
aplikacji. Wpisany tutaj tekst nie powinien jednak być zbyt długi, gdyż
wyświetlany będzie przy ikonie aplikacji w folderach programów. Aby zachować
zmiany należy kliknąć przycisk

Modify

Icon

.

background image

862

Część IV

Aby powrócić do głównego okna programu InstallShield klikamy

OK

.

Przygotowanie zawartości nośników (Disk Builder)

Ostatnim etapem pracy, który autor aplikacji powinien wykonywać na własnym
komputerze, jest przygotowanie zawartości nośników. Polecenie Run Disk Builder
tworzy pliki, reprezentujące zawartość nośników (tzw. disk images). Oczywiście
nośniki zawierać będą instalowaną aplikację i sam program instalacyjny. Należy
pamiętać o zadeklarowaniu właściwego typu nośnika - dzięki temu utworzone pliki
(disk images) będą miały właściwe rozmiary. Przed przystąpieniem do dalszych
działań należy zapisać bieżący projekt.

Po kliknięciu przycisku

Disk Builder

na ekranie pojawi się odpowiednie okno

dialogowe. W jego lewym-dolnym rodu znajduje się rozwijana lista, z której
można wybrać typ nośnika. Domyślnie przyjmowany jest rozmiar 1.44 MB. Do
wyboru jest szereg innych typów dyskietek oraz dysk CD-ROM. Aby rozpocząć
tworzenie plików, reprezentujących zawartość nośników należy skorzystać
z przycisku

Build

.

Jeśli przygotowanie zawartości nośników zakończy się bez przeszkód, to w lewej
części okna dialogowego pojawi się szereg ikon, reprezentujących dyskietki
instalacyjne (jeśli jako nośnik wskazano dysk CD-ROM, to pojawi się tylko jedna
ikona). Po przygotowaniu zawartości nośników należy kliknąć przycisk

Close

, co

spowoduje zamknięcie pola dialogowego.

Testowanie procedury instalacyjnej

Na tym etapie pracy można już przystąpić do testowania procedury instalacyjnej.
Test należy przeprowadzać na osobnym, przeznaczonym do tego celu komputerze,
w żadnym wypadku nie na komputerze używanym do pisania aplikacji lub
komputerze użytkownika końcowego. Jak już wspomniano, próba usunięcia
elementów, współużytkowanych przez zainstalowaną aplikację i Delphi, może
doprowadzić do poważnych problemów. Każdy program, nawet najprostszy,
bezpieczniej jest zawsze testować na oddzielnym komputerze.

Na komputerze używanym do pracy, a nie do testów, można bezpiecznie
prześledzić działanie programu instalacyjnego aż do momentu, w którym zamierza
on rozpocząć kopiowanie plików. Nie wolno natomiast dopuścić do faktycznego
skopiowania plików aplikacji na dysk.

Kopiowanie danych na nośniki

Ostatnim z

dziewięciu etapów tworzenia programu instalacyjnego jest

sporządzenie nośników dystrybucyjnych. Proces ten sprowadza się do skopiowania

background image

Rozdział 28 Przygotowanie programu instalacyjnego aplikacji

863

przygotowanych uprzednio plików (disk images) na dyskietki lub dysk optyczny.
Gdy na ekranie pojawi się okno dialogowe

Copy To Floppy

wystarczy kliknąć

przycisk

Copy All Disk Images.

InstallShield skopiuje odpowiednie pliki na kolejne

dyskietki.

Gotowych nośników można już użyć do zainstalowania aplikacji na komputerze
końcowego użytkownika. Jednak przedtem należy je przetestować, instalując
aplikację na oddzielnym komputerze, przeznaczonym do prób. Pozwoli to raz
jeszcze skontrolować działanie programu instalacyjnego i upewnić się, że nośniki
są wolne od wad fizycznych.

Należy pamiętać o

zapisaniu projektu w

programie InstallShield, tak aby

w przyszłości można było ponownie sporządzić nośniki instalacyjne.

Instalowanie obiektów bazy danych

W tej sekcji przedstawimy kilka wskazówek, dotyczących dystrybucji obiektów
baz danych typu klient-serwer, należących do aplikacji. Bazy danych typu klient-
serwer nie można, w przeciwieństwie do lokalnej tabeli, po prostu dołączyć do
aplikacji. W omawianym wcześniej przykładzie utworzono specjalną grupę
plików, zawierającą plik danych InterBase

RENTMAN.GDB

, należący do aplikacji

RENTMAN

. Jeśli jednak baza danych miałaby być przechowywana na odległym

serwerze lub w ogóle innej platformie systemowej, to nie dałoby się zastosować
tego rodzaju rozwiązania. Musi zatem istnieć jakiś sposób, pozwalający
zrezygnować z dołączania wszystkich plików bazy danych do aplikacji.

Najlepszym rozwiązaniem jest dołączenie do aplikacji skryptów SQL, które
wykonywane będą automatycznie przy jej pierwszym uruchomieniu, albo które
administrator bazy danych musi samodzielnie uruchomić przed pierwszą próbą
użycia aplikacji. Ten drugi wariant jest nawet bezpieczniejszy, gdyż autorowi
aplikacji trudno przewidzieć, jakimi narzędziami do obsługi baz danych
w systemie klienckim dysponować będą przyszli użytkownicy.

Wszystkie poważne systemy zarządzania bazami danych oferują narzędzia do
wykonywania skryptów SQL. Załóżmy, że baza danych

RENTMAN

ma być

tworzona na serwerze Microsoft SQL. Odpowiedni skrypt SQL byłby zapewne
uruchamiany przy pomocy narzędzia ISQL, dołączanego do pakietu SQL Server,
np.:

isql -Usa -PSaPassword -Sserver -iRentMan.SQL -oRentMan.out

Wykonanie tego skryptu spowoduje utworzenie zdefiniowanych w nim obiektów
bazy danych, które staną się odtąd dostępne dla aplikacji. Działające w powyższy
sposób narzędzie ISQL dołączane jest zarówno do pakietu Microsoft, jak i Sybase
SQL Server.

background image

864

Część IV

Jeśli z kolei baza danych

RENTMAN

ma być implementowana w środowisku

Oracle, to można zastosować taki skrypt:

sqlplus SYS/SysPassword@Server @RentMan.SQL

Jeśli docelową platformą jest system InterBase, to odpowiednie polecenie przyjmie
postać:

isql \\server\rentman.dgb -i RentMan.sql -o RentMan.out -u
SYSDBA -p masterkey

Różne systemy zarządzania bazami danych zapewniają różnej jakości narzędzia do
uruchamiania skryptów SQL w

plikach wsadowych. W

każdym przypadku

możliwe będzie jednak przynajmniej utworzenie wszystkich obiektów bazy
danych, wymaganych przez aplikację.


Wyszukiwarka

Podobne podstrony:
29 rozdzial 28 w3cbrpnwzh762znr Nieznany (2)
29 rozdzial 28 w3cbrpnwzh762znr Nieznany (2)
28 rozdzial 27 vmxgkzibmm3xcof4 Nieznany (2)
28 29 ROZ w spr rozbiorek o Nieznany (2)
28 rozdzial 27 vmxgkzibmm3xcof4 Nieznany (2)
FIY Rozdział 28, 29
ROZDZIAŁ 28, 29, 30
05 rozdzial 04 nzig3du5fdy5tkt5 Nieznany (2)
lekcja 29 str 2 id 265129 Nieznany
22 Rozdzial 21 KP4Q5YBIEV5DBSVC Nieznany (2)
09 08 Rozdzielnice budowlane RB Nieznany (2)
17 rozdzial 16 fq3zy7m2bu2oan6t Nieznany (2)
Kanicki Systemy Rozdzial 10 id Nieznany
24 rozdzial 23 wjv3mksbkbdm37qy Nieznany
Cw 29 szablon id 97632 Nieznany
13 Rozdziae 12id 14782 Nieznany (2)
29 Wykonywanie wyrobow tapicero Nieznany

więcej podobnych podstron