1.test dword ptr [eax],eax ; probe page.
错误提示:局部数组变量定义超过所分配的最大空间
错误原因:pfile=fopen(fileName,"rb");中的fileName为空,就是没找到文件。
解决方法:给fileName赋值
2.无法解析的外部符号(带__imp)
1>正在链接...
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewGetShaderInfoLog
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewGetShaderiv
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewGetProgramInfoLog
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewGetProgramiv
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewUseProgram
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewLinkProgram
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewAttachShader
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewCreateProgram
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewCompileShader
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewShaderSource
1>flatten.obj : error LNK2001: 无法解析的外部符号 __imp____glewCreateShader
1>flatten.obj : error LNK2019: 无法解析的外部符号 __imp__glewIsSupported,该符号在函数 _main 中被引用
1>flatten.obj : error LNK2019: 无法解析的外部符号 __imp__glewInit,该符号在函数 _main 中被引用
该错误是因为没有正确配置glew库,解决方法如下:
(1)按照:http://glew.sourceforge.net/install.html所述方法正确安装glew库,如果已经正确安装请看下一种方法,以此类推
(2)在VS2008的“项目”菜单,点属性,打开属性对话框,在其中找到配置属性/链接器/输入,然后在右边找到附加依赖项,在其中输入glew32.lib。或者在程序前面加入
#pragma comment(lib,"glew32.lib")
(3)确保主函数中有glewInit();这个函数
3.无法解析的外部符号(不带__imp)
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewCompileShader
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewShaderSource
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewCreateShader
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewGetUniformLocation
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewLinkProgram
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewAttachShader
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewCreateProgram
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewFramebufferTexture2DEXT
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewBindFramebufferEXT
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewGenFramebuffersEXT
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewActiveTextureARB
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewUniform1fARB
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewUniform1iARB
1>RenderDemo.obj : error LNK2001: 无法解析的外部符号 ___glewUseProgramObjectARB
解决方法:去掉代码中的#define GLEW_STATIC一句
4.0xC0000005: 读取位置 0x00000000 时发生访问冲突
这个错误的原因一般是文件指针为空
解决方法:逐步调试找到错误语句,然后找到其中的指针变量,然后顺藤摸瓜,找到与这个变量有关的文件方面的赋值语句,一般错误就在那里。比如,vs = textFileRead("minimal.vert");中的文件minimal.vert文件不在项目根目录下