Freigeben über


GetWindowLongPtrW-Funktion (winuser.h)

Ruft Informationen zum angegebenen Fenster ab. Die Funktion ruft auch den Wert bei einem angegebenen Offset in den zusätzlichen Fensterspeicher ab.

Hinweis Verwenden Sie GetWindowLongPtr, um Code zu schreiben, der mit 32-Bit- und 64-Bit-Versionen von Windows kompatibel ist. Bei der Kompilierung für 32-Bit-Windows wird GetWindowLongPtr- als Aufruf der GetWindowLong--Funktion definiert.
 

Syntax

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

Parameter

[in] hWnd

Typ: HWND-

Ein Handle für das Fenster und indirekt die Klasse, zu der das Fenster gehört.

[in] nIndex

Typ: int

Der nullbasierte Offset auf den abzurufenden Wert. Gültige Werte liegen im Bereich 0 bis zur Anzahl der Bytes des zusätzlichen Fensterspeichers, abzüglich der Größe eines LONG_PTR. Um einen anderen Wert abzurufen, geben Sie einen der folgenden Werte an.

Wert Bedeutung
GWL_EXSTYLE
-20
Ruft die erweiterten Fensterformatvorlagenab.
GWLP_HINSTANCE
-6
Ruft ein Handle für die Anwendungsinstanz ab.
GWLP_HWNDPARENT
-8
Ruft ein Handle für das übergeordnete Fenster ab, falls vorhanden.
GWLP_ID
-12
Ruft den Bezeichner des Fensters ab.
GWL_STYLE
-16
Ruft die Fensterformatvorlagenab.
GWLP_USERDATA
-21
Ruft die Benutzerdaten ab, die dem Fenster zugeordnet sind. Diese Daten sind für die Verwendung durch die Anwendung vorgesehen, die das Fenster erstellt hat. Der Wert ist anfangs null.
GWLP_WNDPROC
-4
Ruft den Zeiger auf die Fensterprozedur oder ein Handle ab, der den Zeiger auf die Fensterprozedur darstellt. Sie müssen die CallWindowProc--Funktion verwenden, um die Fensterprozedur aufzurufen.
 

Die folgenden Werte sind auch verfügbar, wenn der hWnd Parameter ein Dialogfeld identifiziert.

Wert Bedeutung
DWLP_DLGPROC
DWLP_MSGRESULT + sizeof(LRESULT)
Ruft den Zeiger auf die Dialogfeldprozedur ab, oder ein Handle, der den Zeiger auf die Dialogfeldprozedur darstellt. Sie müssen die CallWindowProc--Funktion verwenden, um die Dialogfeldprozedur aufzurufen.
DWLP_MSGRESULT
0
Ruft den Rückgabewert einer Nachricht ab, die in der Dialogfeldprozedur verarbeitet wird.
DWLP_USER
DWLP_DLGPROC + sizeof(DLGPROC)
Ruft zusätzliche Informationen privat für die Anwendung ab, z. B. Handles oder Zeiger.

Rückgabewert

Typ: LONG_PTR

Wenn die Funktion erfolgreich ist, ist der Rückgabewert der angeforderte Wert.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Wenn SetWindowLong- oder "SetWindowLongPtr"- zuvor nicht aufgerufen wurde, gibt GetWindowLongPtr null für Werte im zusätzlichen Fenster oder Klassenspeicher zurück.

Bemerkungen

Reservieren Sie zusätzlichen Fensterspeicher, indem Sie einen Wert ungleich Null im cbWndExtra- Member der WNDCLASSEX- Struktur angeben, die mit der RegisterClassEx--Funktion verwendet wird.

Anmerkung

Der winuser.h-Header definiert GetWindowLongPtr als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- winuser.h (enthalten Windows.h)
Library User32.lib
DLL- User32.dll
API-Satz ext-ms-win-ntuser-windowclass-l1-1-0 (eingeführt in Windows 8)

Siehe auch

CallWindowProc

Konzeptionelle

Referenz-

RegisterClassEx-

SetParent-

SetWindowLongPtr-

WNDCLASSEX-

Fensterklassen