Inițializarea DLL-ului

De obicei, DLL-ul are un cod de inițializare (de exemplu, alocarea memoriei) care trebuie executat atunci când DLL-ul este încărcat. Când utilizați Visual C ++, locul unde adăugați codul pentru a inițializa DLL-ul depinde de tipul de DLL care este construit. Dacă nu aveți nevoie să adăugați un cod de inițializare sau de completare atunci când construiți un DLL, nu este necesară nicio acțiune suplimentară. Pentru a determina unde să adăugați codul la inițializarea DLL, consultați tabelul următor.







Tip DLL

Locul unde se adaugă codul de inițializare și finalizare

Un DLL obișnuit







În codul InitInstance și ExitInstance al obiectului CWinApp al DLL.

Extensie DLL

În funcția DllMain. create folosind expertul MFC DLL.

Biblioteca DLL (nu MFC)

În funcția furnizată de utilizator numită DllMain.

În Win32, toate DLL-urile pot conține o funcție suplimentară de punct de intrare (denumită în mod obișnuit DllMain), care este apelată pentru inițializare și terminare. Aceasta permite, dacă este necesar, alocarea sau eliberarea de resurse suplimentare. Funcția punctului de intrare se numește Windows în patru cazuri: conexiunea procesului, detașarea procesului, conectarea firului și deconectarea firului.

Biblioteca C run-time furnizează funcția punct de intrare numită _DllMainCRTStartup și apelează funcția DllMain. În funcție de tipul de DLL, utilizatorul trebuie să aibă o funcție numită DllMain în codul sursă sau să utilizeze funcția DllMain. furnizate în biblioteca MFC.







Articole similare

Trimiteți-le prietenilor: