How to detect opengl driver version without context?

I have an application that doesn't start with some Intel HD graphics drivers, as the crash (in ig4icd32.dll) can come before our 3D engine is initialized the safer way to show a popup to request to the user to update his driver is do it before the OpenGL is created.

So my question is how can I retrieve the driver information (vendor and version number) before the window is created?

PS: It only impact few users on thousand that use a very old version of driver that have a bug, with more recent driver there is no issue. The popup is intend to warn the user to make sure that he will update drivers.

Update: I took a look to dxdiag and device manager, the driver version they give for my Nvidia card doesn't match the one which is return by Nvidia with OpenGL


I found the solution here, I had to use with "Win32_VideoController" instead of "Win32_OperatingSystem" in the query.

And here is the list of fields we can query.

Be careful, the version number is the one that we can find in the device manager and it doesn't necessary match one given by Nvidia or AMD to the user.

PS: It may have simpler way to retrieve same data by using other APIs.

链接地址: http://www.djcxy.com/p/38426.html

上一篇: 堆栈溢出

下一篇: 如何检测没有上下文的opengl驱动程序版本?