Requires NuGet 4.0 or higher.
dotnet add package UnmanagedExports.Repack.Upgrade --version 1.2.1
NuGet\Install-Package UnmanagedExports.Repack.Upgrade -Version 1.2.1
<PackageReference Include="UnmanagedExports.Repack.Upgrade" Version="1.2.1" />
paket add UnmanagedExports.Repack.Upgrade --version 1.2.1
#r "nuget: UnmanagedExports.Repack.Upgrade, 1.2.1"
// Install UnmanagedExports.Repack.Upgrade as a Cake Addin #addin nuget:?package=UnmanagedExports.Repack.Upgrade&version=1.2.1 // Install UnmanagedExports.Repack.Upgrade as a Cake Tool #tool nuget:?package=UnmanagedExports.Repack.Upgrade&version=1.2.1
Repackaging of UnmanagedExports 1.2.7 to be compatible with PackageReference and additionally upgraded the Microsoft Build Utilities (using Nuget package Microsoft.Build.Utilities).
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||net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed.|
|.NET Core||netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed.|
|.NET Standard||netstandard2.0 is compatible. netstandard2.1 was computed.|
|.NET Framework||net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 is compatible. net48 was computed. net481 was computed.|
|MonoAndroid||monoandroid was computed.|
|MonoMac||monomac was computed.|
|MonoTouch||monotouch was computed.|
|Tizen||tizen40 was computed. tizen60 was computed.|
|Xamarin.iOS||xamarinios was computed.|
|Xamarin.Mac||xamarinmac was computed.|
|Xamarin.TVOS||xamarintvos was computed.|
|Xamarin.WatchOS||xamarinwatchos was computed.|
- Microsoft.Build.Utilities.Core (>= 16.0.461)
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.