Acasă Dezvoltare Ce este atributul dllimport? - definiție din techopedia

Ce este atributul dllimport? - definiție din techopedia

Cuprins:

Anonim

Definiție - Ce înseamnă DllImport Attribute?

DllImport Attribute este o etichetă declarativă folosită în C # pentru a marca o metodă de clasă ca fiind definită într-o bibliotecă externă de legături dinamice (DLL), mai degrabă decât în ​​orice ansamblu .NET.


Atributul DllImport este utilizat la timpul de execuție pentru a apela o funcție exportată într-un DLL extern implementat cu cod neadministrat care este executat în afara controlului de limbaj comun runtime (CLR). De asemenea, este utilizat pentru a specifica alte informații necesare în timpul apelării funcției, cum ar fi convenția de apelare, tipul de conversie a parametrilor trecuți între codul gestionat și cel neadministrat etc. Astfel, este utilizat pentru a interopera cu codul în componentele neadministrate și moștenite care se află în Windows DLL-uri și este scris în C sau C ++.


DllImport este util în situațiile în care funcționalitatea unei aplicații gestionate, al cărei cod este executat de CLR, poate fi extinsă numai prin accesarea și reutilizarea funcționalității interfeței de programare a aplicației Win32 (API) și a altor coduri neadministrate definite de utilizator care sunt implementate în DLL. Acest lucru poate economisi efortul de dezvoltare și poate folosi codul robust și bine testat, fără a reinventa roata într-o aplicație gestionată. De obicei este nevoie în timp ce utilizați DLL-uri care nu pot fi rescrise, dar care au capacitatea de a fi modificate.

Techopedia explică DllImport Attribute

Atributul DllImport este o declarație de declarație pentru funcția exportată care trebuie apelată din aplicația gestionată. Nu poate fi utilizat pentru o funcție de membru, care necesită o instanță de clasă. Acesta este specificat la momentul proiectării în paranteze pătrate înainte de declararea metodei pentru care este aplicat. Este necesar să folosiți șirul „extern” înainte de declararea funcției.


De exemplu, atributul DllImport poate fi utilizat în aplicația Windows Forms, care este o aplicație gestionată pentru a invoca o metodă a unui model de obiect de componentă (al cărui cod nu este gestionat) pentru efectuarea unor calcule.


Este conceput pentru a importa DLL-urile tradiționale care își exportă funcțiile folosind mecanismul original de export DLL Windows. Nu este destinat utilizării codului în ansamblul gestionat (ca DLL), la care se poate face referire direct în proiectul aplicației gestionate.


Atributul DllImport folosește InteropServices al CLR, care execută apelul de la codul gestionat la codul neadministrat. De asemenea, informează compilatorul despre locația implementării funcției utilizate. Când funcția de înfășurare neadministrată cu acest atribut în codul gestionat este numită, CLR localizează și încarcă DLL-ul necesar. Acesta marșează (transformă parametrii conform specificației) și returnează codul neadministrat după executare, împreună cu conversia corectă a parametrilor.


În timp ce se utilizează atributul DllImport, trebuie să aveți grijă să folosiți numele corect al DLL și funcția exportată, deoarece se pot da greșeli în locuri unde nu pot fi detectate cu ușurință.

Ce este atributul dllimport? - definiție din techopedia