Összeállítás vs DLL
A könyvtár az erőforrások gyűjteménye, amely felhasználható az alkalmazások fejlesztésére. A könyvtár általában alprogramokból, függvényekből, osztályokból, értékekből és típusokból áll. A kapcsolási folyamat során (általában egy kapcsoló végzi) a könyvtárak és a végrehajtható fájlok hivatkoznak egymásra. A DLL fájlok azok a könyvtári fájlok, amelyeket dinamikusan kapcsolnak össze. A DLL-t a Microsoft fejlesztette ki. De a DLL fájlokkal kapcsolatos problémák miatt a Microsoft előállította az Assembly fájl formátumát (a .NET keretrendszerrel). Az összeszerelő fájlok fizikailag nagyon hasonlóak a DLL-ekhez, de sok belső különbségük van.
Mi a DLL?
A Dynamic Link Library (más néven DLL) a Microsoft által kifejlesztett megosztott könyvtár-megvalósítás. A .dll, .ocx vagy .drv kiterjesztéseket használja, és a Microsoft Windows és az OS / 2 operációs rendszerekben használják. A dll fájlt a szokásos DLL fájlok használják. Az .ocx kiterjesztést az ActiveX vezérlőket tartalmazó könyvtárak, a .drv kiterjesztést pedig a régi rendszerillesztő-fájlok használják. A DLL fájl formátuma megegyezik a Windows EXE fájlokkal (32 bites / 64 bites Windows hordozható végrehajtható fájlok és 16 bites Windows új végrehajtható fájlok). Ezért a kód, az adatok és az erőforrások bármilyen kombinációja megtalálható a DLL fájlokban (akárcsak az EXE fájlokban). Valójában a DLL fájlformátumú adatfájlokat erőforrás DLL-eknek nevezzük. Ikonkönyvtárak (.icl kiterjesztéssel) és betűkészlet fájlok (.fon és .fot kiterjesztésekkel) példák az erőforrás-DLL-ekre.
A szakaszoknak nevezett összetevők DLL-t alkotnak, és minden szakasznak megvannak a saját attribútumai, például csak olvasható / írható és végrehajtható / nem végrehajtható. A kódrészek végrehajthatók, míg az adatszakaszok nem végrehajthatók. A kódrészletek megosztottak, az adatrészek pedig privátok. Ez azt jelenti, hogy a DLL-t használó összes folyamat ugyanazt a példányt fogja használni, míg az egyes folyamatok rendelkeznek saját adatokkal. A Windows elsődleges dinamikus könyvtára a kernel32.dll, amely tartalmazza a Windows alapfunkcióit (fájl- és memóriafunkciók). A COM (Component Object Model) a DLL kiterjesztése az OOP-ra (Object Oriented Programming). A hagyományos DLL fájlokat könnyebben lehet használni, mint a COM fájlokat.
Mi az a Közgyűlés??
Az összeállítási fájlokat a Microsoft vezette be a DLL fájlokkal kapcsolatos számos probléma megoldására. Az összeállítási fájlokat a Microsoft .NET keretrendszerrel mutattuk be. A végrehajtható logikai funkcionalitási egységet Assemblynek nevezzük. Az összeállítások végrehajthatók .NET CLR (Common Language Runtime) alatt. Fizikailag az összeállítások EXE vagy DLL fájlokként léteznek. De belsőleg nagyon különböznek a Microsoft Win32 DLL fájloktól. Az összeállítási fájl manifesztből, metaadatokból, MISL-ből (Microsoft Intermediate Language code) és egyéb forrásokból áll. A szerelvény önmagát leírja. A jegyzék olyan információkat tartalmaz, mint név, verzió, kultúra, erős név, fájllista, típusok és függőségek. A MISL kódot a CLR hajtja végre (közvetlenül nem hajtható végre).
Mi a különbség az összeállítás és a DLL között??
A DLL dinamikusan összekapcsolt könyvtár. Bár az összeállítások fizikailag megegyeznek a DLL-ekkel, belsőleg nagyon különböznek egymástól. Nem lehet fenntartani a konzisztenciát a DLL-halmazok között, de a CLR képes fenntartani a konzisztenciát egységek halmaza között, mivel az összeállítások önmagukban leírják (a függőségek listáját tartalmazzák belsőleg). A DLL-ektől eltérően, a verzióinformációt az összeállításokra érvényesítik (a CLR). A szerelvényekkel egymás mellett telepítés (különféle alkalmazások különböző verziókkal lehetséges).