1

Тема: AHK: заставить explorer заново прочитать настройки из реестра

В "Панель управления > Параметры папок" есть настройки, которые можно переключить вручную, а потом нажать кнопку "Применить" и они будут применены на лету.
Я нашёл какие ключи реестра изменяются при переключении тех настроек и теперь могу делать прямые правки реестра.
Но эти изменения, вносимые в реестр, не применяются на лету, а применяются только при следующем запуске explorer.exe.
Перезапускать explorer.exe  - для меня не вариант, хочется научиться скриптом AHK заставлять explorer.exe перечитывать настройки из реестра и применять их, как это делается, при нажатии кнопки "применить" в окне "Параметры папок".
Думал, что может быть какое-нибудь сообщение надо отправить проводнику через PostMessage/SendMessage, поиск привёл к этой теме, но никакая из тех команд не помогла.
Как обновить настройки проводника?

2 (изменено: serzh82saratov, 2015-08-09 23:21:00)

Re: AHK: заставить explorer заново прочитать настройки из реестра

Например при применении отображения скрытых файлов, посылается F5 во все окна проводника.


    for window in ComObjCreate("Shell.Application").Windows
        ControlSend, SysTreeView321, {f5}, % "ahk_id " window.hwnd
    ControlGet, hwnd, HWND,, SysListView321
        , % DllCall("GetTopWindow", "Int", id:=DllCall("GetShellWindow")) 
        ? "ahk_id" id : "ahk_class WorkerW ahk_exe explorer.exe" 
    ControlSend, , {f5}, % "ahk_id" hwnd
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

3

Re: AHK: заставить explorer заново прочитать настройки из реестра

Ох, чёрт, всё так просто оказалось... аж стыдно, что спросил
Спасибо, serzh82saratov!

4

Re: AHK: заставить explorer заново прочитать настройки из реестра

Я б так сделал:

WM_COMMAND := 0x111, HWND_BROADCAST := 0xFFFF, Refresh := 41504
PostMessage, WM_COMMAND, Refresh,,, ahk_id %HWND_BROADCAST%
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder