Prev Next

GetWindowLong info  Overview  Group

The GetWindowLong function retrieves information about the specified window. The function also retrieves the 32-bit (long) value at the specified offset into the extra window memory of a window.

LONG GetWindowLong(

    HWND hWnd,

// handle of window

    int nIndex 

// offset of value to retrieve

   );

Parameters

hWnd
Identifies the window and, indirectly, the class to which the window belongs.
nIndex
Specifies the zero-based offset to the value to be retrieved. Valid values are in the range zero through the number of bytes of extra window memory, minus four; for example, if you specified 12 or more bytes of extra memory, a value of 8 would be an index to the third 32-bit integer. To retrieve any other value, specify one of the following values:

Value

Action

GWL_EXSTYLE

Retrieves the extended window styles.

GWL_STYLE

Retrieves the window styles.

GWL_WNDPROC

Retrieves the address of the window procedure, or a handle representing the address of the window procedure. You must use the CallWindowProc function to call the window procedure.

GWL_HINSTANCE

Retrieves the handle of the application instance.

GWL_HWNDPARENT

Retrieves the handle of the parent window, if any.

GWL_ID

Retrieves the identifier of the window.

GWL_USERDATA

Retrieves the 32-bit value associated with the window. Each window has a corresponding 32-bit value intended for use by the application that created the window.

The following values are also available when the hWnd parameter identifies a dialog box:

Value

Action

DWL_DLGPROC

Retrieves the address of the dialog box procedure, or a handle representing the address of the dialog box procedure. You must use the CallWindowProc function to call the dialog box procedure.

DWL_MSGRESULT

Retrieves the return value of a message processed in the dialog box procedure.

DWL_USER

Retrieves extra information private to the application, such as handles or pointers.

Return Values

If the function succeeds, the return value is the requested 32-bit value.

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

Remarks

Reserve extra window memory by specifying a nonzero value in the cbWndExtra member of the WNDCLASS structure used with the RegisterClass function.

See Also

CallWindowProc, GetWindowWord, RegisterClass, SetParent, SetWindowLong, SetWindowWord, WNDCLASS