InitiateShutdown,无法理解传递给函数的值

Jas*_*son 0 c winapi shutdown

我不明白关闭计算机和使用此功能关闭计算机之间的区别.我在看https://msdn.microsoft.com/en-us/library/windows/desktop/aa376872(v=vs.85).aspx
具体来说,我不明白SHUTDOWN_NOREBOOT.

  • SHUTDOWN_NOREBOOT
    0x00000010 (0x10)
    计算机已关闭但未关闭或重新启动.
  • SHUTDOWN_POWEROFF
    0x00000008 (0x8)
    计算机已关闭并已关闭.
  • SHUTDOWN_RESTART
    0x00000004 (0x4)
    计算机已关闭并重新启动.

如果计算机没有断电也不会重新启动,那么目的是什么?是SHUTDOWN_NOREBOOT与具有计算机睡眠的代名词?

zwo*_*wol 5

对于等效选项的文档ExitWindowsEx,EWX_SHUTDOWN是一个有点清晰.(强调我的)

将系统关闭到可以安全关闭电源的位置.所有文件缓冲区都已刷新到磁盘,并且所有正在运行的进程已停止.

在昔日的日子里,个人电脑没有能力让自己关闭,而且没有EWX_POWEROFF选择.当你关闭Windows时,它会让你回到DOS,或者(如果没有外部DOS环境)它将会出现一个带有橙色文本的黑屏,上面写着" 现在可以安全地关闭你的计算机".这是你翻转表壳侧面的大红色开关的提示.

如今,这种关闭模式已经过时,但为了向后兼容而保留.如果Windows 10仍能提出"现在可以安全关闭计算机"屏幕,我不会感到惊讶.

  • 我可以想到一些工业用例,我想要关闭,因此"缓冲区被刷新,进程已经停止"但仍然保持通电状态,以免干扰生活在相同电源下的外围设备.它仍然有它的用途. (2认同)