wglCopyContext function (wingdi.h)

The wglCopyContext function copies selected groups of rendering states from one OpenGL rendering context to another.

Syntax

BOOL wglCopyContext(
  HGLRC unnamedParam1,
  HGLRC unnamedParam2,
  UINT  unnamedParam3
);

Parameters

unnamedParam1

Specifies the source OpenGL rendering context whose state information is to be copied.

unnamedParam2

Specifies the destination OpenGL rendering context to which state information is to be copied.

unnamedParam3

Specifies which groups of the hglrcSrc rendering state are to be copied to hglrcDst. It contains the bitwise-OR of the same symbolic names that are passed to the glPushAttrib function. You can use GL_ALL_ATTRIB_BITS to copy all the rendering state information.

Return value

If the function succeeds, the return value is TRUE. If the function fails, the return value is FALSE. To get extended error information, call GetLastError.

Remarks

Using the wglCopyContext function, you can synchronize the rendering state of two rendering contexts. You can only copy the rendering state between two rendering contexts within the same process. The rendering contexts must be from the same OpenGL implementation. For example, you can always copy a rendering state between two rendering contexts with identical pixel format in the same process.

You can copy the same state information available only with the glPushAttrib function. You cannot copy some state information, such as pixel pack/unpack state, render mode state, select state, and feedback state. When you call wglCopyContext, make sure that the destination rendering context, hglrcDst, is not current to any thread.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header wingdi.h
Library Opengl32.lib
DLL Opengl32.dll

See also

OpenGL on Windows

WGL Functions

glPushAttrib

wglCreateContext

wglCreateLayerContext

wglShareLists