GLEW(OpenGL Extension Wrangler):在运行时加载 opengl dll?

GLEW (OpenGL Extension Wrangler): Loading opengl dll at runtime?

我想在 运行时 加载 opengl32.dll(使用来自 Win32 的 LoadLibrary),然后加载 OpenGL2/3/4 函数。我尝试为此使用 glew,但它无法解析某些 wgl 函数。

那么有没有一种简单的方法可以使用 glew 导入 OpenGL 功能同时动态加载 opengl?

可以按照您的要求进行操作,但您必须采取不同的方式。通常,当在运行时手动加载共享库(或 dll)时,您将必须按符号搜索要使用的函数并将它们分配给句柄以便调用它们。

您现在所做的将永远不会编译,因为您显式 使用了链接器无法找到的符号名称。您必须将所有这些未解析的函数调用替换为手动加载的共享库 (opengl32.dll) 中的查询。

glfw project中有一些很好的代码可供您参考。查看 _glfwInitWGLloadWGLExtensions 函数。