开发OpenGL项目时,在VS开发环境下可能会出现如图所示的错误。
在c:\windows\system32和SysWow64文件夹下存在opengl32.dll,此时,所写程序能够正常编译,但是,程序一但运行就提示
“无法启动此程序,因为计算机中丢失OPENGL.dll。尝试重新安装该程序以解决此问题。”
这时主要是因为同时引用了静态库“glut.lib”和"glut32.lib"。
即在项目->属性->配置属性->链接器->附加依赖项中增加了glut.lib和glut32.lib,而且顺序为glut.dll在前,glut32.dll在后,所以,链接器首先寻找OPENGL.dll而没有寻找opengl32.dll。
另外,如果想要在VS里重现此错误,需要配置附加依赖项后重新生成项目。
本文解析了在VS开发环境中运行OpenGL项目时,遇到的因同时引用静态库'glut.lib'和'glut32.lib'导致的OPENGL.dll缺失错误。文章详细说明了错误原因在于链接器优先寻找不存在的OPENGL.dll而非opengl32.dll,以及如何通过调整附加依赖项顺序来解决此问题。
7143

被折叠的 条评论
为什么被折叠?



