Isi kandungan:
Definisi - Apa arti DllImport Atribut?
DllImport Atribut ialah tag perisytiharan yang digunakan dalam C # untuk menandakan suatu kaedah kelas yang ditakrifkan dalam pustaka pautan dinamik luaran (DLL) dan bukannya dalam perhimpunan. NET.
Atribut DllImport digunakan pada masa larian untuk memanggil fungsi yang dieksport dalam DLL luaran dilaksanakan dengan kod yang tidak dikelola yang dijalankan di luar kawalan runtime bahasa umum (CLR). Ia juga digunakan untuk menentukan maklumat lain yang diperlukan semasa memanggil fungsi seperti konvensyen memanggil, jenis penukaran parameter yang diluluskan antara kod yang diuruskan dan tidak dikendalikan, dan sebagainya. Oleh itu, ia digunakan untuk berinteroperasi dengan kod dalam komponen yang tidak diurus dan warisan yang berada di Windows DLL dan ditulis dalam C atau C ++.
DllImport berguna dalam situasi di mana fungsi aplikasi terurus, yang kodnya dilaksanakan oleh CLR, boleh dilanjutkan hanya dengan mengakses dan menggunakan semula fungsi antara muka pengaturcaraan aplikasi Win32 (API) dan kod pengguna yang tidak ditetapkan oleh pengguna lain yang dilaksanakan dalam DLL. Ini dapat menjimatkan usaha pembangunan dan menggunakan kod yang mantap dan teruji dengan baik tanpa mencipta semula roda dalam aplikasi terurus. Ia biasanya diperlukan semasa menggunakan DLL yang tidak boleh ditulis semula tetapi mempunyai keupayaan untuk diubah suai.
Techopedia menerangkan Atribut DllImport
Atribut DllImport adalah pernyataan pengisytiharan untuk fungsi yang dieksport yang akan dipanggil dari aplikasi yang diuruskan. Ia tidak boleh digunakan untuk fungsi ahli, yang memerlukan contoh kelas. Ia ditentukan pada masa reka bentuk dalam pendakap persegi sebelum pengisytiharan kaedah yang digunakan. Ia perlu menggunakan rentetan "extern" sebelum deklarasi fungsi.
Sebagai contoh, atribut DllImport boleh digunakan dalam aplikasi Windows Forms, yang merupakan aplikasi yang diuruskan untuk menggunakan kaedah komponen komponen objek komponen (kod yang tidak dikendalikan) untuk melakukan beberapa pengiraan.
Ia direka untuk mengimport DLL tradisional yang mengeksport fungsi mereka menggunakan mekanisme eksport Windows DLL asal. Ia tidak bertujuan untuk menggunakan kod dalam perhimpunan terurus (sebagai DLL), yang boleh dirujuk secara langsung dalam projek aplikasi yang diuruskan.
Atribut DllImport menggunakan InteropServices CLR, yang melaksanakan panggilan dari kod terurus ke kod unmanaged. Ia juga memberitahu compiler tentang lokasi pelaksanaan fungsi yang digunakan. Apabila pembungkus yang tidak diurus berfungsi dengan atribut ini dalam kod terurus dipanggil, CLR menempatkan dan memuat DLL yang diperlukan. Ia marsals (menukarkan parameter mengikut spesifikasi) dan mengembalikan kod unmanaged selepas pelaksanaan, bersama dengan penukaran parameter yang tepat.
Semasa menggunakan atribut DllImport, penjagaan perlu diambil untuk menggunakan nama DLL yang betul dan fungsi yang dieksport kerana kesalahan tesis mungkin berlaku di tempat yang tidak dapat dikesan dengan mudah.