GetWindowLong

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

A remote application interface (RAPI) version of this function exists, and it is called CeGetWindowLong.

At a Glance

Header file: Winuser.h
Windows CE versions: 1.0 and later

Syntax

LONG GetWindowLong( HWND hWnd, int nIndex );

Parameters

hWnd

Handle to 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 Description
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_ID Not supported.
GWL_USERDATA Not supported.

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

Value Description
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

The requested 32-bit value indicates success. Zero indicates failure. To get extended error information, call GetLastError.

Remarks

The nIndex parameter must be a multiple of 4 bytes.

Unaligned access is not supported.

Windows CE versions 1.0 and 1.01 also do not support the DWL_DLGPROC value in the nIndex parameter.

See Also

CallWindowProc, RegisterClass, SetParent, SetWindowLong, WNDCLASS