hozzon létre egy dll
Most fontolja meg, milyen szükséges DLL (Dynamic Link Library - Dinamikus Könyvtár kompanuemaya), és hogyan lehet létrehozni őket. DLL- a körzetszámot tárolt kiterjesztésű fájl .dll. A kód használható más programok, de a könyvtár posebe proramma nem. Általában akkor, dinamikus csatolású könyvtárak Nabão skompilirovannyyh funkciókat. De yutih könyvtár megvannak a maga sajátosságai, így például, ha kakkieto két vagy több Windows-programok egyidejűleg végrehajtott, és a funkciók egy DLL, a memória mindig csak egy könyvtár, ezáltal gazdaságos memória mennyisége. Betöltése a könyvtár a memóriába is lehet statikus és dinamikus.
A statikus terhelési DLL automatikusan betöltődik, amikor elindítja az alkalmazást néha használják. Az ilyen DLL tartalmaz exportált funkciók leírása, amely a fájl import könyvtár (import könyvtár fájl - .lib). Ahhoz, hogy egy statikus terhelés van a színpadon elrendezést a programot dodklyuchit .lib a DLL fájl. A C ++ Builder, ez csökkenti a felvétel a projekt .lib fájl segítségével mendzherov projekteket.
Amikor diamicheskoy terhelés tudja tölteni DLL, ha szükséges, felrakható gyerünk, ha ez szükséges. De ahhoz, hogy működjön együtt az ilyen könyvtárak nehezebb, mint a statikus. Tekintsük sozzdanie és DLL használja a statikus terhelés.
Először hozzon létre egy projektet (Fájl / Új / DLL). A projekt jön létre, amely tartalmazza a következőket:
int WinAPI ek DIIEntryPoint (HINSTANCE hinst, unsigned long oka, void *)
és egy hosszú megjegyzést figyelmeztet, hogy szükség van a munka snei DLL azon képességét, hogy postvku néhány dll, ha használja a karakterlánc osztály példányok. Exportja és importja a DLL kell használni Modi fikatory __export és __import volt. De lehet használni a C ++ Builder új kulcsszót __delspec () paraméterekkel dllexport és dllimport volt. Azt értem, hogy annak érdekében, hogy esportirovat funkció a könyvtárból Eugen egy header file leírással _delspec (dllexport) exportálni funkciók importálni jellemzői az app meg kell tenni hasonló viselkedést header fájlt, de _delspec (dllimport) leírások elég kényelmetlen. Ez a probléma könnyen megoldható: add a könyvtár header fájlt az alábbiak szerint:
# Adjuk DLL_EXP __declspec (dllexport)
# Adjuk DLL_EXP __declspec (dllimport)
Az eredeti fájl DLL írási #define BUILD_DLL helyett __declspec (dllexport) levelet DLL_EXP. A program a hozzá a következő sort #define BUILD_APP, és csak csatlakozni a fejléc DLL fájl.