[ maximus_1 @ 13.03.2005. 13:27 ] @
Može li mi netko pokazati kako povezati EXE sa DLL i zašto se to uopće koristi. |
[ maximus_1 @ 13.03.2005. 13:27 ] @
[ Srki_82 @ 13.03.2005. 15:09 ] @
Kada recimo pravis vise aplikacija koje koriste iste slicice za menije i toolbar, iste textove za prikaz u porukama, iste funkcije za ucitavanje fajlova i slicno glupo je da u svakoj aplikaciji pises sve to iz pocetka i samim tim u velicinu aplikacije ulaze i velicine tih slikica i ostalih stvarcica. Zato napises jedan (ili vise) DLL-ova koji ce to sve da sadrze, a u aplikacijama samo pozivas sve sto ti treba iz DLL-a. Time dobijas manju velicinu exe fajla, vise razlicitih aplikacija mogu da koriste jedan DLL, update je laksi (dovoljno je samo da promenis jedan DLL i u njega stavis nove slicice ili prevedes text na neki drugi jezik i sve aplikacije koje koriste taj DLL ce poprimiti nov izgled i "nauciti" da pisu drugim jezikom). Postoje i neke funkcije u operativnom sistemu koje zahtevaju DLL. Recimo Windows Hooks... da bi pratio sta neko u bilo kom programcicu kucka na tastaturi i to cuvao u nekom fajlu moras da napravis WinHook u DLL.
Sto se povezivanja sa DLL-om tice imas dva nacina staticki i dinamicki. Staticki je laksi nacin, ali ima svoje mane. Tvoj program nece moci uopste da se pokrene ako DLL koji mu treba nedostaje. Ne mozes u toku rada programa da zamenis DLL koji je na pocetku ucitan da bi recimo promenio slicice ili tako nesto. Ima tu jos svasta, ali za pocetak je definitivno lakse da radis tako. Tu je naravno i mnogo bolji nacin. Dinamicko povezivanje sa DLL-om ti omogucava da DLL ne moras (mozes ako hoces) da ucitas cim se program pokrene nego samo kada ti je potreban i da ga po potrebi unloadujes kada ti vise ne treba. Tako mozes na pocetku ako primetis da ti nedostaje neki DLL da prikazes korisniku poruku o gresci i da onemogucis u aplikaciji sve ono sto zahteva taj DLL, a ostalo korisnik i dalje moze da koristi. [ Srki_82 @ 16.03.2005. 00:52 ] @
E, da... zamalo da zaboravim... DLL-ovi se cesto koriste i kao plugin-ovi. To mozes videti recimo u winamp-u gde kada dodas nov DLL (plugin) za citanje fajlova winamp zna kako da ti pusta taj nov format :)
DLL-ovi su vrlo korisni :) [ Peke @ 17.03.2005. 03:35 ] @
DLL-ovi skracuju razvoj neke aplikacije, olaksavaju dalji razvoj i bolju kontrolu Bagova.
U svakom slucaju DLL-ovi su korisni. Srki ako se neljutis malo bih te ispravio u slucaju Winampa i njegovih plugina iako su DLL-ovi koriste model Modularnog programiranja gde je svaki plugin u stari zaseban modul Mada to vise i nespada u Topic vec u 'Sta je SDK, i cemu to sluzi?'. [ maximus_1 @ 19.03.2005. 19:24 ] @
OK, shvatio sam. Hvala na odgovoru!
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|