应用程序未能正确初始化(0xc0150002)

问题描述:

我有一个使用OpenCV库的图像处理C程序。我正在使用Visual Studio 2008进行开发,直到this发生。所以我把整个项目转移到netbeans(6.9)和MinGW。应用程序未能正确初始化(0xc0150002)

我已经配置netbeans来使用OpenCV库,如blog中的指导。

但是当我运行它给这个错误的程序“应用程序未能正确初始化(0xc0150002)”

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

我对代码做的唯一更改是这样的。

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**); 

这是并排侧配置问题。您的程序包含一个清单,声明SxS缓存需要哪个DLL。而Windows无法找到它。从查看Windows事件日志开始,它会告诉你无法找到哪个DLL。

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

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

+0

谢谢, 我没有.manifest文件通过NB项目构建目录。我只从我的VS项目中复制了c文件和头文件。 – Niroshan 2010-08-15 18:21:35

+0

那么,事件日志说了什么? – 2010-08-15 18:41:09

+0

对不起, 没有与此应用程序相关的条目。 (控制面板>管理工具>事件查看器我希望这是查看的正确位置) – Niroshan 2010-08-16 04:42:42