Переход на Windows8 связан с определенными неудобствами, в основном предоставляемыми «плитками». Но у некоторых пользователей, в том числе и у меня, возникают довольно экзотичные проблемы. К примеру, установка яркости и звука на максимум, происходящая безо всяких видимых причин и не имеющая четко прослеживающейся периодичности проявления (от нескольких минут до нескольких часов). При этом было замечено, что это событие сопровождается появлением на панели задач иконки некоего Startscreensaver.exe, если он уже не был запущен к этому моменту. Если у вас возникают подобные вещи, добро пожаловать под кат.
Изначально после обнаружения связи со Startscreensaver.exe было также замечено, что безобразие прекращается, если кликнуть в иконку на панели задач правой кнопкой и в контекстном меню выбрать пункт «Pause script».
Однако, через несколько часов остановки скрипта появляется новый инстанс Startscreensaver.exe, яркость и громкость опять начинают устанавливаться на максимум раз в N минут.
После такого открытия я начал искать решение проблемы в интернете, где она практически не была освещена, из решений предлагалось переустановить драйвера, произвести восстановление системы, перезагрузить компьютер.
Переустановка драйверов ни к чему не привела, восстанавливать систему из-за такой мелочи показалось не шибко резонным.
Позже на одном из форумов было найдено описание папки Daemon на диске с операционной системой, в которой хранится сам startscreensaver.exe, с предложением всю эту папку удалить. Через пару минут после удаления папки всплыло следующее сообщение:
А потом снова всплыло. Стало понятно, что так просто не отвертишься. Пришлось вернуть папку на место, чтобы не искать тот самый скрипт, который обращается к этому «powerManagement.vbs». Зато возник интерес: а что же, собственно, в скриптах папки прописано. Вспомнив про постоянно открывающийся Startscreensaver.exe и увидев рядом файл Startscreensaver.vbs, я решил в него заглянуть:
Dim oShell
Set oShell = WScript.CreateObject("WScript.Shell")
oShell.run "%SystemDrive%daemonafteridle.bat", 0, False
Set oShell = Nothing
Открываем «afteridle.bat», лежащий в этой же папке:
@echo off
cd /d %0..
rem // bring app to front - regardless if it's running
call bringToFront.bat
rem // check if the task is already running. if yes, quit
tasklist /FI "IMAGENAME eq SONY-VAIO.exe" > task.txt 2>&1
type task.txt | grep -i "SONY-VAIO.exe" > NUL
if errorlevel 1 goto success
if errorlevel 0 goto end
:success
if exist "task.txt" del task.txt
rem // reset brightness and volume
start /B /MIN reset.bat
rem // depending on settings.txt, activate key blocking
taskkill /im autohotkeyScript.exe /F
rem // check if no settings file OR key blocking is completely disabled
set SETTINGS="%USERPROFILE%AppDataRoamingde.blanx.sony.vaio.2013Local Store__Sony_VAIOsettings.txt"
if not exist %SETTINGS% goto pastLock
type %SETTINGS% | grep -i "lockedInstall=0" > NUL
if errorlevel 1 goto lock
if errorlevel 0 goto pastLock
rem // start key blocking
:lock
start autohotkeyScript.exe
:pastLock
rem // bring app to front
call bringToFront.bat
rem // start app
"%SystemDrive%Program Files (x86)SonySONY-VAIOSONY-VAIO.exe"
rem // re-enable keys
taskkill /im autohotkeyScript.exe /F
:end
if exist "task.txt" del task.txt
exit
Обращаем внимание на строки:
rem // reset brightness and volume
start /B /MIN reset.bat
Открываем reset.bat и видим вот что:
@echo off
rem ------------------------------------------------------------------
rem Move to drive dir...
cd /d %0..
nircmd setbrightness 100
nircmd mutesysvolume 0
nircmd setsysvolume 65535
exit
Этот скрипт не делает абсолютно ничего, кроме установки яркости и громкости на максимум. Снова открываем «afteridle.bat» и удаляем строки, на которые мы чуть раньше обратили внимание, прекращая постоянные вызовы гадкого скрипта. PROFIT!!! Больше эта проблема меня не беспокоила.
Наконец можно насладиться комфортной работой на новом ноутбуке.
Автор: cgff
Вот оно решение проблемы спасибо помоголо