【问题标题】:OS Reboot, Shutdown, Hibernate, Sleep, Wakeup (Windows Python)操作系统重启、关机、休眠、睡眠、唤醒(Windows Python)
【发布时间】:2011-02-10 01:11:54
【问题描述】:

我正在寻找一种自动执行 Windows 电源管理功能的方法: - 重启 - 关掉 - 休眠 - 睡觉 - 唤醒

是否有 Python 模块来涵盖此功能? 当然,任何其他解决方案也值得赞赏...

【问题讨论】:

    标签: python windows power-management


    【解决方案1】:

    我也使用命令行:

    import os
    os.system(r'%windir%\system32\rundll32.exe powrprof.dll,SetSuspendState Hibernate')
    

    【讨论】:

      【解决方案2】:

      请参阅win32api.ExitWindowsEx() ActiveState 文档。

      标志:http://msdn.microsoft.com/en-us/library/aa376868%28v=vs.85%29.aspx

      休眠/睡眠:
      http://msdn.microsoft.com/en-us/library/aa373201%28v=vs.85%29.aspx
      要使用这个你需要使用ctypes因为看起来pywin32 没有实现它。

      醒来?我怀疑你可以在睡觉时执行代码。 :)

      【讨论】:

      • 对于唤醒记住有 WakeUpOnLAN,所以从另一台设备(手机、平板电脑)应该是可能的。
      【解决方案3】:

      不幸的是,我的声誉不允许我对答案发表评论(目前)。但是我来这里是为了寻找替代方案因为我试图避免使用命令行,所以我只需要这样说:我不认为直接调用 SetSuspendState 是答案。

      看这里是有原因的: http://blogs.msdn.com/b/oldnewthing/archive/2004/01/15/58973.aspx (短版:可能会发生坏事。长版:意外的函数签名会破坏堆栈)。

      如果您需要其他原因,它似乎只是......在 Win7 中不起作用(无论您作为参数传递什么,它总是进入休眠状态 - 从不进入待机状态)。至少那是发生在我身上的事情,而且根据我在网上阅读的内容,我并不是唯一一个。

      【讨论】:

        【解决方案4】:

        您可以为此使用shutdown 命令。

        例子:

        import os
        os.system("shutdown -s -t 0")
        

        这将关闭计算机 (-s) 并延迟 0 秒 (-t 0) 以立即关闭。如需完整使用,请访问:https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/shutdown

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-09-23
          • 1970-01-01
          • 2012-10-08
          • 1970-01-01
          • 2022-11-13
          • 1970-01-01
          • 2014-07-29
          • 2012-05-29
          相关资源
          最近更新 更多