c# 如何截获windows关机或注销消息

来源:百度知道 编辑:UC知道 时间:2024/09/23 19:36:44
要求关机或注销时弹出一个确认框提示我是否继续,
选择是继续关机,选择否取消关机回到windows.
可是为什么这种方法在我的电脑上不行啊,关机和注销的时候还是和平常一样,我的系统是winxpsp2.
是不是系统设置的问题啊?还有其他方法吗?

protected override void OnFormClosing(FormClosingEventArgs e)
{
switch (e.CloseReason)
{
case CloseReason.ApplicationExitCall:
e.Cancel = true;
MessageBox.Show("拦截关闭要求事件!");
break;
case CloseReason.FormOwnerClosing:
e.Cancel = true;
MessageBox.Show("拦截自身关闭事件!");
break;
case CloseReason.MdiFormClosing:
e.Cancel = true;
MessageBox.Show("拦截MDI窗体关闭事件!");
break;
case CloseReason.None:
break;
case CloseReason.TaskManagerClosing:
e.Cancel = true;
MessageBox.Show("拦截任务管理器关闭事件!");
break;
case CloseReason.UserClosing:
e.Cancel = true;
MessageBox.Show("拦截用户关闭事件!");
break;
case CloseReason.WindowsShutDown:
e.Cancel = true;
MessageBox.Show("拦截关机事件!");
break;