|
Jak utworzyć bibliotekę DLL (wprowadzenie) Strona
7 z 7 |
w oparciu o materiały ze stron The Bits
|
Krok 7: Uruchomienie programu
Zapisz projekt i uruchom go klawiszem F9. Jeśli nie popełniłeś błędów, to główny formularz
twojej aplikacji powinien pojawić się na ekranie. Najpierw kliknij przycisk Wersja. Builder
uzyska większy i mniejszy numer wersji, które zostaną zamienione na obiekty AnsiString a rezultat
wyświetli się w polu Edit3.
Teraz kliknij przycisk Formularz. Twój program przejdzie do biblioteki DLL, gdzie utworzy i
wyświetli egzemplarz formularza. Zauważ, że zawartości pól Edit1 oraz Edit2 są przekazywane do
DLL-a i wyświetlane jako domyślne w formularzu biblioteki. Jeśli chcesz, zmień teraz te wartości i
kliknij Oblicz. Zawartości dwóch pól edycyjnych w DLL-u zostaną do siebie dodane, a wynik tej
operacji zostanie wyświetlony w polu Edit3 twojego programu. Kliknij ponownie przycisk
Formularz.
Tym razem zamknij od razu formularz lub kliknij przycisk Anuluj. W polu Edit3 ujrzysz:
UŻYTKOWNIK ANULOWAŁ! Dowodzi to tego, że DLL zwraca odpowiednią wartość
zmiennej typu bool w zależności od tego, co zostało kliknięte.
Krok 8: Posuńmy się dalej...
Więc mamy już działającą bibliotekę dynamiczną...
Możesz teraz ją rozbudowywać. Jeśli chcesz np. zmienić numery jej wersji, to wystarczy
otworzyć projekt DLL-a, zmienić numery, wykonać Build na tym projekcie i zamknąć Builder'a.
Aby udowodnić ci że nie kłamiemy, przejdź teraz do katalogu TESTPROG i uruchom program
testowy. Kliknij przycisk Wersja, a polu Edit3 ukaże się nowy numer wersji. Jak widzisz, nie
musiałeś przekompilowywać swojego programu korzystającego z (jakby na to nie patrzeć) nowej
wersji DLL-a. Jest to jedna z największych zalet korzystania z bibliotek dynamicznych.
Nasza biblioteka pokazuje, że możemy przekazywać dane, pobierać je, otrzymywać zwracane
wartości funkcji prawie dokładnie tak samo jak to się robi w zwykłym pliku źródłowym w
C/C++. Jedną rzecz chciałbym tu jednak podkreślić. Mianowicie, staraj się nie używać
globalnych (zewnętrznych) zmiennych. Oczywiście jest to możliwe i tu, ale stosowanie ich nie
należy do dobrej techniki programowania. Celowo wstrzymałem się od omówienia tego tematu.
Funkcja Add2 pokazuje również, jak łatwo można manipulować komponentami na formularzu
po utworzeniu jego egzemplarza. Bez wątpienia, znajdziesz w swoich aplikacjach nowe i ciekawe
zastosowania bibliotek DLL.
Jeśli doszedłeś aż tutaj i wszystko działa, to zgodzisz się z tym, że najwięcej czasu pochłania
pierwsze utworzenie biblioteki DLL. Z czasem staną się one dosłownie drugą naturą. Więc
poeksperymentuj trochę, a jeśli będziesz miał jakiś problem, wyślij mi e-mail, to postaram się ci
pomóc. Builder jest doskonałym narzędziem do tworzenia aplikacji, a ja mam nadzieję że ten
samouczek będzie ci służył w przyszłości.
Ostatnia uwaga
Zanim wywołasz funkcje z bibliotek dynamicznych, musisz znać listę parametrów tych funkcji.
Kiedyś powiedziano "świeżo upieczonemu" pilotowi, że najważniejszym matematycznym
równaniem, którego w jego zawodzie trzeba przestrzegać, to to, żeby liczba lądowań była równa
liczbie startów. Podobnie jest i tutaj: programista języków obiektowych powinien być pewien, że
liczba obiektów zlikwidowanych jest równa liczbie obiektów utworzonych. No cóż, musisz to
wszystko sobie poukładać, ale pamiętaj...! najważniejsze jest eksperymentowanie i praktyka -
tak zdobywa się doświadczenie.
Życzymy Ci udanych projektów!
Uwaga: Autorzy oraz The Bits, nie ponoszą odpowiedzialności za ewentualne
szkody wynikłe z postępowania według zasad tego samouczka.
(c)1998 Peter Hamilton-Scott, Dallen Masters, & Simon Rutley-Frayne.
1999 Allan Carlton & Will Green.
Tłumaczenie: Maciek Durman
|
1 2 3 4 5 6 7
|
|
|