DllImport attribútum

Szerző: Lewis Jackson
A Teremtés Dátuma: 8 Lehet 2021
Frissítés Dátuma: 14 Lehet 2024
Anonim
DllImport attribútum - Technológia
DllImport attribútum - Technológia

Tartalom

Meghatározás - Mit jelent a DllImport attribútum?

A DllImport Attribútum egy deklaratív címke, amelyet a C # -ben használnak arra, hogy megjelölje az osztály módszerét, mint amelyet egy külső dinamikus hivatkozású könyvtárban (DLL) határoz meg, nem pedig .NET-összeállításban.

A DllImport attribútum futási időben egy külső DLL-ben exportált függvény meghívására szolgál, amelyet nem kezelt kóddal valósítanak meg, és amelyet a közös nyelv futási ideje (CLR) ellenőrzése nélkül hajtanak végre. Ezenkívül a függvény meghívása során szükséges egyéb információk meghatározására is felhasználható, például a hívási konvenció, a kezelt és nem kezelt kód között átadott paraméterek konvertálásának típusa stb. Így használható a Windowsban lévő nem kezelt és örökölt összetevők kódjával való együttműködésre. DLL-ek, C vagy C ++ betűvel írva.

A DllImport olyan helyzetekben hasznos, amikor egy kezelt alkalmazás, amelynek kódját a CLR hajtja végre, funkcionalitása csak a Win32 alkalmazásprogramozási felület (API) és más, a felhasználó által definiált, nem kezelt kódok funkcionalitásának elérésével és újbóli felhasználásával bővíthető. a DLL-ben. Ez megtakaríthatja a fejlesztési erőfeszítéseket, és kihasználhatja a meglévő robusztus és jól tesztelt kódot anélkül, hogy a kereket újból feltalálná egy kezelt alkalmazásban. Általában olyan DLL használata esetén van szükség, amelyet nem lehet átírni, de módosítani lehet.


Bevezetés a Microsoft Azure és a Microsoft Cloud | A jelen útmutató során megtanulja, mi szól a felhőalapú számítástechnikából, és hogyan segítheti a Microsoft Azure a felhőből történő migrációt és az üzleti vállalkozás futtatását.

A Techopedia magyarázza a DllImport Attribútumot

A DllImport attribútum egy deklarált nyilatkozat az exportált függvényhez, amelyet a kezelt alkalmazásból kell meghívni. Nem használható tagfüggvényhez, amelyhez osztálypéldány szükséges. A tervezéskor szögletes zárójelekkel határozzák meg, mielőtt deklarálnák azt a módszert, amelyre alkalmazzák. A függvény deklarálása előtt használni kell az „extern” karakterláncot.

Például a DllImport attribútum használható a Windows Forms alkalmazásban, amely egy felügyelt alkalmazás, amely egy számítás elvégzéséhez összetevő objektummodell-összetevő (amelynek kódja nem kezelt) módszerét hívja elő.

Úgy tervezték, hogy importálják a hagyományos DLL fájlokat, amelyek exportálják funkcióikat az eredeti Windows DLL export mechanizmus segítségével. Nem célja a kód használata a kezelt összeállításban (DLL-ként), amelyre közvetlenül a kezelt alkalmazások projektjében lehet hivatkozni.

A DllImport attribútum a CLR InteropServices szolgáltatását használja, amely végrehajtja a hívást a kezelt kódból a nem kezelt kódba. Azt is tájékoztatja a fordítót a használt funkció megvalósításának helyéről. Amikor a kezelt kódban ezt az attribútumot nem kezeli a wrapper funkció, akkor a CLR megkeresi és betölti a szükséges DLL-t. Összeállítja (konvertálja a paramétereket a specifikáció szerint), és a végrehajtás után visszaadja a nem kezelt kódot, a paraméterek megfelelő konvertálásával együtt.

A DllImport attribútum használata közben ügyelni kell a DLL és az exportált függvény helyes nevének használatára, mivel helyesírási helyek fordulhatnak elő olyan helyeken, ahol nem könnyen észlelhetők.