WNDPROC-Rückruffunktion (winuser.h)

Eine Rückruffunktion, die Sie in Ihrer Anwendung definieren, die Nachrichten verarbeitet, die an ein Fenster gesendet werden. Der WNDPROC-Typ definiert einen Zeiger auf diese Rückruffunktion. Der WndProc-Name ist ein Platzhalter für den Namen der Funktion, die Sie in Ihrer Anwendung definieren.

Syntax

WNDPROC Wndproc;

LRESULT Wndproc(
  HWND unnamedParam1,
  UINT unnamedParam2,
  WPARAM unnamedParam3,
  LPARAM unnamedParam4
)
{...}

Parameter

unnamedParam1

Typ: HWND

Ein Handle zum Fenster. Dieser Parameter wird in der Regel " hWnd" genannt.

unnamedParam2

Typ: UINT

Die Meldung. Dieser Parameter wird in der Regel "uMsg" genannt.

Eine Liste der vom System bereitgestellten Nachrichten finden Sie unter systemdefinierte Nachrichten.

unnamedParam3

Typ: WPARAM

Zusätzliche Nachrichteninformationen. Dieser Parameter wird in der Regel "wParam" genannt.

Der Inhalt des wParam-Parameters hängt vom Wert des uMsg-Parameters ab.

unnamedParam4

Typ: LPARAM

Zusätzliche Nachrichteninformationen. Dieser Parameter wird in der Regel "lParam" genannt.

Der Inhalt des lParam-Parameters hängt vom Wert des uMsg-Parameters ab.

Rückgabewert

Typ: LRESULT

Der Rückgabewert ist das Ergebnis der Nachrichtenverarbeitung und hängt von der gesendeten Nachricht ab.

Hinweise

Wenn Ihre Anwendung auf einer 32-Bit-Version des Windows-Betriebssystems ausgeführt wird, werden unausgerufene Ausnahmen vom Rückruf an Ausnahmehandler auf höherer Ebene übergeben, sofern verfügbar. Anschließend ruft das System den nicht behandelten Ausnahmefilter auf, um die Ausnahme zu behandeln, bevor der Prozess beendet wird. Wenn die PCA aktiviert ist, wird das Problem beim nächsten Ausführen der Anwendung behoben.

Wenn Ihre Anwendung jedoch auf einer 64-Bit-Version des Windows-Betriebssystems oder WOW64 ausgeführt wird, sollten Sie beachten, dass ein 64-Bit-Betriebssystem auf der Grundlage seiner 64-Bit-Prozessorarchitektur, Ausnahmearchitektur und Aufrufkonvention andere Ausnahmen behandelt. In der folgenden Tabelle werden alle möglichen Möglichkeiten zusammengefasst, wie ein 64-Bit-Windows-Betriebssystem oder WOW64 unausgesehene Ausnahmen behandelt.

Verhaltenstyp Wie das System unausgesehene Ausnahmen behandelt
1 Das System unterdrückt alle unausgesehenen Ausnahmen.
2 Das System beendet zuerst den Prozess, und dann bietet der Programmkompatibilitäts-Assistent (PCA), um ihn beim nächsten Ausführen der Anwendung zu beheben. Sie können die PCA-Entschärfung deaktivieren, indem Sie dem Anwendungsmanifest einen Kompatibilitätsbereich hinzufügen.
3 Das System ruft die Ausnahmefilter auf, unterdrückt jedoch alle nicht ausgelösten Ausnahmen, wenn er den Rückrufbereich verlässt, ohne die zugehörigen Handler aufzurufen.

In der folgenden Tabelle wird gezeigt, wie eine 64-Bit-Version des Windows-Betriebssystems und WOW64 unausgesehene Ausnahmen behandelt. Beachten Sie, dass der Verhaltenstyp 2 nur für die 64-Bit-Version des Windows 7-Betriebssystems und höher gilt.

Betriebssystem WOW64 64-Bit-Windows
Windows XP 3 1
Windows Server 2003 3 1
Windows Vista 3 1
Windows Vista SP1 1 1
Windows 7 und höher 1 2

Hinweis

Unter Windows 7 mit SP1 (32-Bit, 64-Bit oder WOW64) ruft das System den nicht behandelten Ausnahmefilter auf, um die Ausnahme vor dem Beenden des Prozesses zu behandeln. Wenn der Programmkompatibilitäts-Assistent (PCA) aktiviert ist, wird es angeboten, das Problem beim nächsten Ausführen der Anwendung zu beheben.

Wenn Sie Ausnahmen in Ihrer Anwendung behandeln müssen, können Sie die strukturierte Ausnahmebehandlung verwenden, um dies zu tun. Weitere Informationen zur Verwendung der strukturierten Ausnahmebehandlung finden Sie unter "Strukturierte Ausnahmebehandlung".

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Header winuser.h (include windows.h)

Weitere Informationen