Разница между Win32Shutdown и shutdown.exe
Сегодня мне было интересно, в чем разница между Win32Shutdown и shutdown.exe ? Оба могут быть вызваны с помощью различных методов, таких как CMD, Powershell, VBscript, .NET-приложения и т. Д., Но я не могу найти разницу между ними. Могу я предположить
shutdown.exe
это просто обертка для
Win32Shutdown
? Однако у них нет всех одинаковых функций. И какие из них вызываются кнопками «Пуск» -> «Выключение / перезапуск»?
Причина, по которой я спрашиваю об этом, заключается в том, что я замечаю разницу в поведении, когда я вызываю 'shutdown.exe / s / t 0' из нашего .NET-приложения и закрываю Windows обычным способом (через startmenu). Отличие состоит в том, что при нормальном выключении ноутбук (их более 30) всегда загружается правильно. Но когда я использую вызываемый из нашего .NET-приложения, иногда может случиться так, что Windows зависает при загрузке. Сразу после завершения POST и отображения логотипа Windows (в данном случае Dell) он зависает. Только жесткое выключение решает проблему. Теперь я понимаю, что это может быть из-за поврежденных / поврежденных файлов, поэтому мне было интересно,
shutdown.exe /s /t 0
могло ли что-то не сохраняться должным образом перед выключением?