0

我有一个使用 OpenCV 库的图像处理 C 程序。在发生这种情况之前,我一直在使用 Visual Studio 2008 进行开发。所以我把整个项目搬到了 netbeans(6.9) 和 MinGW。

我已将 netbeans 配置为按照此博客中的指导使用 OpenCV 库。

但是当我运行程序时,它给出了这个错误“应用程序无法正确初始化(0xc0150002)”

我认为尝试从硬盘读取任何图像文件时不会发生这种情况。它甚至没有在 main 方法中执行第一行就给出了错误。

我对代码所做的唯一更改就是这个。

static __inline void release_mem( CvPoint2D64f*, CvPoint2D64f*, static struct feature** );

这给了我错误:storage class specified for parameter 'type name' 所以我将代码更改为(试错而不是任何逻辑)

static __inline void release_mem( CvPoint2D64f*, CvPoint2D64f*, struct feature** );
4

1 回答 1

1

这是一个并行配置问题。您的程序包含一个清单,说明它需要 SxS 缓存中的 DLL。而 Windows 找不到它。首先查看 Windows 事件日志,它会告诉您找不到哪个 DLL。

这更典型的是 VS2008 的问题,它的 CRT 库的 DLL 版本存储在并行缓存中。像 msvcrt90.dll。也许您没有设法将代码转换为新的构建环境。奇怪的是,嵌入清单是一个显式的构建步骤。请检查您的构建目录中是否没有 .manifest 文件。

顺便说一句,这个 hoopla 在 VS2010 中退休了。VS2010 Express 可能是您的第三次尝试。

于 2010-08-15T17:59:14.230 回答