2014-01-28 6 views
1

Выполнение следующего (взломанного) кода изящно закрывает explorer.exe, но снова открывает его как окно (а не панель задач).Как перезагрузить explorer.exe с помощью установщика NSIS?

FindWindow $R0 "Shell_TrayWnd" 
SendMessage $R0 0x5B4 0 0 
Exec "explorer" 

Однако, если я нахожу «проводник» из окна cmd, он просто открывает панель задач.

Кто-то обязательно спросит: «Почему вы хотите убить explorer.exe?» - Этим людям, я говорю, «оболочки расширений: |»

+0

Это во время установки или удаления и какого типа расширения оболочки? – Anders

ответ

0

Вы можете попробовать добавить спящий режим перед вызовом Exec. (Проводник вызывает недокументированные функции оболочки для регистрации в качестве панели Progman + Taskbar, если старый процесс проводника по-прежнему существует, этот вызов завершится с ошибкой)

Есть, конечно, другие проблемы. Могут быть другие приложения, которые также загружают расширение или даже другой проводник, если вы зарегистрированы в HKCR/HKLM.

Смежные вопросы