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 を使用しています