When a window's buffers are swapped, the back buffer becomes the front, and the front buffer will become the back. The programmer can control whch buffer is affected by OpenGL rendering calls through the use of glDrawBuffer. Front and back buffers are not created for a window until it has been bound to an OpenGL context. This call has no effect on a PM window which has never been bound to an OpenGL context. The window specified by hwnd does not CURRENTLY have to be bound to an OpenGL context, just needs to have been bound at some point.