在C#中禁用屏幕保护程序和电源选项
我正在用C#编写一个播放电影的应用程序。 我需要弄清楚如何使用C#禁用屏幕保护程序和电源选项。
我知道Windows SDK API有一个名为SetThreadExecutionState()的函数可用于执行此操作,但是,我不知道是否有更好的方法来执行此操作。 如果没有,我如何将此function合并到C#中?
不确定是否有更好的.NET解决方案,但以下是如何使用该API:
所需的用途:
using System.Runtime.InteropServices;
P / Invoke:
public const uint ES_CONTINUOUS = 0x80000000; public const uint ES_SYSTEM_REQUIRED = 0x00000001; public const uint ES_DISPLAY_REQUIRED = 0x00000002; [DllImport("kernel32.dll", SetLastError = true)] public static extern uint SetThreadExecutionState([In] uint esFlags);
然后禁用屏幕保护程序:
SetThreadExecutionState(ES_CONTINUOUS | ES_DISPLAY_REQUIRED);
Finnaly通过将执行状态重置为原始值来启用屏幕保护程序:
SetThreadExecutionState(ES_CONTINUOUS);
请注意,我在我的示例中随机选择了其中一个标志。 您需要组合正确的标志以获得您想要的特定行为。 您将在MSDN上找到标志的描述 。
上述就是C#学习教程:在C#中禁用屏幕保护程序和电源选项分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1019424.html