如果“Windows 电源管理”已关闭显示器,我如何以编程方式检查 Windows 7 和 XP? (如果能收到事件就更好了。)
最佳答案
我认为它不能用于 XP。在 Windows 7 中,有各种与电源管理相关的好东西。 Windows API Code Pack是一组易于从 C# 或 VB 调用并映射 Windows 范例(如事件接收器、Windows 消息和函数指针)转换为 .NET 的(如委托(delegate)和事件)。从代码包附带的电源管理演示中,这里有一些您可能喜欢的代码:
using Microsoft.WindowsAPICodePack.ApplicationServices;
// . . .
PowerManager.IsMonitorOnChanged += new EventHandler(MonitorOnChanged);
// . . .
void MonitorOnChanged(object sender, EventArgs e)
{
settings.MonitorOn = PowerManager.IsMonitorOn;
AddEventMessage(string.Format("Monitor status changed (new status: {0})", PowerManager.IsMonitorOn ? "On" : "Off"));
}
编辑:
Windows API 代码包链接:Windows API Code Pack: Where is it?
如果你想像这篇文章中提到的那样使用它,请检查这个:https://stackoverflow.com/a/27709672/846232
关于c# - 检查显示是否被 Windows 电源管理关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6530968/