The architecture of the Chilkat .NET Core assembly is different than that for the .NET Framework
in the following ways.
Chilkat for .NET Framework
- Downloaded from https://www.chilkatsoft.com/downloads_DotNet.asp
- can alternatively be used directly from NuGet: such as https://www.nuget.org/packages/chilkat-x64
- The assembly DLL is a mixed-mode assembly, which means the outer layer is managed, but the inner core is native code. This prevents the ability to statically link, and thus there is a dependency on a VC++ runtime redist library, which is VC2008 by default, but Chilkat also has an alternative built with VC2017.
Chilkat for .NET Core
- Can only be used from NuGet, such as https://www.nuget.org/packages/ChilkatDnCore
- The Chilkat .NET Core assembly is fully managed, but has a dependency on the ChilkatNativeLib, also on NuGet at https://www.nuget.org/packages/ChilkatNativeLib
- In your Visual Studio project, when you add the reference to the Chilkat .NET Core package, it should automatically the reference to the ChilkatNativeLib.
- The ChilkatNativeLib is basically just a “C” library with exported functions, so it was produced by linking statically, and thus there is no dependency on VC++ runtime redist.
- Therefore, the Chilkat .NET Core assembly is fully self-contained in that it’s composed of the fully managed assembly + a reference to ChilkatNativeLib which was statically linked and has no dependencies.