Если программа зависла
Операционная система Windows Vista достаточно стабильна, и ее не так просто вывести из строя. Однако в некоторых прикладных программах могут возникать ошибки, приводящие к их остановке или зависанию. В этом случае программа не будет отвечать на щелчки кнопкой мыши и нажатия клавиш.
Перед тем как применить к зависшему приложению радикальные средства, попытайтесь выяснить, можно ли вернуть его в рабочее состояние. Попробуйте выполнить следующее.
• Подождите немного: возможно, приложение автоматически вернется в нормальный режим. Некоторые программы могут выполнять какое-нибудь продолжительное действие и в это время не обрабатывать запросы пользователя. Эта ситуация более типична для компьютеров с низкой производительностью, но иногда может возникать и на быстрых системах.
• Попробуйте переключиться в окно приложения с помощью сочетания клавиш ALt+Tab. Это поможет, когда программа требует нажатия определенной кнопки в диалоговом окне, а сам диалог не отображается на экране.
• Попробуйте завершить работу приложения одним из стандартных способов, например, щелкнув на кнопке закрытия окна. Если приложение не будет отвечать на системные запросы, появится сообщение, показанное на рис. 5.1. Кнопка Закрыть программу позволит вам принудительно прекратить работу программы с потерей всех несохраненных данных, а кнопка Ожидание отклика программы – продолжить работу приложения.
Рис. 5.1. Предупреждение при принудительном завершении работы программы
При выполнении принудительного закрытия программы система может предложить отправить отчет об ошибке компании Microsoft (рис. 5.2), однако выполнение этой процедуры не застрахует от повторного появления ошибки. Если вы все же решите отправить сообщение об ошибке, то оно будет помещено в базу данных наряду с тысячами других. Если одна и та же ошибка будет возникать у многих пользователей, то, возможно, она будет исправлена при составлении очередного пакета обновлений для Windows или при выпуске новой версии приложения.
Рис. 5.2. Предложение отправить отчет об ошибке компании MicrosoftЕсли описанными средствами не удалось вывести программу из зависшего состояния, выполните следующие действия для принудительного завершения приложения.
1. Нажмите сочетание клавиш CtrL+Shift+Esc, чтобы вызвать Диспетчер задач. Иногда зависшее приложение забирает почти все системные ресурсы и появления Диспетчера задач придется ждать несколько секунд или даже больше.
2. На вкладке Приложения (рис. 5.3) выберите из списка зависшую программу и нажмите кнопку Снять задачу. Возможно, вам придется подтвердить действия в окне завершения работы приложения.
Рис. 5.3. Диспетчер задач Windows Vista, вкладка ПриложенияЕсли через некоторое время зависшее приложение не исчезнет из списка задач, попробуйте закрыть соответствующий ему процесс следующим образом.
1. Щелкните правой кнопкой мыши на названии приложения в списке задач и выберите в контекстном меню команду Перейти к процессу.
2. После автоматического перехода на вкладку Процессы нажмите кнопку Завершить процесс.
3. Подтвердите завершение процесса в дополнительном диалоговом окне.
Автоматическое удаление зависших программ
Windows Vista можно настроить так, чтобы зависшие программы завершались автоматически. Для этого следует запустить Редактор реестра и открыть раздел HKEY_CURRENT_USER\Control Panel\Desktop.
• Параметр HungAppTimeout определяет время, по прошествии которого не отвечающее на запросы приложение считается зависшим (по умолчанию – 5000 мс).
• Параметр WaitToKillAppTimeout задает время ожидания перед завершением зависшего приложения (по умолчанию 20000 мс). Вы можете изменить значение этого параметра по своему усмотрению. Если присвоить параметру AutoEndTasks значение 1, то система будет завершать зависшие процессы автоматически.
При необходимости следует создать новые параметры типа DWORD с указанными именами.