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