我在我的 OpenGL 项目中使用libpng在 windows xp 下使用 VC6.0 加载 png 文件的纹理。构建没问题,运行过程中出现错误。错误是
the instruction at 0x0040b4a3 referenced memory at 0x00000008 the memory could not be written
我尝试重新启动,但错误仍然存在。而且我已经把exe文件放到另一个xp桌面上,错误仍然存在。
调试的时候发现这个语句出错了:(一般是和libpng一起用的)
png_read_png(png_ptr, info_ptr, PNG_TRANSFORM_STRIP_16 | PNG_TRANSFORM_PACKING | PNG_TRANSFORM_EXPAND, png_voidp_NULL);
错误信息是
Unhandled exception in test.exe(NTDLL.DLL): 0xc0000005: Access Violation.
我的代码在 fedora 下的 g++ 下运行良好,但在 windows XP 下的 VC6.0 下出现问题。
源代码很大,不知道哪里出错了,所以不知道这里贴什么代码。
有人对此有任何想法吗?
如果您能在这方面帮助我,我将不胜感激。谢谢!:)