应用程序无法正确初始化(0xc0150002)

时间:2010-08-15 17:32:29

标签: c netbeans opencv mingw netbeans-6.9

我有一个使用OpenCV库的图像处理C程序。我正在使用Visual Studio 2008开发它,直到this发生。所以我将整个项目移动到netbeans(6.9)和MinGW。

我已按照此blog的指导配置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** );

1 个答案:

答案 0 :(得分:1)

这是一个并排配置问题。您的程序包含一个清单,说明它需要从SxS缓存中获取什么DLL。 Windows无法找到它。首先查看Windows事件日志,它会告诉您无法找到哪些DLL。

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

这个hoopla在VS2010顺便退役了。 VS2010 Express可能是您的第三次尝试。