
Ce projet contient divers assemblages .NET qui contiennent des fonctions P / Invoke, des interfaces, des énumérations et des structures des bibliothèques Windows. Chaque assemblage est associé à une ou quelques bibliothèques étroitement liées. Par exemple, shlwapi.dll a toutes les fonctions exportées de shlwapi.lib; Kernel32.dll a tout pour Kernel32.lib et KernelBase.lib.
Tous les assemblages sont disponibles via NuGet et fournissent des versions contre .NET 4.5, 4.8, 5.0, 6.0, 7.0, 8.0, .NET Standard 2.0, Core 3.1 et prennent en charge Sourcelink. Des extensions sont disponibles pour les projets WinForms, WPF et UWP. Si vous avez besoin d'une prise en charge des autres versions .NET, consultez les versions 3.3.15 et plus tôt.
Ce projet libère de nouvelles versions toutes les quelques semaines après des tests suffisants. Les nouvelles versions sont cataloguées, ainsi que les notes de publication, dans la section des versions et tous les packages NuGet sont publiés sur nuget.org. Chaque poussoir GitHub déclenche une version d'apptesure. Les propriétaires les remercient pour le compte libre de open source! Le statut de cette construction est dans l'en-tête de cette page. Les forfaits NuGet de ces builds sont disponibles à des fins de test sur le projet Appveyor Nuget Source sur 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 héberge toutes les fonctions et les énumérations, constantes et structures de support qui sont exportées de gdi32.dll dans le répertoire système.)Vanara.Core ou Vanara.PInvoke.Shared .HIWORD macro et la SIZE de la structure sont tous deux dans Vanara.PInvoke.Shared et les classes pour simplifier les appels d'interopérations et la gestion de la mémoire native se trouvent dans Vanara.Core .)Vanara.PInvoke.Kernel32 , vous trouverez un fichier fileapi.cs, un winbase.cs et un fichier winnt.cs représentant FileAPI.h, winbase.h et winnt.h respectivement.)IDisposable .SafeHandle nommés d'après la poignée de l'API Windows. Si ces poignées nécessitent un appel à une fonction pour libérer / se fermer / détruire, un SafeHANDLE dérivé existe qui remplit cette fonction sur l'élimination.HTOKEN est défini. SafeHTOKEN s'appuie sur cette poignée avec un communiqué automatisé appelant CloseHandle .Vanara.PInvoke .in qui passera la structure par référence sans nécessiter le mot-clé ref .BOOL MapDialogRect(HWND hDlg, LPRECT lpRect)bool MapDialogRect(HWND hDlg, in RECT lpRect);Vanara , puis suivis d'un nom logique pour la fonctionnalité. Aujourd'hui, ce sont les noyaux, la sécurité, les services de systèmes, Windows.Forms et Windows.shell. | Bibliothèque / DLL | Assemblée | Couverture | Lien nuget |
|---|---|---|---|
| aclui.dll | Vanara.pinvoke.aclui | ||
| active.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 | ||
| armoire.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 | ||
| creui.dll | Vanara.pinvoke.credui | ||
| crypt32.dll, bcrypt.dll, ncrypt.dll, tokenbinding.dll, cryptui.dll, cryptnet.dll, cryptdlg.dll | Vanara.pinvoke.cryptographie | ||
| 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 | ||
| Firewalapi.dll | Vanara.pinvoke.firewallapi | ||
| funnisc.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.issidsc | ||
| Kernel32.dll, kernelbase.dll, normaliz.dll, vertdll.dll | Vanara.pinvoke.kernel32 | ||
| ktmw32.dll | Vanara.pinvoke.ktmw32 | ||
| Lz32.dll | Vanara.pinvoke.lz32 | ||
| grossissement.dll | Vanara.pinvoke.magnification | ||
| mmdevapi.dll | Vanara.pinvoke.coreaudio | ||
| mpr.dll | Vanara.pinvoke.mppr | ||
| 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 | ||
| oleac.dll | Vanara.pinvoke.accessibilité | ||
| 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 | ||
| PORTABLEEVICEAPI.DLL, PORTABLEEVICECONNECTAPI.DLL, PORTABLEADEVICETYPES.DLL | Vanara.pinvoke.portableeviceapi | ||
| Powrprof.dll | Vanara.pinvoke.powrprof | ||
| Projedfslib.dll | Vanara.pinvoke.projectedfslib | ||
| qmgr.dll | Vanara.pinvoke.bits | ||
| qwave.dll, trafic.dll | Vanara.pinvoke.qos | ||
| rpcrt4.dll | Vanara.pinvoke.rpc | ||
| Rstrtmgr.dll | Vanara.pinvoke.rstrtmgr | ||
| Searchapi | Vanara.pinvoke.searchapi | ||
| capteursapi.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 | ||
| Version.dll | Vanara.pinvoke.version | ||
| virddisk.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 | ||
| winsspool.drv, prntvpt.dll | Vanara.pinvoke.printing | ||
| wentrust.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 |
| Assemblée | Lien nuget | Description |
|---|---|---|
| Vanara. | Compléter la couverture .NET des fonctionnalités Windows Bits (Background Intelligent Transfer Service). Fournit accès à toutes les fonctions de bibliothèque via Windows 11 et échoue gracieusement lorsque les nouvelles fonctionnalités ne sont pas disponibles sur les anciennes versions du système d'exploitation. | |
| Vanara.core | Cette bibliothèque comprend des méthodes, des structures et des constantes partagées à utiliser dans les assemblages Vanara. Considérez-le comme Windows.h avec quelques extensions utiles. Il comprend:
| |
| Vanara.directoryservices | Classes en wrapper autour des méthodes et interfaces ADS WIN32 pour fournir un accès simplifié et orienté objet à Active Directory et à d'autres appels de service Directory. | |
| Vanara. | Extensions et classes d'assistance pour System.MANGÉRATION. | |
| Vanara.net | Classes abstraites autour des fonctions de réseautage Win32 pour fournir un accès simplifié et orienté objet aux capacités de réseautage clés comme DNS, DHCP, filtrage, accès et découverte. | |
| Vanara.pinvoke.directx | API Pinvoke (méthodes, interfaces, structures et constantes) importées de DirectX. | |
| Vanara.pinvoke.shared | Méthodes, structures et constantes partagées à utiliser dans les assemblages vanara.pinvoke. Comprend:
| |
| Vanara.pinvoke.spellcheckingapi | API Pinvoke (méthodes, structures et constantes) importées de l'API de vérification des orthographes Windows. | |
| Vanara.Security | Cours pour les éléments liés à la sécurité dérivés des bibliothèques Pinvoke Vanara. Comprend des méthodes d'extension pour Active Directory et les classes de contrôle d'accès, des méthodes de travail avec les comptes, l'UAC, les privilèges, l'accès au système, l'identité et le SIDS, et un wrapper LSA complet. | |
| Vanara.SystemServices | Cours pour les éléments liés au système dérivés des bibliothèques Vanara Pinvoke. Comprend des extensions pour le processus (privilèges et élavation), FileInfo (informations de compression), les lecteurs et périphériques de réseau partagé et ServiceController (setStartType) qui extraient les informations étendues via des appels d'API natifs. | |
| Vanara.virtualdisk | Classes .NET pour gérer le stockage virtuel Windows (VHD et VHDX) à l'aide de fonctions P / Invoke de VirtDisk.dll. | |
| Vanara.windows.extensions | Méthodes d'extension et conversions des types et méthodes de vanara P / Invoke aux types et méthodes de formulaires Windows. | |
| Vanara.windows.forms | Classes pour les éléments liés à l'interface utilisateur dérivés des bibliothèques Vanara Pinvoke. Comprend des extensions pour presque tous les contrôles communs pour donner des capacités post-Vista, des contrôles WinForms (panneau, commandes de commande, boîtes combinées améliorées, iPaddress, bouton fendu, barre de piste et contrôles thématiques), Contrôle d'arrêt / redémarrage / verrouillage, peinture tamponnée, fichiers de ressources, éditeur de contrôle d'accès, cadre de concepteur simplifié pour Windows.Formes. | |
| Vanara.windows.shell.common | Classes communes pour les éléments de shell Windows dérivés des bibliothèques Vanara Pinvoke. Comprend des éléments de shell, des fichiers, des icônes, des liens et des listes de barres de tâches. | |
| Vanara.windows.shell | Classes pour les éléments de shell Windows dérivés des bibliothèques Vanara Pinvoke. Comprend des éléments de shell, des fichiers, des icônes, des liens et des listes de barres de tâches. | |
| Vanara.winui.extensions | Méthodes d'extension et conversions des types et méthodes Vanara P / Invoke aux types et méthodes UWP et WINUI. | |
| Vanara.wpf.extensions | Méthodes d'extension et conversions des types et méthodes Vanara P / Invoke aux types et méthodes WPF. |
Il existe de nombreux exemples dans le dossier unittest et dans le projet WinClassics Samplescs qui recrée les échantillons Windows en C # à l'aide de vanara.