Система посылает сообщение WM_SETTINGCHANGE всем окнам верхнего уровня при функции SystemParametersInfo изменяет параметр всей системы. Система отправляет данное сообщение, только если SystemParametersInfo вызывающий объект задает флаг SPIF_SENDCHANGE.
Приложение может посылать WM_SETTINGCHANGE всем окнам верхнего уровня, когда он вносит изменения в параметры системы. К примеру, вы можете отправить это сообщение после вызова WriteProfileString WriteProfileSection, или SetLocaleInfo функций, или после внесения изменений в системных параметров в реестре.
WM_SETTINGCHANGE сообщение является таким же, как старые сообщения WM_WININICHANGE.
WM_SETTINGCHANGE wParam = wFlag; / / общесистемных параметров флага lParam = pszSection (LPARAM) (LPCTSTR); / / название измененного раздела или реестра
Когда приложение отправляет сообщение, этот параметр должен иметь значение NULL.
Этот параметр не является особенно полезным в определении какая система параметр изменен. К примеру когда строка является именем реестра, она обычно указывает только конечный узел в реестре, не весь путь. Кроме того некоторые приложения отправить это сообщение с lParam устанавливается в значение NULL. В общем при получении этого сообщения, необходимо проверить и обновить любые настройки параметров системы, используемые вашим приложением.
Если обработать это сообщение возвращает ноль.
Чтобы отправить сообщение WM_SETTINGCHANGE всех окон верхнего уровня, используйте функцию SendMessageTimeout с параметром hwnd , равным HWND_BROADCAST.
Вызовы функций, которые изменяют победу.Вместо этого реестра может сопоставляться ini-файл. Такое сопоставление происходит когда победу.Ini-файл и изменить раздел, указаны в разделе следующие ключи реестра:
HKEY_LOCAL_MACHINE\программное обеспечение\Microsoft\
Windows NT\CurrentVersion\IniFileMapping
Изменение места хранения не оказывает влияния на поведение этого сообщения.
nbsp; Windows &NT: требует версии 4.0 или более поздней версии.
Windows:Требует Windows 95 или более поздней версии.
Windows CE:Требует версии 1.0 или более поздней версии.
Заголовок:Объявленные в winuser.h.
Обзор Windows, сообщения окна, SendMessageTimeout, SetLocaleInfo SystemParametersInfo, WM_WININICHANGE, WriteProfileSection WriteProfileString