- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个 C# 应用程序可以为用户查找“开始工作”和“完成工作”事件。目标是获取包含日期时间值的列表,PC 何时“启动”以及何时再次“关闭”。
这适用于登录/注销和休眠,但不适用于待机(节能
)。使用 eventvwr
搜索我找不到与“进入待机”和“从待机中唤醒”相关的正确事件。
有了这个,我从 Windows 事件日志中读取:
public SortedDictionary<string, UserProfileEvent> ReadUserProfileEvents() {
string queryString = string.Format("*[System[TimeCreated[@SystemTime>='{0}' and @SystemTime<='{1}']]]", this.StartDate.ToString("s"), this.EndDate.ToString("s"));
var q = new EventLogQuery("Microsoft-Windows-User Profile Service/Operational", PathType.LogName, queryString);
var r = new EventLogReader(q);
var liste = new SortedDictionary<string, UserProfileEvent>();
EventRecord e = r.ReadEvent();
UserProfileEvent upe = null;
while (e != null) {
upe = new UserProfileEvent(e);
try {
liste.Add(upe.SortKey, upe);
}
catch (Exception exp) {
throw new Exception("Some error text", exp);
}
e = r.ReadEvent();
}
return liste;
}
知道在哪里可以找到正确的事件吗?
编辑:我刚刚找到“Microsoft-Windows-Power-Troubleshooter”和“Microsoft-Windows-Kernel-Power”。这些协议(protocol)似乎指向了正确的方向......
最佳答案
并非所有内容都会列在事件日志中,因为它们并不重要,以至于需要(默认情况下)写入日志(在磁盘上)。
如果您的应用程序可以在后台运行,您可以订阅其中一些事件并做出相应的 react 。正如“C Sharper”已经写过的那样,您可以在 SystemEvents
class 中找到它们.
关于c# - 我在哪里可以找到有关 Windows 处于待机模式的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33476168/
如何读取操作系统消息? Java 是否能够监听来自 Java API 的操作系统消息? Hibernate 声明,当操作系统(在我的例子中是 Windows)进入待机状态时,我希望收到通知。请建议一个
如何使用 C/C++ native 代码以编程方式告诉 Windows XP 切换到待机模式? 最佳答案 Win32 API 中的一个可能函数是 SetSuspendState: SetSuspend
这里对linux 的几个命令整理下,有:休眠,挂起,待机,关机等几个命令的区别及如何实现。 休眠是一种更加省电的模式,它将内存中的数据保存于硬盘中,所有设备都停止工作。当再次使用时需按开关机键,机
我正在制作一个客户端-服务器应用程序,所以我需要关闭远程电脑静默 ..我在命令提示符关闭/? .. 但我仍然不知道执行以下命令的正确参数。 关机 重启 休眠 待命 注销 锁定(切换用户) 那么我如何在
我是一名优秀的程序员,十分优秀!