Función GetWindowLongA (winuser.h)

Recupera información sobre la ventana especificada. La función también recupera el valor de 32 bits (DWORD) en el desplazamiento especificado en la memoria de ventana adicional.

Nota Si va a recuperar un puntero o un identificador, esta función se ha reemplazado por la función GetWindowLongPtr . (Los punteros y los identificadores son de 32 bits en Windows de 32 bits y 64 bits en Windows de 64 bits). Para escribir código compatible con versiones de 32 y 64 bits de Windows, use GetWindowLongPtr.

 

Sintaxis

LONG GetWindowLongA(
  [in] HWND hWnd,
  [in] int  nIndex
);

Parámetros

[in] hWnd

Tipo: HWND

Identificador de la ventana y, indirectamente, la clase a la que pertenece la ventana.

[in] nIndex

Tipo: int

Desplazamiento de base cero al valor que se va a recuperar. Los valores válidos están en el intervalo cero a través del número de bytes de memoria de ventana adicional, menos cuatro; por ejemplo, si especificó 12 o más bytes de memoria adicional, un valor de 8 sería un índice para el tercer entero de 32 bits. Para recuperar cualquier otro valor, especifique uno de los valores siguientes.

Valor Significado
GWL_EXSTYLE
-20
Recupera los estilos de ventana extendidos.
GWL_HINSTANCE
-6
Recupera un identificador para la instancia de la aplicación.
GWL_HWNDPARENT
-8
Recupera un identificador en la ventana primaria, si existe.
GWL_ID
-12
Recupera el identificador de la ventana.
GWL_STYLE
-16
Recupera los estilos de ventana.
GWL_USERDATA
-21
Recupera los datos de usuario asociados a la ventana. Estos datos están diseñados para su uso por parte de la aplicación que creó la ventana. Su valor es inicialmente cero.
GWL_WNDPROC
-4
Recupera la dirección del procedimiento de ventana o un identificador que representa la dirección del procedimiento de ventana. Debe usar la función CallWindowProc para llamar al procedimiento de ventana.
 

Los valores siguientes también están disponibles cuando el parámetro hWnd identifica un cuadro de diálogo.

Valor Significado
DWL_DLGPROC
DWLP_MSGRESULT + sizeof(LRESULT)
Recupera la dirección del procedimiento del cuadro de diálogo o un identificador que representa la dirección del procedimiento del cuadro de diálogo. Debe usar la función CallWindowProc para llamar al procedimiento del cuadro de diálogo.
DWL_MSGRESULT
0
Recupera el valor devuelto de un mensaje procesado en el procedimiento del cuadro de diálogo.
DWL_USER
DWLP_DLGPROC + sizeof(DLGPROC)
Recupera información adicional privada para la aplicación, como identificadores o punteros.

Valor devuelto

Tipo: LONG

Si la función se ejecuta correctamente, el valor devuelto es el valor solicitado.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Si no se ha llamado a SetWindowLong anteriormente, GetWindowLong devuelve cero para los valores de la memoria de clase o ventana adicional.

Comentarios

Reserve memoria de ventana adicional especificando un valor distinto de cero en el miembro cbWndExtra de la estructura WNDCLASSEX utilizada con la función RegisterClassEx .

Ejemplos

Para obtener un ejemplo, vea Crear, enumerar y cambiar el tamaño de las ventanas secundarias.

Nota

El encabezado winuser.h define GetWindowLong como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluya Windows.h)
Library User32.lib
Archivo DLL User32.dll
Conjunto de API ext-ms-win-ntuser-windowclass-l1-1-0 (introducido en Windows 8)

Consulte también

CallWindowProc

Conceptual

GetWindowLongPtr

Referencia

RegisterClassEx

SetParent

SetWindowLong

WNDCLASS

Clases de ventanas