我已经下载了 FreeImage 的最新编译版本,然后构建了 FreeImageNet 包装器。将 FreeImage.dll 和 FreeImageNet.dll 放在与我的可执行文件(示例代码)相同的文件夹中。但是每次我运行它时,它都会说 freeimage.dll 丢失了。我修改了 FreeImageWrapper.cs 上的代码并删除了异常处理程序
public static bool IsAvailable()
{
/*try
{*/
// Call a static fast executing function
Version nativeVersion = new Version(GetVersion());
Version wrapperVersion = GetWrapperVersion();
// No exception thrown, the library seems to be present
return
(nativeVersion.Major > wrapperVersion.Major) ||
((nativeVersion.Major == wrapperVersion.Major) && (nativeVersion.Minor > wrapperVersion.Minor)) ||
((nativeVersion.Major == wrapperVersion.Major) && (nativeVersion.Minor == wrapperVersion.Minor) && (nativeVersion.Build >= wrapperVersion.Build));
}
/*catch (DllNotFoundException)
{
return false;
}
catch (EntryPointNotFoundException)
{
return false;
}
catch (BadImageFormatException)
{
return false;
}*/
}
它总是抛出 BadImageFormatException。似乎问题出在本机 dll (freeimage.dll) 上?
我如何解决它 ?
提前致谢。
我正在使用 Visual C# 2010 Express