WM_SETTINGCHANGE (Compact 2013)

3/28/2014

This message is sent by the OS to all top-level windows after a system-wide change has been made. The WM_SETTINGCHANGE message is the same as the older WM_WININICHANGE message.

Syntax

WM_SETTINGCHANGE 
        wParam = wFlag;lParam = (LPARAM)(LPCTSTR)pszSectionName;

Parameters

  • wFlag
    When the system sends the message as a result of a SystemParametersInfo call, this parameter is a flag that indicates the system parameter that was changed. For a list of values, see the SystemParametersInfo function.

    When an application sends the message, this parameter must be NULL.

  • pszSectionName
    Pointer to a null-terminated string that indicates the area that contains the system parameter that was changed. For example, this string can be the name of a registry key or the name of a section in the Win.ini file.

    This parameter is not particularly useful in determining which system parameter changed. For example, when the string is a registry name, it typically indicates only the leaf node in the registry, not the whole path. In addition, some applications send this message with lParam set to NULL. In general, when you receive this message, you should check and reload any system parameter settings used by your application.

Return Value

An application should return zero if it processes this message.

Remarks

The wParam parameter is set to a SPI_XXX constant or SETTINGCHANGE_RESET.

lParam is not used.

A change in the software-based input panel (SIP) information sets wFlags to SPI_SETSIPINFO, whereas a change in the current IM sets the flag to SPI_SETCURRENTIM. An application can change the SIP size in response to this message. However, for performance reasons, inactivated applications - for example, applications not currently in the foreground - should cache any SIP changes and delay updating the window until the application is reactivated. When notified of the change in the SIPstate, an activated application may want to query the current SIP state before making the final adjustment. Do so by calling the SipGetInfo function.

The change in the storage location has no effect on the behavior of this message.

Requirements

Header

winuser.h

See Also

Reference

System Information Messages
SendMessage
SipGetInfo
SystemParametersInfo