glGetString returns nothing!

I have downloded and installed the latest version of my graphic card. However glGetString( GL_VENDOR )-Or other parameters of this function- does not return a string. GLinfo can detect the name of the vendor, OpenGL version and other information of my driver. here’s the features of my graphic card reported by GLinfo:
Driver Version :
Vendor : NVIDIA Corporation
Renderer : Geforce FX 5500 AGP/SSE2/3DNOW!
OpenGL Version : 2.0.3

And here’s my code:
bool GRAPHICCARD::detect()
char renderer[256] = “”;
if( glGetString( GL_VENDOR ) == NULL )
MessageBox( NULL, “ERROR 101
We can not detect your graphic card.However we don’t stop the program.
There’s no guarantee that it is run correctly!”, “Persian Engine Error”, MB_OK | MB_ICONERROR );
strcpy( renderer, (char*)glGetString( GL_VENDOR ) );
strupr( renderer );
if( strstr( renderer, “MICROSOFT” ) != NULL )
MessageBox( NULL, “Please install your graphic card”, “Persian Engine Error”, MB_OK | MB_ICONINFORMATION );
return false;

return true;


My code reports an error. However as glGetString returns NULL, my program can not detect the graphic card.
What’s the problem?

All OpenGL functions need working context. So you must do all the ChoosePixelFormat / wglCreateContext / wglMakeCurrent stuff first.

Thanks. I had called this class before my raster class! A funny mistake :wink: