Рішення дивних проблем зі звуком і яскравістю в передвстановленою Win8.1 на Sony VAIO

Перехід на 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%\daemon\afteridle.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%\AppData\Roaming\de.blanx.sony.vaio.2013\Local Store\__Sony_VAIO\settings.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)\Sony\SONY-VAIO\SONY-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! Більше ця проблема мене не турбувала.
 
UPD: милиці і велосипеди — це, звичайно, весело, але було знайдено нормальне рішення. Після погляду в планувальник завдань було виявлено 2 завдання, одне з яких запускає кожну хвилину startscreensaver.exe, а друге — powermanagement.vbs. Проблема вирішується банально видаленням цих завдань, папку daemon після цього можна видаляти.
 

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.