WM_SETTINGCHANGE Nachricht

Eine Nachricht, die an alle Fenster der obersten Ebene gesendet wird, wenn die SystemParametersInfo-Funktion eine systemweite Einstellung ändert oder wenn sich Die Richtlinieneinstellungen geändert haben.

Anwendungen sollten WM_SETTINGCHANGE an alle Fenster der obersten Ebene senden, wenn sie Änderungen an Systemparametern vornehmen. (Diese Nachricht kann nicht direkt an ein Fenster gesendet werden.) Um die WM_SETTINGCHANGE Nachricht an alle Fenster der obersten Ebene zu senden, verwenden Sie die SendMessageTimeout-Funktion , wobei der hwnd-Parameter auf HWND_BROADCAST festgelegt ist.

Ein Fenster empfängt diese Nachricht über seine WindowProc-Funktion .

#define WM_WININICHANGE                 0x001A
#define WM_SETTINGCHANGE                WM_WININICHANGE

Parameter

wParam

Wenn das System diese Nachricht als Ergebnis eines SystemParametersInfo-Aufrufs sendet, ist der wParam-Parameter der Wert des uiAction-Parameters , der an die SystemParametersInfo-Funktion übergeben wird. Eine Liste der Werte finden Sie unter SystemParametersInfo.

Wenn das System diese Nachricht infolge einer Änderung der Richtlinieneinstellungen sendet, gibt dieser Parameter den Typ der angewendeten Richtlinie an. Dieser Wert ist 1, wenn die Computerrichtlinie angewendet wurde, oder null, wenn die Benutzerrichtlinie angewendet wurde.

Wenn das System diese Nachricht infolge einer Änderung der Gebietsschemaeinstellungen sendet, ist dieser Parameter 0.

Wenn eine Anwendung diese Nachricht sendet, muss dieser Parameter NULL sein.

lParam

Wenn das System diese Nachricht als Ergebnis eines SystemParametersInfo-Aufrufs sendet, ist lParam ein Zeiger auf eine Zeichenfolge, die den Bereich angibt, der den geänderten Systemparameter enthält. Dieser Parameter gibt normalerweise nicht an, welcher bestimmte Systemparameter geändert wurde. (Beachten Sie, dass einige Anwendungen diese Nachricht senden, wobei lParam auf NULL festgelegt ist.) Wenn Sie diese Meldung erhalten, sollten Sie im Allgemeinen alle Systemparametereinstellungen überprüfen und neu laden, die von Ihrer Anwendung verwendet werden.

Diese Zeichenfolge kann der Name eines Registrierungsschlüssels oder der Name eines Abschnitts in der Win.ini-Datei sein. Wenn die Zeichenfolge ein Registrierungsname ist, gibt sie in der Regel nur den Blattknoten in der Registrierung an, nicht den vollständigen Pfad.

Wenn das System diese Nachricht infolge einer Änderung der Richtlinieneinstellungen sendet, verweist dieser Parameter auf die Zeichenfolge "Policy".

Wenn das System diese Nachricht infolge einer Änderung der Gebietsschemaeinstellungen sendet, zeigt dieser Parameter auf die Zeichenfolge "intl".

Um eine Änderung der Umgebungsvariablen für das System oder den Benutzer zu bewirken, senden Sie diese Nachricht, wobei lParam auf die Zeichenfolge "Environment" festgelegt ist.

Rückgabewert

Typ: LRESULT

Wenn Sie diese Nachricht verarbeiten, geben Sie null zurück.

Bemerkungen

Der lParam-Parameter gibt an, welche Systemmetrik geändert wurde, z. B. "ConvertibleSlateMode", wenn der CONVERTIBLESLATEMODE-Indikator umgeschaltet wurde, oder "SystemDockMode", wenn der DOCKED-Indikator umgeschaltet wurde.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Winuser.h (einschließlich Windows.h)

Siehe auch

Richtlinienereignisse

SendMessageTimeout

Systemparametersinfo