Скасування відключення вікна 7 вимикає кнопку живлення


12

Зазвичай натискання кнопки живлення один раз ініціює відключення в Windows 7.

Якщо якісь програми все ще запущені, які не вийдуть (наприклад, очікування відповіді на діалог), Windows накладає екран на діалог, що дозволяє користувачеві скасувати припинення роботи.

Я щойно помітив, що в двох різних системах тут використання цієї опції скасування вимикає вимкнення за допомогою кнопки живлення. Кнопку живлення все ще можна використовувати для вбивства системи, утримуючи її кілька секунд, а кнопка меню «Пуск» для вимкнення ПК все ще працює.

Кроки до відтворення:

  1. Відкрийте Блокнот, введіть кілька символів. Не врятувати.
  2. Натисніть кнопку живлення комп'ютера.
  3. Зачекайте, поки з’явиться темний екран.
  4. Натисніть скасувати.
  5. Знову натисніть кнопку живлення. Зауважте, як нічого не відбувається.

У чому причина такої поведінки, і чи можна її відключити завжди намагатися вимкнути ПК та натиснути кнопку живлення?


1
Ви хочете , щоб не показати , що екран , який з'являється , щоб запитати чи Force Shutdownі Cancelчи просто ви хочете використовувати кнопку живлення , щоб вимкнути його знову?
avirk

Чи однакові системи і моделі?
Рамхаунд

2
@Avrik: Я б хотів, щоб кнопка живлення знову могла вимкнути систему.
Єнс

@Ramhound: Ні, зовсім не. На даний момент у мене немає їх технічних специфікацій, але одна система була недавньою системою i3, а інша - досить старшою системою на основі Pentium.
Єнс

Відповіді:


14

Це відома проблема: http://support.microsoft.com/kb/2719667/en-us?sd=rss&spid=14498 (досить смішно. Щойно я трапився, коли нещодавно з'явився в RSS-базі знань RSS)

Якщо програма перешкоджає вимкненню Windows (наприклад, збережена робота), Windows зачекає на діалог примусового вимкнення 60 секунд, перш ніж змусити програму закритись, щоб вимкнення може продовжуватися. Якщо користувач скасує діалогове вікно відключення, Windows все ще зберігає значення 60-секундного тайм-ауту. Як результат, наступного разу, коли вимкнеться відключення, навіть якщо не існує програм, що блокують, вимкнення буде відкладено, поки не закінчиться значення часу очікування.

Така поведінка виникає лише під час налаштування кнопки живлення для вимкнення машини. При вимкненні Windows через меню "Пуск" проблема не виникає, оскільки значення тайм-аута не зберігається при скасуванні діалогового вікна примусового вимикання.

На жаль, обхід:

Щоб вирішити цю проблему, скористайтеся опцією вимкнення із меню "Пуск" Windows.


Чи не варто чекати хвилини, перш ніж знову натиснути кнопку, також спрацює?
Synetech

Дякую за вашу відповідь! Посилання на статтю бази знань є дуже корисною.
Єнс

7

Мені вдалося відтворити таку поведінку на своєму HP DV7 (із SP1 та без нього). Все відбувалося саме так, як ви сказали, поки комп'ютер раптом не вимкнувся.

Подальше дослідження показало, що скасування відключення не вимикає кнопку живлення. Це просто затягується .

Приклад того, як діє затримка

  1. Відкрийте Блокнот, введіть кілька символів. Не врятувати.

  2. Натисніть кнопку живлення комп'ютера.

  3. Зачекайте, поки з’явиться темний екран.

  4. Клацніть Cancel.

  5. Спробуйте будь-що з наступного:

    • Негайно натисніть кнопку живлення.

      Відразу нічого не станеться, але комп'ютер спробує вимкнутись рівно через 90 секунд після першого натискання кнопки живлення.

    • Зачекайте, поки минуло 90 секунд після першого натискання кнопки живлення.

      Якщо зараз натиснути кнопку живлення, комп'ютер спробує негайно вимкнутися.

Обґрунтування

Windows забороняє кнопці живлення намагатися вимкнути комп'ютер більше одного разу за 90 секунд. Я можу взяти тут лише здобуту здогадку, але я вважаю, що це запобігає численним спробам відключення через несправну кнопку живлення або випадкове її натискання.

[C] чи не можна завжди намагатися вимкнути комп'ютер, коли натиснути кнопку живлення?

Я не зміг знайти жодної документації щодо такої поведінки, не кажучи вже про спосіб її змінити.

Але щоб вимкнути комп'ютер після невдалої спроби, просто закрийте програму, що запобігає відключенню, і виконайте одну з наступних дій:

  • Знову натисніть кнопку живлення. Комп'ютер автоматично вимкнеться.

  • Клацніть Start -> Shut down. Немає затримок, якщо ви зробите це так.


1
Гм, стаття KB, на яку посилається Марк, вказує на час очікування - 60 секунд, а не 90.
Synetech

Я приурочував це двічі. Минуло рівно 90 секунд.
Денніс

Цікаво, чи є така настройка, яка впливає на це, як, наприклад, WaitToKillAppTimeoutна XP (я не можу знайти переконливих доказів того, чи справді цей працює в Windows 7. Якщо ні, то, можливо, це тому, що він жорстко закодований або зберігається в іншому місці по відношенню до KB2719667, яке б тоді поставило питання, чому ваш текст відрізняється від статті KB).
Synetech

Я приурочив її ще раз, щоб бути впевненим: це 90 секунд після першого натискання кнопки живлення, а не 60 секунд після появи діалогу "призупинення вимкнення".
Денніс

Так, але чому ? Це налаштовується?
Synetech

1

Коли ви натискаєте кнопку живлення, Windows запускає перехід до вимкнення і починає закривати всі програми сеансу користувача (система перебуває в стані shutdown_in_progress ), але коли певну роботу потрібно зберегти спочатку, перехід очікує до того часу, поки ця програма не буде належним чином зачинено.

введіть тут опис зображення

Початок іншої послідовності відключення буде відкинутий, оскільки існує поточний, якщо ви збережете цей файл, ви побачите, що перехід відключення продовжиться сам по собі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.