Опасно ли использовать команду windows shutdown.exe для выключения компьютера?

2693
user13267

Я использую эту команду в autoit, чтобы выключить свой ноутбук, если таймер заканчивается

Run(@SystemDir & "\shutdown.exe /f /s /t 10", "", @SW_MAXIMIZE) 

В большинстве случаев он работает нормально, но иногда я получаю BlueScreen при включении компьютера, обычно перед тем, как войти в систему и после завершения анимации логотипа Windows. Это из-за непосредственного выключения компьютера командой shutdown или могут быть другие проблемы? Я должен отметить, что когда мой скрипт autoit выключает компьютер, обычно открываются несколько браузеров с несколькими открытыми вкладками, а также запущены другие приложения. Итак, я хочу знать,

В чем разница между выключением компьютера через меню «Пуск», непосредственным нажатием кнопки питания и выполнением команды выключения из сценария autoit? Резко ли завершает работу компьютера с помощью команды выключения, в то время как другие пользовательские приложения работают каким-либо образом опасно?

Моя ОС - Windows 7, а компьютер - ноутбук

0
Лично я считаю маловероятным, что использование shutdown.exe (которое MS предоставляет именно для завершения работы системы из сценариев или из командной строки) будет выполнять выключение для ОС менее чисто, чем использование функции выключения в графическом интерфейсе. , Для приложений, принудительно завершающих работу, это, конечно, другое дело, поскольку они, вероятно, закрываются не так изящно, как с альтернативой GUI, но это не должно быть причиной для BSOD. zagrimsan 10 лет назад 1
Если вы хотите, чтобы часть вопроса BSOD была проанализирована глубже, вам необходимо предоставить как минимум код ошибки и технические детали ошибки на экране [как указано на этой странице] (http://www.wixdb.com). /bsod-error-codes-complete-list-updated-2013.html). zagrimsan 10 лет назад 1
этот код сохраняется где-нибудь для последнего BSOD? Я просто проигнорировал это и перезапустил Windows нормально. Это сохранено где-нибудь в журнале? user13267 10 лет назад 0
хорошо, я думаю, что я нашел файл dmp, который содержит эту информацию, но я не могу прочитать, открытие его в блокноте дает только некоторые глифы user13267 10 лет назад 0
Я бы предположил, что вы сможете найти что-то о BSOD из [системного журнала событий] (http://www.ehow.com/how_7147208_check-event-viewer-bsod.html). Откройте `Event Viewer` и просмотрите системный журнал там. Файл дампа является бинарным, поэтому нет смысла пытаться просмотреть его в текстовом редакторе, можно использовать отладчик, чтобы прочитать его, но я не могу помочь вам с этим, так как сам никогда этого не делал (хотя поиск в Google мог бы дать Вы некоторые подсказки). zagrimsan 10 лет назад 0

2 ответа на вопрос

3
Moses

To answer the question:

The shutdown command is what your computer runs when you press the power button (if you have shutdown assigned it), or by shutting down through the start menu. The command is provided by Microsoft, and therefore shouldn't cause a BSOD, especially in your case where the BSOD is happening at startup.

Using the /f and/or /t 0 options wouldn't cause hardware problems either, it would only cause applications problems if that (applications not shutting down properly, unsaved work, etc).

In your case:

You would have to post the contents of your crash dump in order for anyone to determine what is actually causing the BSOD. Many times it's related to peripherals/drivers, but it could be anything.

As suggested in comments, you could see if anything is in the Event Log, but since your BSOD is happening before Windows has booted, there's a lower chance you'll find what's actually causing it. The crash dump will be a much more reliable source.

Я думаю, что я нашел, где находится файл аварийного дампа; Есть ли программное обеспечение, которое анализирует его, чтобы получить сообщение BSOD из аварийного дампа? user13267 10 лет назад 0
0
sabgenton
/f Force running applications to close without forewarning users. The /f parameter is implied when a value greater than 0 is specified for the /t parameter. 

Так что, если вы не выполните / t 0 без f, это означает, что все заканчивается (оно не может закрыться), оно появляется.

Он выключает компьютер, а не просто делает то, что вытягивает кабель питания.

Я не могу сказать вам, что есть какие-то другие факторы (даже autoit), но у меня самого не было синего экрана от команды.