本文的价值不在于解决方案本身,而是在提醒人们如何快速解决简单的问题。
但是,如果您需要一个简单的解决方案,请:
将这些行保存在CMD中,在20分钟(1200秒)启动后,计算机将进入睡眠模式。该程序总共占用73个字节:
ping 127.0.0.1 -n 1201 > nul
rundll32 powrprof.dll,SetSuspendState 0,1,0
但是,如果您需要将其关闭,则所有内容都会更短,即47 bytes。仅第二行如下所示:
shutdown -s -t 00
我上床睡觉之前会用到它,包括我最喜欢的在线收音机“也要睡觉”,这也是从命令行开始的,下面将对此进行讨论。
请谁仍在好奇之下。在文章末尾链接到现成的脚本。
在大多数情况下,所有新事物都被遗忘了。
首先,让我们看一下这些行的作用:
我们ping一个始终可用的IP地址(除非您的防火墙配置为“ fancy”)。默认间隔为1000毫秒= 1秒。-n开关将重复次数设置为20分钟x 60秒= 1200 + 1(因为第一次ping在不到1 ms的时间内返回)。> nul构造告诉解释器,标准输出将发送到nul,以消除不必要的输出到屏幕。
ping 127.0.0.1 -n 1201 > nul
调用rundll32.exe程序以执行DLL例程。在这种情况下,SetSuspendState带有我们需要的参数。有关MSDN的详细说明。
rundll32 powrprof.dll,SetSuspendState 0,1,0
应该注意的是,如果启用了混合睡眠模式(Hibernate),则它将进入该模式。您可以通过以管理员身份运行以下命令来禁用它:
powercfg -hibernate off
扰流板下还有更多用途,例如...
Winamp .
(WIN + L).
(Hibernate).
.
( ).
.
.
.
.
, WinAPI .
start winamp http://cast.loungefm.com.ua:8000/acoustic128
(WIN + L).
rundll32.exe User32.dll,LockWorkStation
(Hibernate).
rundll32.exe PowrProf.dll,SetSuspendState
.
shutdown.exe -r -t 00
( ).
rundll32 user32.dll,SwapMouseButton
.
rundll32 shell32.dll,Control_RunDLL main.cpl,@0,1
.
rundll32 user,SetCursorPos
.
rundll32 user,CascadeChildWindows
.
rundll32 user,TileChildWindows
, WinAPI .
有许多人喜欢的著名表达:
懒惰是进步的动力。
一段历史:
早在2003年,就匆匆编写了一个简单的程序,以通过计时器关闭PC。我自己写的,因为那时我没有任何熟悉的程序员,也没有Internet访问权限。我敢肯定,许多购买或切割MSDN光盘的“家庭程序员”都整夜学习Windows编程。在写这篇文章之际,我在父母电脑上的旧档案中打开了它。她看上去很简单,但完成了任务。事实证明,甚至现在我的几个朋友都在使用它。
我不记得上面写的是什么(VC,VB,Delphi或Assembler)。它的大小也不大,但是仍然无法比较16166和47字节。
几天前,当我需要相同的功能时,我开始寻找相似的软件。想象一下,当我发现平均从1.1 MB到大小为15.2 MB的巨大怪物的一堆程序时,我感到失望。自然,我的良心不允许我即使在沙箱中也发动这一异端。当意识到我需要20分钟的执行延迟并只调用一个过程时,我想起了rundll32.exe,它进入了Internet并且没有记错。结果,在1分钟内找到了溶液。
道德:
我们通常不需要第三方软件来解决简单的任务。只需到搜索引擎找到该问题的简单解决方案就足够了,该问题已经有98.785%属于公共领域。当然,我们需要提到另一种方法,对于真正的IT专家来说,请发挥想象力,转到MSDN手册并使用现成的OS功能。同意,使用简单而优雅的解决方案是一件令人愉快的事情,但是当您凭自己的想法做出他们的决定时,这会更加令人高兴。
如先前所保证的链接:
关闭计时器的脚本,启动收音机并切换到睡眠模式-radio_sleep_scripts.zip
突然,我的老手将变得有趣-ExitXP.exe
希望您喜欢我的第一篇文章。我很乐意对这篇文章提出意见和建议。我希望在评论中看到您对类似问题的有趣解决方案。谢谢您的宝贵时间,请阅读全文。