防止win10自动休眠,一个简单小工具

JerryXia 发表于 , 阅读 (2,369)

我的电脑,之前用Win7没出现过,升了win10之后,电脑就时不时只要一会不动就自动黑屏休眠(睡眠)了,但点两下鼠标很快就恢复到输入密码的界面,进入之后什么都正常,但就是时不时很快就自动休眠。

我已经将电源计划中的关闭屏幕和硬盘的时间调到从不,但还是会出现这种情况。

网上搜索过win10怎么设置不让电脑休眠、Win10怎么关闭休眠、让Win10电脑不待机不休眠方法等等,设置过电源计划,设置过屏幕保护等待时间,更改计算机睡眠时间,改过注册表等等,都试过了,结果不管用。

没办法,只能自己写一个小工具,原理很简单,模拟电脑还在被操作的假象,来防止熄屏。运行效果是一个命令行程序,见下图。

NoSleep

代码如下,如果你没有代码的编译环境,这里有个现成的我已经编译好的exe执行文件,NoSleep下载链接

[DllImport("kernel32.dll")]
private static extern uint SetThreadExecutionState(uint esFlags);

[STAThread]
static void Main(string[] args)
{
    Console.ForegroundColor = ConsoleColor.Green;
    var tmrNoSleep = new Timer(1000);
    tmrNoSleep.Elapsed += new ElapsedEventHandler((object sender, ElapsedEventArgs e) => 
    {
        var now  = DateTime.Now;
        uint num = 0u;
        num = SetThreadExecutionState(3u);
        Console.Clear();
        Console.WriteLine("{0} {1}", now.ToString("yyyy-MM-dd HH:mm:ss"), num);
    });
    tmrNoSleep.Start();
    while(true)
    {
        var k = Console.ReadKey();
        if (k.KeyChar == 'q')
        {
            break;
        }
        else
        {
            Console.WriteLine("press 'q' to quit.");
        }
    }
}
已有 2 条评论
  1. Demo

    你好,我是一名QAD使用者,这个软件超过20分钟不操作就会自动退出。所以,我使用你做的这个防休眠小脚本,可是还是会出现QAD自动退出的情况,请问是怎么回事?

    1. JerryXia

      我模拟的是win10系统在操作,而不是指定的软件,你需要的是按键精灵或AutoHotkey之类的工具。

添加新评论