首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#上的FreeImage

C#上的FreeImage
EN

Stack Overflow用户
提问于 2012-07-11 19:50:46
回答 1查看 2.3K关注 0票数 0

我已经下载了FreeImage的最新编译版本,然后构建FreeImageNet包装器。将FreeImage.dll和FreeImageNet.dll放在与我的可执行文件(示例代码)相同的文件夹中。但每次我运行它,它都会说freeimage.dll不见了。我修改了FreeImageWrapper.cs上的代码并删除了异常处理程序

代码语言:javascript
复制
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。问题似乎出在本地动态链接库(freeimage.dll)上?

我该如何修复它?

提前谢谢。

我正在使用Visual C# 2010学习版

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-11 19:55:58

如果您尝试将非托管32位dll加载到64位进程中,则通常会发生这种情况。要解决此问题,请打开启动项目的属性,并在Built PlatformTarget下将类型从Any CPU更改为x86

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11432041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档