So… I am probably going to embarrass myself again(1) with something easy I forgot to do in my project but…
Trying to migrate a pipeline extension that manipulates image data using FreeImage nuget extension i get the following error.
unable to load DLL ‘FreeImage’
I have made a minimal solution and uploaded it to git that replicates the problem(2): https://github.com/gronken/TestFreeImage
The solution has two projects the FreeImagePipline and a TestFreeImage.OpenGL.
Everything is standard(ish) from the templates except for Line 14 in the FreeImageEditImporter.cs that just allocates some mapdata using FreeImage.Standard.
FIBITMAP image = FreeImage.Allocate(100, 100, 24);
- The FreeImagePipline project builds fine.
- If you build the file.bmp from the Content.mgcb in the TestFreeImage.OpenGL project it builds fine
- If you try to run the TestFreeImage.OpenGL project you get the unable to load DLL ‘FreeImage’ error.
- To make the TestFreeImage.OpenGL run you can delete line 14 from the FreeImagePipline (https://github.com/gronken/TestFreeImage/blob/master/FreeImagePipline/FreeImageEditImporter.cs)
So my observation is that i can’t do anything with freeimage in the pipeline extension 3.8 but it worked in 3.7.
I’m guessing it’s something easy like i have to tell the FreeImage.Standard dll to work with .Net Core 3.1 in some capacity but i have no idea how… or why
Any help would be much appreciated.
(1) Pipeline extension 3.8 not finding nuget files
(2) Disclaimer: The pipeline project don’t do anything constructive besides throw the exception for simplification. It doesnt use the file.bmp its there to prove the point thats all.