dotnet add package UnmanagedExports --version 1.2.7
NuGet\Install-Package UnmanagedExports -Version 1.2.7
<PackageReference Include="UnmanagedExports" Version="1.2.7" />
paket add UnmanagedExports --version 1.2.7
#r "nuget: UnmanagedExports, 1.2.7"
// Install UnmanagedExports as a Cake Addin #addin nuget:?package=UnmanagedExports&version=1.2.7 // Install UnmanagedExports as a Cake Tool #tool nuget:?package=UnmanagedExports&version=1.2.7
A set of compile-time libraries (nothing to deploy) and a build task that enable you to export functions from managed code to native applications.
That means, you can create plugins in a managed language like C# or F# for native applications that only have a C-Api (like Notepad++).
The nuget package is all you need. Just mark your methods with [DllExport] and build for x86, x64 or ia64.
- You have to set your platform target to either x86, ia64 or x64. AnyCPU assemblies cannot export functions.
- The export name defaults to the method name and the calling convention to stdcall. If that's all what you want, you can just use [DllExport] without parameters.
- You cannot put your exports in generic types or export generic methods. (The CLR wouldn't know what type parameters to use)
|Product||Versions Compatible and additional computed target framework versions.|
|.NET Framework||net is compatible.|
This package has no dependencies.
NuGet packages (4)
Showing the top 4 NuGet packages that depend on UnmanagedExports:
Metatrader MQL library for C#
Wyam is a simple to use, highly modular, and extremely configurable static content generator. This library provides support for generating text.
GitHub repositories (10)
Showing the top 5 popular GitHub repositories that depend on UnmanagedExports:
Windows Driver and XInput Wrapper for Sony DualShock 3/4 Controllers
Run PowerShell with rundll32. Bypass software restrictions.
Run Powershell without software restrictions.
Run shellcode from resource
- will use the most recent version of Microsoft.Build.Utilities.ToolLocationHelper to have a greater chance of finding the exact ildasm/ilasm for the project's target framework version
- no longer fails the build when it can't find lib.exe
- proper overridable MSBuild properties (see tools/RGiesecke.DllExport.targets)