尝试在Qt中使用glload创建一个OpenGL应用程序,我测试了示例代码。
#include <iostream>
#include <windows.h>
#include <glload/gl_all.h>
#include <glload/gll.hpp>
using namespace std;
int main()
{
glload::LoadFunctions();
cout << "Hello World!" << endl;
return 0;
}
但是当我运行它时,它就会停止工作。调试错误是
无法运行“:请求的操作需要提升。
构建命令是
qmake.exe C:\ Users \ Benbroher \ test \ test.pro -r -spec win32-g ++“LIBS + = - lglloadD”“LIBS + = - lopengl32”
我的Qt是4.8.1,而glsdk是0.4.4。 我正在运行64位版本的windows7,它发生在32位版本的winXP中。
可能导致此问题的原因以及如何解决?
答案 0 :(得分:0)
你的QApplication对象实例在哪里?没有这个,Qt的大部分都没有功能。
答案 1 :(得分:0)
在创建有效的OpenGL上下文并使其成为当前之前,您无法加载OpenGL函数。 The documentation is very clear on this
答案 2 :(得分:0)
我认为你的直接问题与Qt或OpenGL无关。 (虽然在其他答案中关于Qt和OpenGL的观点都是有效的。考虑到它们)。
我的假设是缺少嵌入式清单是您的主要问题。鉴于你在Windows上,我认为它使用的是qmake / mingw,这可能意味着没有自动嵌入清单。
这有时会导致Windows假定应用程序需要以管理员权限运行。特别是对于某些特定应用程序名也许您可以告诉我们您的应用程序(exe)被称为什么。现在我认为这是个问题。
有关如何嵌入标准清单的信息,请查看this excellent blog entry。