您的位置:首页 > 编程语言 > C#

c#关机时自动退出程序 (zt)

2009-01-14 17:49 309 查看
做了一个定时播放器,程序运行时最小化到任务栏托盘,可这时候关闭或重启操作系统使如果程序没有退出,则系统不能关闭.那么如何实现关机时自动退出程序呢?其实很简单,当windows操作系统执行关闭动作时,它会发送给各个正在运行的应用程序一个消息WM_QUERYENDSESSION,告诉应用程序要关机了,如果反馈回来的消息值为1,那么windows操作系统就会自动关闭.因此,通过截获WM_QUERYENDSESSION消息,就能实现自动退出程序.

/// <summary>

/// 操作系统关闭时,关闭应用程序

/// </summary>

/// <param name="m">截获系统消息</param>

protected override void WndProc(ref Message m)

{

switch (m.Msg)

{

case 0x0011://WM_QUERYENDSESSION

m.Result = (IntPtr)1;

break;

default :

base.WndProc(ref m);

break;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: