Condividi tramite


Funzione GetWindowLongPtrA (winuser.h)

Recupera informazioni sulla finestra specificata. La funzione recupera anche il valore in corrispondenza di un offset specificato nella memoria aggiuntiva della finestra.

Nota Per scrivere codice compatibile con entrambe le versioni a 32 bit e a 64 bit di Windows, usare GetWindowLongPtr. Durante la compilazione per Windows a 32 bit, getWindowLongPtr viene definita come chiamata alla funzione GetWindowLong.
 

Sintassi

LONG_PTR GetWindowLongPtrA(
  [in] HWND hWnd,
  [in] int  nIndex
);

Parametri

[in] hWnd

Tipo: HWND

Handle per la finestra e, indirettamente, la classe a cui appartiene la finestra.

[in] nIndex

Tipo: int

Offset in base zero al valore da recuperare. I valori validi sono compresi nell'intervallo zero fino al numero di byte di memoria finestra aggiuntiva, meno le dimensioni di un LONG_PTR. Per recuperare qualsiasi altro valore, specificare uno dei valori seguenti.

Valore Significato
GWL_EXSTYLE
-20
Recupera gli stili della finestra estesa .
GWLP_HINSTANCE
-6
Recupera un handle nell'istanza dell'applicazione.
GWLP_HWNDPARENT
-8
Recupera un handle nella finestra padre, se presente.
GWLP_ID
-12
Recupera l'identificatore della finestra.
GWL_STYLE
-16
Recupera gli stili della finestra .
GWLP_USERDATA
-21
Recupera i dati utente associati alla finestra. Questi dati sono destinati all'uso da parte dell'applicazione che ha creato la finestra. Il valore è inizialmente zero.
GWLP_WNDPROC
-4
Recupera il puntatore alla routine della finestra o un handle che rappresenta il puntatore alla routine della finestra. Per chiamare la routine della finestra, è necessario usare la funzione CallWindowProc.
 

I valori seguenti sono disponibili anche quando il parametro hWnd identifica una finestra di dialogo.

Valore Significato
DWLP_DLGPROC
DWLP_MSGRESULT + sizeof(LRESULT)
Recupera il puntatore alla routine della finestra di dialogo o un handle che rappresenta il puntatore alla routine della finestra di dialogo. Per chiamare la routine della finestra di dialogo, è necessario utilizzare la funzione CallWindowProc .
DWLP_MSGRESULT
0
Recupera il valore restituito di un messaggio elaborato nella routine della finestra di dialogo.
DWLP_USER
DWLP_DLGPROC + sizeof(DLGPROC)
Recupera informazioni aggiuntive private nell'applicazione, ad esempio handle o puntatori.

Valore restituito

Tipo: LONG_PTR

Se la funzione ha esito positivo, il valore restituito è il valore richiesto.

Se la funzione ha esito negativo, il valore restituito è zero. Per ottenere informazioni estese sull'errore, chiamare GetLastError.

Se setWindowLong o SetWindowLongPtr non è stato chiamato in precedenza, GetWindowLongPtr restituisce zero per i valori nella finestra o nella memoria della classe aggiuntiva.

Osservazioni

Riservare memoria aggiuntiva della finestra specificando un valore diverso da zero nella membro cbWndExtra della struttura WNDCLASSEX utilizzata con la funzione RegisterClassEx.

Nota

L'intestazione winuser.h definisce GetWindowLongPtr come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione winuser.h (include Windows.h)
libreria User32.lib
dll User32.dll
set di API ext-ms-win-ntuser-windowclass-l1-1-0 (introdotto in Windows 8)

Vedere anche

CallWindowProc

concettuale

riferimento

RegisterClassEx

SetParent

SetWindowLongPtr

WNDCLASSEX

classi finestra