如何拦截Windows中物理电源按钮的推送?

时间:2013-01-29 23:14:22

标签: c# .net windows power-management

有没有办法拦截按下物理电源按钮的事件以便对此事件作出反应?即:

Push button -> My program catches the event -> My program performs action.

我的目标是编写一个C#程序/服务,它将监听电源按钮事件,然后打开“询问我该做什么”关闭对话框(就像它在Windows XP时代所做的那样)。

2 个答案:

答案 0 :(得分:0)

你可以使用 SystemEvents.SessionEnding Event

但是,如果按下电源按钮,我不确定这是否有效,此事件在用户尝试注销或关闭系统时发生。

答案 1 :(得分:0)

我可以在理论上向你解释一下:按钮(它是一个与大多数系统上的关机相关联的按钮)在“电源选项”下有一个选项,您可以在其中指定按下电源按钮时要执行的操作。 ..

这是你正在寻找的ACTION事件,它被窗口绑定到按钮,然后实例化关闭事件。有解剖和监视窗口变量和调用的程序,你必须使用其中一个解决它并拦截/覆盖它。