![]() |
Применение темы через BAT\CMD
Есть такой вот скрипт, подсказанный Smarty (источник), который должен применять тему:
Код:
rundll32.exe %SystemRoot%\system32\shell32.dll,Control_RunDLL %SystemRoot%\system32\desk.cpl desk,@Themes /Action:OpenTheme /file:%SystemRoot%\Resources\themes\Aero.theme |
Pozia, сомнительно, что это относится к оформлению системы, но всё же...
Мы с автором данной информации разговаривали по этому поводу, но, видимо, он забыл исправить источник. Дело в том, что команда Код:
taskkill /im explorer.exe /F Код:
ping -n 10 127.0.0.1 > NUL И ещё... Путь к файлу темы лучше указать в кавычках (из-за возможных пробелов в пути). Вот рабочий скрипт: Код:
rundll32.exe %SystemRoot%\system32\shell32.dll,Control_RunDLL %SystemRoot%\system32\desk.cpl desk,@Themes /Action:OpenTheme /file:"%SystemRoot%\Resources\themes\Aero.theme" |
Источник тоже поправлен
|
Smarty, вот здесь есть более элегантное решение моего вопроса.
|
Smarty, по указанной мною ссылке предложили автоит скрипт применения темы без перезагрузки эксплорера. Очень удобно
|
Вложений: 1
Pozia, отлично!
Теперь делаем так. Выкладываю утилиту для компиляции скрипта *.au3 в файл *.exe. В папке с утилитой лежит файл Theme Apply.au3 с содержанием из поста Bodya.N: Код:
#NoTrayIcon и измените в первой строке Aero (выделено синим) на название нужной темы и сохраните. Затем запустите утилиту, укажите этот скрипт и скомпилируйте исполняемый файл. |
Ребят на мой взгляд вот так было бы гораздо удобнее:
Код:
#NoTrayIcon Код:
"Theme Apply.exe" "Aero" |
Вложений: 1
Тогда этот вариант.
Во вложении скомпилированный Theme_Apply.exe и пример скрипта Theme_Apply.cmd: Код:
@echo off |
Господа, перечитал и попробовал все варианты, но не желает тема применятся.
Окно тоже не закрывается. А этот вариант мне очень нужен. Подскажите в чем проблема... PS: Только у меня XP Все разобрался... $theme = "*****" $title = "Свойства: Экран" If FileExists (@WindowsDir & "\Resources\Themes\" & $theme & ".theme") Then ShellExecute (@WindowsDir & "\Resources\Themes\" & $theme & ".theme") WinWait ($title,"",10) If WinExists ($title) Then ControlClick ($title,"",1) Else MsgBox (16,'Ошибка применения Темы','Тема "' & $theme & '" не обнаружена! ') EndIf Теперь заработало!!! :yahoo: Всем спасибо. |
У меня ошибка при запуске скрипта:
![]() «autoitscreen» на Яндекс.Фотках Я думаю проблема в указании имени файла или пути. Подскажите, что я делаю не правильно? Пример скрипта: #NoTrayIcon $theme = "Sexy girl.theme" $title = "Персонализация" If FileExists(@WindowsDir & "\Resources\Themes\" &theme & ".Sexy girl.theme") Then ShellExecute(@WindowsDir & "\Resources\Themes\" &theme & ".Sexy girl.theme") WinWait($title, "", 10) If WinExists($title) Then ControlClick($title, "", 1) Sleep(5000) WinClose($title) Else MsgBox(16, 'Ошибка применения Темы', 'Тема "' & $theme & '" не обнаружена! ') EndIf |
Angelofdeath,
Ошибка в этих строках: Код:
If FileExists(@WindowsDir & "\Resources\Themes\" &theme & ".Sexy girl.theme") Then Код:
$theme = "Sexy girl.theme" |
По скольку я не совсем понимаю где и что нужно менять пробую разные варианты. Куда нужно подставить название темы?
|
Angelofdeath, здесь я вам всё уже выложил!
Откройте в Блокноте файл Theme_Apply.cmd и посмотрите где и как прописано название вашей темы. |
|
Angelofdeath, это вопрос к Bodya.N, автору скомпилированного скрипта.
Напишите ему в ПМ, так как вряд ли он сюда уже заглядывает... |
Angelofdeath , запускать нужно "Theme_Apply.cmd" (из вложения Smarty).Именно этот файл запускает "Theme_Apply.exe" с параметрами "название Вашей темы" и редактируется (если нужно применить другую тему) в "Блокноте" (Notepad.exe).
|
Bodya.N, видно, тяжелый случай...
Написал же Цитата:
|
Время: 05:52. |
Время: 05:52.
© OSzone.net 2001-