
Proyek ini berisi berbagai rakitan .NET yang berisi fungsi P/Invoke, antarmuka, enum dan struktur dari perpustakaan Windows. Setiap perakitan dikaitkan dengan satu atau beberapa perpustakaan yang terkait erat. Misalnya, shlwapi.dll memiliki semua fungsi yang diekspor dari shlwapi.lib; Kernel32.dll memiliki semua untuk kernel32.lib dan kernelbase.lib.
Semua rakitan tersedia melalui Nuget dan menyediakan build terhadap .NET 4.5, 4.8, 5.0, 6.0, 7.0, 8.0, .NET Standard 2.0, Core 3.1 dan mendukung Sourcelink. Ekstensi tersedia untuk proyek WinForms, WPF, dan UWP. Jika Anda memerlukan dukungan untuk versi .NET lainnya, lihat ke versi 3.3.15 dan sebelumnya.
Proyek ini merilis versi baru setiap beberapa minggu setelah pengujian yang cukup. Rilis baru dikatalogkan, bersama dengan catatan rilis, di bagian rilis dan semua paket nuget diterbitkan ke nuget.org. Setiap GitHub mendorong memicu build appveyor. Pemilik berterima kasih kepada mereka untuk akun sumber terbuka gratis! Status bangunan itu ada di header halaman ini. Paket Nuget dari build tersebut tersedia untuk tujuan pengujian pada Proyek Appveyor Sumber Nuget di https://ci.appveyor.com/nuget/vanara-prerelease.
var bret = Vanara.PInvoke.Kernel32.GetComputerName(sb, ref sbSz); using static Vanara.PInvoke.Kernel32;
var bret = GetComputerName(sb, ref sbSz);
Vanara.PInvoke.Gdi32.dll menyelenggarakan semua fungsi dan mendukung enumerasi, konstanta dan struktur yang diekspor dari gdi32.dll di direktori sistem.)Vanara.Core atau Vanara.PInvoke.Shared .HIWORD dan SIZE struktur keduanya ada di Vanara.PInvoke.Shared dan kelas untuk menyederhanakan panggilan interop dan manajemen memori asli ada di Vanara.Core .)Vanara.PInvoke.Kernel32 , Anda akan menemukan fileAPI.cs, winbase.cs dan file winnt.cs yang mewakili fileapi.h, winbase.h dan winnt.h masing -masing.)IDisposable .SafeHandle yang dinamai sesuai dengan pegangan API Windows. Jika pegangan itu memerlukan panggilan ke fungsi untuk melepaskan/menutup/menghancurkan, ada SafeHANDLE yang diturunkan yang melakukan fungsi itu pada pembuangan.HTOKEN didefinisikan. SafeHTOKEN dibangun di atas pegangan itu dengan rilis otomatis yang menelepon CloseHandle .Vanara.PInvoke .in yang akan melewati struktur dengan referensi tanpa memerlukan kata kunci ref .BOOL MapDialogRect(HWND hDlg, LPRECT lpRect)bool MapDialogRect(HWND hDlg, in RECT lpRect);Vanara dan kemudian diikuti dengan nama logis untuk fungsionalitas. Saat ini, itu adalah inti, keamanan, SystemServices, windows.forms dan windows.shell. | Perpustakaan/DLL | Perakitan | Cakupan | Tautan Nuget |
|---|---|---|---|
| aclui.dll | Vanara.pinvoke.aclui | ||
| Activeds.dll | Vanara.pinvoke.activeds | ||
| advapi32.dll, secur32.dll, authz.dll, sspicli.dll, schannel.dll, tdh.dll | Vanara.pinvoke.security | ||
| amsi.dll | Vanara.pinvoke.amsi | ||
| avicap32.dll, avifil32.dll, msacm32.dll, msvfw32.dll, winmm.dll | Vanara.pinvoke.multimedia | ||
| avrt.dll | Vanara.pinvoke.avrt | ||
| kabinet.dll | Vanara.pinvoke.cabinet | ||
| Cfgmgr32.dll | Vanara.pinvoke.cfgmgr32 | ||
| cimfs.dll | Vanara.pinvoke.cimfs | ||
| Cldapi.dll | Vanara.pinvoke.cldapi | ||
| clfsw32.dll | Vanara.pinvoke.clfsw32 | ||
| comctl32.dll | Vanara.pinvoke.comctl32 | ||
| Comdlg32.dll | Vanara.pinvoke.comdlg32 | ||
| credui.dll | Vanara.pinvoke.credui | ||
| crypt32.dll, bcrypt.dll, ncrypt.dll, tokenbinding.dll, cryptUi.dll, cryptnet.dll, cryptdlg.dll | Vanara.pinvoke.cryptography | ||
| d2d1.dll | Vanara.pinvoke.direct2d | ||
| d3d11.dll, d3dcsx.dll, d3d11sdklayers.dll | Vanara.pinvoke.direct3d11 | ||
| d3d12.dll | Vanara.pinvoke.direct3d12 | ||
| D3DCompiler_47.dll | Vanara.pinvoke.d3dcompiler | ||
| davclnt.dll | Vanara.pinvoke.davclnt | ||
| Dbghelp.dll, ImageHlp.dll | Vanara.pinvoke.dbghelp | ||
| Dhcpcsvc6.dll, dhcpcsvc.dll | Vanara.pinvoke.dhcp | ||
| Dnsapi.dll | Vanara.pinvoke.dnsapi | ||
| dosvc.dll | Vanara.pinvoke.dosvc | ||
| drt.dll, drtprov.dll, drttransport.dll | Vanara.pinvoke.drt | ||
| dStorage.dll | Vanara.pinvoke.dstorage | ||
| dwmapi.dll | Vanara.pinvoke.dwmapi | ||
| dwrite.dll | Vanara.pinvoke.dwrite | ||
| dxcore.dll | Vanara.pinvoke.dxcore | ||
| dxgi.dll | Vanara.pinvoke.dxgi | ||
| ehstorapi.dll | Vanara.pinvoke.enhancedStorage | ||
| elscore.dll | Vanara.pinvoke.elscore | ||
| fhsvcctl.dll | Vanara.pinvoke.fhsvcctl | ||
| Firewallapi.dll | Vanara.pinvoke.firewallapi | ||
| fundisc.dll | Vanara.pinvoke.fundisc | ||
| fwpuclnt.dll | Vanara.pinvoke.fwpuclnt | ||
| gdi32.dll | Vanara.pinvoke.gdi32 | ||
| httpapi.dll | Vanara.pinvoke.httpapi | ||
| imapi2.dll, imapi2fs.dll | Vanara.pinvoke.imapi | ||
| IMM32.dll | Vanara.pinvoke.imm32 | ||
| iPhlpapi.dll | Vanara.pinvoke.iphlpapi | ||
| Iscsidsc.dll | Vanara.pinvoke.iscsidsc | ||
| kernel32.dll, kernelbase.dll, normiz.dll, vertdll.dll | Vanara.pinvoke.kernel32 | ||
| ktmw32.dll | Vanara.pinvoke.ktmw32 | ||
| Lz32.dll | Vanara.pinvoke.lz32 | ||
| pembesaran.dll | Vanara.pinvoke.magnification | ||
| mmdevapi.dll | Vanara.pinvoke.coreaudio | ||
| mpr.dll | Vanara.pinvoke.mpr | ||
| msctf.dll, input.dll, msimtf.dll | Vanara.pinvoke.textservicesframework | ||
| msftedit.dll, Riched20.dll | Vanara.pinvoke.msftedit | ||
| MSI.Dll | Vanara.pinvoke.msi | ||
| msrdc.dll | Vanara.pinvoke.msrdc | ||
| ndfapi.dll | Vanara.pinvoke.ndfapi | ||
| netapi32.dll | Vanara.pinvoke.netapi32 | ||
| netprofm.dll | Vanara.pinvoke.netlistmgr | ||
| Newdev.dll | Vanara.pinvoke.newdev | ||
| ntdll.dll | Vanara.pinvoke.ntdll | ||
| ntdsapi.dll | Vanara.pinvoke.ntdsapi | ||
| odbc32.dll | Vanara.pinvoke.odbc32 | ||
| ole32.dll, oleaut32.dll, propsys.dll | Vanara.pinvoke.ole | ||
| oleacc.dll | Vanara.pinvoke.accessibility | ||
| oledb.dll | Vanara.pinvoke.oledb | ||
| Oledlg.dll | Vanara.pinvoke.oledlg | ||
| opcservices.dll | Vanara.pinvoke.opc | ||
| P2p.dll | Vanara.pinvoke.p2p | ||
| pdh.dll | Vanara.pinvoke.pdh | ||
| Peerdist.dll | Vanara.pinvoke.peerdist | ||
| photoacq.dll | Vanara.pinvoke.photoacquire | ||
| portableDeviceApI.dll, portableDeviceConnectapi.dll, portableDevicetypes.dll | Vanara.pinvoke.porabledeviceapi | ||
| powrprof.dll | Vanara.pinvoke.powrprof | ||
| Projectedfslib.dll | Vanara.pinvoke.projectedfslib | ||
| qmgr.dll | Vanara.pinvoke.bits | ||
| qWave.dll, traffic.dll | Vanara.pinvoke.qos | ||
| rpcrt4.dll | Vanara.pinvoke.rpc | ||
| Rstrtmgr.dll | Vanara.pinvoke.rstrtmgr | ||
| Searchapi | Vanara.pinvoke.searchapi | ||
| sensorsapi.dll | Vanara.pinvoke.sensorsapi | ||
| Setupapi.dll | Vanara.pinvoke.setupapi | ||
| Shcore.dll | Vanara.pinvoke.shcore | ||
| shell32.dll, url.dll | Vanara.pinvoke.shell32 | ||
| shlwapi.dll | Vanara.pinvoke.shlwapi | ||
| Taskschd.dll, mstask.dll | Vanara.pinvoke.taskschd | ||
| uianimation.dll | Vanara.pinvoke.uianimation | ||
| UiAutomationCore.dll | Vanara.pinvoke.Uiautomation | ||
| Urlmon.dll | Vanara.pinvoke.urlmon | ||
| user32.dll | Vanara.pinvoke.user32 | ||
| Userenv.dll | Vanara.pinvoke.userenv | ||
| usp10.dll | Vanara.pinvoke.usp10 | ||
| uxtheme.dll | Vanara.pinvoke.uxtheme | ||
| Versi.dll | Vanara.pinvoke.version | ||
| virtdisk.dll | Vanara.pinvoke.virtdisk | ||
| vssapi.dll | Vanara.pinvoke.vssapi | ||
| Wcmapi.dll | Vanara.pinvoke.wcmapi | ||
| wcnapi.dll | Vanara.pinvoke.wcnapi | ||
| websocket.dll | Vanara.pinvoke.websocket | ||
| wer.dll | Vanara.pinvoke.wer | ||
| Winbio.dll | Vanara.pinvoke.winbio | ||
| winhttp.dll | Vanara.pinvoke.winhttp | ||
| wininet.dll | Vanara.pinvoke.wininet | ||
| winscard.dll | Vanara.pinvoke.winscard | ||
| winspool.drv, prntvpt.dll | Vanara.pinvoke.printing | ||
| Wintrust.dll | Vanara.pinvoke.wintrust | ||
| Wlanapi.dll, wlanui.dll | Vanara.pinvoke.wlanapi | ||
| ws2_32.dll | Vanara.pinvoke.ws2_32 | ||
| wscapi.dll | Vanara.pinvoke.wscapi | ||
| wslapi.dll | Vanara.pinvoke.wslapi | ||
| Wsmsvc.dll | Vanara.pinvoke.wsmsvc | ||
| Wtsapi32.dll | Vanara.pinvoke.wtsapi32 | ||
| wuapi.dll | Vanara.pinvoke.wuapi |
| Perakitan | Tautan Nuget | Keterangan |
|---|---|---|
| Vanara.bits | Lengkapi .NET Cakupan Windows Bits (Latar Belakang Layanan Transfer Cerdas) Fungsionalitas. Memberikan akses ke semua fungsi perpustakaan melalui Windows 11 dan dengan anggun gagal ketika fitur baru tidak tersedia pada versi OS yang lebih lama. | |
| Vanara.core | Perpustakaan ini mencakup metode bersama, struktur dan konstanta untuk digunakan di seluruh rakitan Vanara. Anggap saja sebagai windows.h dengan beberapa ekstensi yang berguna. Itu termasuk:
| |
| Vanara.directoryservices | Kelas pembungkus di sekitar metode dan antarmuka iklan Win32 untuk menyediakan akses yang disederhanakan dan berorientasi objek ke Direktori Aktif dan panggilan layanan direktori lainnya. | |
| Vanara.management | Ekstensi dan kelas penolong untuk manajemen sistem. | |
| Vanara.net | Kelas abstrak di sekitar fungsi jaringan Win32 untuk menyediakan akses yang disederhanakan dan berorientasi objek ke kemampuan jaringan utama seperti DNS, DHCP, penyaringan, akses, dan penemuan. | |
| Vanara.pinvoke.directx | API Pinvoke (Metode, Antarmuka, Struktur dan Konstanta) yang diimpor dari DirectX. | |
| Vanara.pinvoke.hared | Metode, struktur, dan konstanta yang dibagikan untuk digunakan di seluruh rakitan vanara.pinvoke. Termasuk:
| |
| Vanara.pinvoke.spellcheckingapi | Pinvoke API (Metode, Struktur, dan Konstanta) yang diimpor dari API Pemeriksaan Ejaan Windows. | |
| Vanara.security | Kelas untuk item terkait keamanan yang berasal dari perpustakaan Vanara Pinvoke. Termasuk metode ekstensi untuk Kelas Kontrol Active Directory dan Access, metode untuk bekerja dengan akun, UAC, hak istimewa, akses sistem, peniruan dan SIDS, dan pembungkus LSA lengkap. | |
| Vanara.systemservices | Kelas untuk item terkait sistem yang berasal dari perpustakaan Vanara Pinvoke. Termasuk ekstensi untuk proses (hak istimewa dan elavation), fileInfo (info kompresi), drive dan perangkat jaringan bersama, dan serviceController (setStartType) yang menarik informasi yang diperluas melalui panggilan API asli. | |
| Vanara.virtualdisk | Kelas .NET untuk mengelola Windows Virtual Storage (VHD dan VHDX) menggunakan fungsi P/Invoke dari virtdisk.dll. | |
| Vanara.windows.Extensions | Metode dan konversi ekstensi dari vanara p/invoke jenis dan metode ke jenis dan metode windows. | |
| Vanara.windows.forms | Kelas untuk item terkait antarmuka pengguna yang berasal dari perpustakaan Vanara Pinvoke. Termasuk ekstensi untuk hampir semua kontrol umum untuk memberikan kemampuan pos vista, kontrol WinForms (panel, commandlink, kotak kombo yang disempurnakan, ipaddress, tombol split, trackbar dan kontrol bertema), shutdown/restart/kontrol kunci, lukisan buffered, file sumber daya, editor kontrol akses, perancang yang disederhanakan untuk windows.form. | |
| Vanara.windows.shell.Common | Kelas umum untuk item shell windows yang berasal dari perpustakaan Vanara Pinvoke. Termasuk item shell, file, ikon, tautan, dan daftar bilah tugas. | |
| Vanara.windows.shell | Kelas untuk item shell windows berasal dari perpustakaan Vanara Pinvoke. Termasuk item shell, file, ikon, tautan, dan daftar bilah tugas. | |
| Vanara.winui.Extensions | Metode dan konversi ekstensi dari vanara P/Invoke jenis dan metode untuk jenis dan metode UWP dan Winui. | |
| Vanara.wpf.extensions | Metode dan konversi ekstensi dari vanara P/Invoke jenis dan metode ke jenis dan metode WPF. |
Ada banyak contoh di folder Unittest dan dalam proyek WinclassiCSAMPLESCS yang menciptakan kembali sampel jendela di C# menggunakan Vanara.