Czy jest tam jakaś aplikacja Windows, która określi, który proces uniemożliwia aktywację wygaszacza ekranu?
Czy jest tam jakaś aplikacja Windows, która określi, który proces uniemożliwia aktywację wygaszacza ekranu?
Odpowiedzi:
powercfg jest wbudowany w Windows i pozwala kontrolować i wyświetlać wiele ustawień zarządzania energią.
powercfg -energy -trace
Spowoduje to utworzenie bardzo szczegółowego dziennika zdarzeń zarządzania energią, energy-trace.etl. Otwórz go w Podglądzie zdarzeń i przefiltruj dziennik według źródła zdarzenia: Kernel-Power, dołącz identyfikator zdarzenia: 62.
To powinno dać ci wydarzenia, które wyglądają jak:
Aplikacja lub usługa \ Device \ HarddiskVolume1 \ games \ Steam \ Steam.exe zastąpiła ustawienia zarządzania energią użytkownika kodem 0x3.
Kod może się różnić w zależności od tego, czy wygaszacz ekranu, tryb uśpienia monitora lub inne zmiany stanu zostały uniemożliwione.
Event Viewer
| Kliknij Event Viewer (Local)
w drzewo | Action
| Open Saved Log
| otwórz C:\Windows\System32\energytrace.etl
Powiedz, aby przekonwertował na nowy format dziennika. Działa w
Uruchom powercfg /requests
z wiersza polecenia administratora. Na przykład mój wydrukował:
DISPLAY:
[PROCESS] \Device\HarddiskVolume8\Games\Origin\Origin.exe
Playing video
SYSTEM:
[DRIVER] Realtek High Definition Audio (HDAUDIO\FUNC_01&VEN_10EC&DEV_0900&SUBSYS_10438560&REV_1000\4&9793a48&0&0001)
An audio stream is currently in use.
AWAYMODE:
None.
Co wskazuje, że Origin odtwarzał wideo, co uniemożliwiało uruchomienie wygaszacza ekranu.
Czasami wystarczy zmienić czas w wygaszaczu ekranu (nie typ) na coś innego, powiedzmy od 10 minut do 1, a następnie z powrotem do tego, co miałeś wcześniej, pozwoli wygaszaczowi ekranu normalnie funkcjonować.
Dzięki W1N9Zr0 za wskazanie mi właściwego kierunku!
W moim przypadku była to maszyna XP Pro (SP3), więc przełącznik „energii” był niedostępny, jednak „zapytanie o urządzenie” przełącznik urządzenie wskazał, że była to mysz lub klawiatura. Po przejściu z klawiatury PS / 2 na klawiaturę USB wygaszacz ekranu (i inne opcje zasilania) uruchomił się zgodnie z ustawieniami.
UWAGA: Gdy wygaszacz ekranu był ustawiony na 1 minutę, czasami się włączał, więc wiedziałem, że działa. Coś powyżej 1 minuty i wygaszacz ekranu nigdy się nie uruchomi.
Uważam, że winowajcą jest zazwyczaj odtwarzacz multimediów. Można by pomyśleć, że tak będzie tylko podczas odtwarzania wideo, ale niektóre odtwarzacze muzyki wstrzymały wygaszacz ekranu. Na przykład miałem dzisiaj Amazon Music i Groove otwarte i wstrzymane, a po godzinie mój ekran wciąż był odblokowany.
Nie jestem pewien, co jest winne, ale podejrzewam je za pomocą IDE i przeglądarki, z której korzystałem, co pozwala zablokować ekran.
Nie znam żadnego programu, który to robi, ale sposobem na sprawdzenie tego jest funkcja GetThreadExecutionState (), która będzie przechowywać wartość ES_DISPLAY_REQUIRED, jeśli wątek blokuje obecnie aktywację wygaszacza ekranu.
Jeśli zastosujesz tę funkcję do wszystkich wątków w systemie, a następnie wywołasz GetProcessIdOfThread w znalezionym wątku, znajdziesz proces blokujący wygaszacz ekranu.