Dll je u Delphi-ju samo specijalan project.
Datamodule je u Delphi-ju (preskacem k'o gramofon) samo specijalan unit/form (vidljiv samo u designtime-u)
Kao sto u project dodajes novi unit/form, tako u dll dodas novi datamodule. :)
Ali posto ovde gde radim koristimo nesto slicno, odmah da te upozorim na kvake. Ako u glavnoj/host aplikaciji koristis pristup bazi (recimo za pregled podataka u gridovima), a takodje i u dll-u koristis pristup bazi (recimo radi stampe tih istih podataka), odmah imas dupli posao - sto se tice odrzavanja. Veruj mi da ti to ne treba (niti zelis da upadnes u tu zamku).
Kako bi trebalo onda raditi?
Prva stvar je napraviti layer/sloj (skup klasa) zaduzen za pristup bazi. To se u Delphi-ju fenomenalno radi sa bpl-ovima (Borland Pascal Library). Zatim, dobijeni/sklepani bpl ulinkujes u host aplikaciju, a takodje ga ulinkujes i u tvoj dll za stampu.
Sta se ovime dobija? Budice izmene/dorade se rade samo NA JEDNOM MESTU, a to je bpl layer. Ostale zavisne aplikacije (host i dll) se samo izbilduju, i to je sve.
Uvidjas eleganciju resenja, zar ne ;) ; i uopste, pronalazak/ideja layer-a je nesto najkrupnije u programiranju, takoreci odmah posle izuma OOP-a :) .
Rajko