Pendekatan alternatif untuk P/Invoke Anda yang biasa!
Gunakan antarmuka C# untuk mengikat kode asli - penggunaan C API dalam kode C# dengan cepat dan mudah, pada platform apa pun. Lewatlah sudah hari-hari DllImport
yang rusak dan solusi yang mengganggu untuk runtime yang berbeda.
Sepenuhnya kompatibel dengan Mono, .NET Framework, .NET Core, dan .NET Standard. Kompatibel dengan pemetaan Mono DLL di semua platform dan runtime. Dapat dikonfigurasi dan beradaptasi.
extern
. Gunakan API asli Anda seolah-olah itu adalah objek kelas satu.Baca Dokumen, atau instal melalui NuGet dan mulai.
Nullable<T>
dan string
tanpa kode tambahan apa punDeklarasikan antarmuka Anda
public interface IMyNativeLibrary
{
long MyNativeGlobal { get ; set ; }
int MyNativeMultiply ( int a , int b ) ;
void MyOtherNativeFunction ( MyStruct strct , ref MyStruct ? maybeStruct ) ;
}
Aktifkan itu
const string MyLibraryName = "MyLibrary" ;
var activator = new NativeLibraryBuilder ( ) ;
var library = activator . ActivateInterface < IMyNativeLibrary > ( MyLibraryName ) ;
Gunakan itu
library . MyNativeGlobal = 10 ;
var result = library . MyNativeMultiply ( 5 , 5 ) ;
var myStruct = new MyStruct ( ) ;
MyStruct ? myOtherStruct = null ;
library . MyOtherNativeFunction ( myStruct , ref myOtherStruct ) ;
Lihat Mulai Cepat untuk informasi lebih lanjut.
Dapatkan di NuGet!
Jika lisensi perpustakaan tidak sesuai dengan proyek atau produk Anda, silakan hubungi kami. Opsi lisensi khusus tersedia, dan kami selalu terbuka untuk mengerjakan sesuatu yang sesuai untuk Anda - baik itu dimodifikasi, komersial, atau lainnya.
Rilis publik AdvancedDLSupport dilisensikan di bawah GNU Lesser General Public License, Versi 3 (LGPLv3). Lihat LISENSI untuk detailnya. Tanpa dukungan gerakan open source, hal ini tidak akan pernah ada.