• 【手记】为windows2008建个睡眠快捷方式


    ----------------201607041343更新----------------

    在另一台电脑上SetSystemPowerState又不好使了,执行了根本没反应。又回头来试SetSuspendState,这次干脆把第一个参数改为1,居然成了。可文档明明说为true是休眠,false是睡眠,难道文档有严重错误?

    ----------------20160628原文----------------

    一直喜欢用【休眠】,但如果离开的时长有点尴尬,既不想开着机无谓耗电,又不想动用休眠伤硬盘,【睡眠】就成了一种合适的选择。在XP/WIN7等桌面系统下,是可以很方便的进行睡眠/休眠操作的,开始菜单里点就是。但在服务器系统下,比如win2k8r2,就不是那么方便了,在开始菜单中找不到现成选项,我能想到的最便捷的办法就是在桌面建个快捷方式,双击就执行睡或休。休眠的快捷方式容易建,命令行工具shutdown.exe直接支持休眠操作,将快捷方式的目标写成如下就好:

    %windir%System32shutdown.exe /h /f /t 0

    但睡眠咋办,网上搜到可以用rundll32调SetSuspendState这个API实现,根据MSDN,该API的第1个参数只要为0,就是睡眠模式,其余俩参数随意,所以按说只要写成这样即可:

    %windir%System32
    undll32.exe PowrProf.dll,SetSuspendState 0,0,0

    但在我的电脑上跑,就是休眠,并非睡眠,尝试过改动参数仍然如此。好在文档里提到了另一个类似功能的API:SetSystemPowerState,根据MSDN,该API只有俩参数,第1个参数设为1是睡眠,第2个参数没用,所以将快捷方式的目标写成这样:

    %windir%System32
    undll32.exe Kernel32.dll,SetSystemPowerState 1,0

    一试就成,是我要的睡眠,问题搞掂。文档中说该API后续可能被废,建议改用上面的SetSuspendState~呵呵。

    -文毕-

  • 相关阅读:
    C/C++操作MySQL数据库——增、删、改、查
    Mysql常用命令行大全——转载
    .NET Framework、C#、ASP.NET之间的关系
    委托和事件
    ASP.NET 页生命周期概述
    在SqlServer下增加MySql的链接服务器
    Head First 设计模式----DecoratorPattern
    jquery easyui----tree
    Head First 设计模式----ObserverPattern
    Jquery easyui----combotree
  • 原文地址:https://www.cnblogs.com/ahdung/p/5624803.html
Copyright © 2020-2023  润新知