Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Dll vs. exe
* DLL (Dynamic Link Library): DLL je knižnica funkcií a zdrojov, ktoré môžu používať viaceré programy. Nie je to spustiteľný program sám.
* exe (spustiteľné): Súbor EXE obsahuje pokyny pre samostatný program, ktorý je možné spustiť priamo.
Čo môžete dosiahnuť:
1. Vytvorte exe, ktorý * používa * DLL: Môžete vytvoriť spustiteľný súbor, ktorý * načíta * a používa funkcie v rámci DLL. Toto je typický spôsob využitia DLL. Budete musieť použiť programovací jazyk (ako C ++, C#, Python atď.) Na:
- Do svojho projektu zahrňte DLL.
- Zavolajte funkcie z DLL vo svojom kóde.
- Zostavte svoj kód do súboru EXE.
2. Vytvorte obal EXE: Ak chcete uľahčiť používanie DLL, môžete vytvoriť jednoduchý program EXE, ktorý:
- Načíta DLL.
- Poskytuje užívateľské rozhranie alebo argumenty príkazového riadku na interakciu s funkciami DLL.
Príklad (C ++):
Povedzme, že máte DLL s názvom `myLibrary.dll` s funkciou s názvom` callatesum`:
`` C ++
// myLibrary.cpp (zostavené do myLibrary.dll)
 #include  
  
 int callatesum (int a, int b) {  
 Vráťte A + B;  
 }  
 `` `  
  
  Tu je návod, ako vytvoriť EXE, ktorý používa `mylibrary.dll`:  
  
 `` C ++  
 // main.cpp  
 #include  
  
 typedef int (*callatesUmfunction) (int, int);  
  
 int main () {  
 // Načítať DLL  
 HModule hModule =loadLibrary ("myLibrary.dll");  
 if (hmodule ==null) {  
 // Chyba rukoväte  
 návrat 1;  
 }  
  
 // Získajte adresu funkcie  
 CaltatesUmfunction sumfunction =(CalpulatesUmfunction) getProcaddress (HModule, "calpulatesum");  
 if (sumfunction ==null) {  
 // Chyba rukoväte  
 návrat 1;  
 }  
  
 // Zavolajte funkciu z DLL  
 int výsledok =sumfunkcia (5, 3);  
 printf ("Sum:%d \ n", výsledok);  
  
 // Zadajte DLL  
 Freelibrary (HModule);  
  
 návrat 0;  
 }  
 `` `  
  
  Dôležité:  
  
 *  DLL sú špecifické pre platformu.  DLL zostavený pre jeden operačný systém (napríklad Windows) nebude fungovať na inom (napríklad MacOS alebo Linux).  
 *  DLLS závisí od iných knižníc.  Ak sa DLL spolieha na iné knižnice, musíte zahrnúť do svojho projektu alebo sa uistiť, že sú k dispozícii v cieľovom systéme.  
  
 Ak potrebujete konkrétnejšiu pomoc, uveďte podrobnosti o DLL, ktorý máte, programovacím jazykom, ktorý používate, a funkcia, ktorú chcete dosiahnuť.