C# 任务管理器关闭程序,触发程序中的什么事件?
C# 任务管理器关闭程序,触发程序中的什么事件?
------解决方案--------------------ApplicationExit??? 可以试试
------解决方案--------------------不触发事件。
------解决方案--------------------不明白 你具体要干什么
你是要判断自己的程序是否关闭
还是要关闭一个程序 还是任务管理器的关机
------解决方案--------------------ApplicationExit
在这个事件里写代码,就会在关闭的时候触发
------解决方案--------------------不会接收到任何的消息,也不会触发任何的事件,你的程序占用的资源有可能不被清理,比如:打开的文件、数据库的连接等。
我猜你是想接收“关闭的事件”,然后防止你的程序从任务管理器结束吧?
------解决方案--------------------要看怎么关闭了。
是选择程序,关闭,还是选择进程,然后选择终止进程。后者没有事件。
------解决方案--------------------这个应该比较底层了吧,比如360的一些东西,任务管理器关闭的时候就会提示,这个应该需要和系统文件打交道。其他一般程序,关闭就关闭了,不一定要触发事件吧
------解决方案--------------------参考,windows的消息机制,使用覆盖父类api,来监听
类的话,覆盖
窗体父类
protected override void WndProc(ref Message m)
  {//这里自己试验一下是QUIT还是CLOSE什么的,反正关闭前都是先发消息的
  if (m.Msg == (int)WindowsMessages.WM_PARENTNOTIFY)
  {自己写逻辑}
  base.WndProc(ref m);
  }
enum WindowsMessages
   {
     WM_ACTIVATE = 0x6,
     WM_ACTIVATEAPP = 0x1C,
     WM_AFXFIRST = 0x360,
     WM_AFXLAST = 0x37F,
     WM_APP = 0x8000,
     WM_ASKCBFORMATNAME = 0x30C,
     WM_CANCELJOURNAL = 0x4B,
     WM_CANCELMODE = 0x1F,
     WM_CAPTURECHANGED = 0x215,
     WM_CHANGECBCHAIN = 0x30D,
     WM_CHAR = 0x102,
     WM_CHARTOITEM = 0x2F,
     WM_CHILDACTIVATE = 0x22,
     WM_CLEAR = 0x303,
     WM_CLOSE = 0x10,
     WM_COMMAND = 0x111,
     WM_COMPACTING = 0x41,
     WM_COMPAREITEM = 0x39,
     WM_CONTEXTMENU = 0x7B,
     WM_COPY = 0x301,
     WM_COPYDATA = 0x4A,
     WM_CREATE = 0x1,
     WM_CTLCOLORBTN = 0x135,
     WM_CTLCOLORDLG = 0x136,
     WM_CTLCOLOREDIT = 0x133,
     WM_CTLCOLORLISTBOX = 0x134,
     WM_CTLCOLORMSGBOX = 0x132,
     WM_CTLCOLORSCROLLBAR = 0x137,
     WM_CTLCOLORSTATIC = 0x138,
     WM_CUT = 0x300,
     WM_DEADCHAR = 0x103,
     WM_DELETEITEM = 0x2D,
     WM_DESTROY = 0x2,
     WM_DESTROYCLIPBOARD = 0x307,
     WM_DEVICECHANGE = 0x219,
     WM_DEVMODECHANGE = 0x1B,
     WM_DISPLAYCHANGE = 0x7E,
     WM_DRAWCLIPBOARD = 0x308,
     WM_DRAWITEM = 0x2B,
     WM_DROPFILES = 0x233,
     WM_ENABLE = 0xA,
     WM_ENDSESSION = 0x16,
     WM_ENTERIDLE = 0x121,
     WM_ENTERMENULOOP = 0x211,
     WM_ENTERSIZEMOVE = 0x231,
     WM_ERASEBKGND = 0x14,
     WM_EXITMENULOOP = 0x212,
     WM_EXITSIZEMOVE = 0x232,
     WM_FONTCHANGE = 0x1D,
     WM_GETDLGCODE = 0x87,
     WM_GETFONT = 0x31,
     WM_GETHOTKEY = 0x33,
     WM_GETICON = 0x7F,
     WM_GETMINMAXINFO = 0x24,
     WM_GETOBJECT = 0x3D,
     WM_GETTEXT = 0xD,
     WM_GETTEXTLENGTH = 0xE,
     WM_HANDHELDFIRST = 0x358,
     WM_HANDHELDLAST = 0x35F,
     WM_HELP = 0x53,
     WM_HOTKEY = 0x312,
     WM_HSCROLL = 0x114,
     WM_HSCROLLCLIPBOARD = 0x30E,
     WM_ICONERASEBKGND = 0x27,
     WM_IME_CHAR = 0x286,
     WM_IME_COMPOSITION = 0x10F,
     WM_IME_COMPOSITIONFULL = 0x284,
     WM_IME_CONTROL = 0x283,
     WM_IME_ENDCOMPOSITION = 0x10E,
     WM_IME_KEYDOWN = 0x290,
     WM_IME_KEYLAST = 0x10F,
     WM_IME_KEYUP = 0x291,
     WM_IME_NOTIFY = 0x282,
     WM_IME_REQUEST = 0x288,
     WM_IME_SELECT = 0x285,
     WM_IME_SETCONTEXT = 0x281,
     WM_IME_STARTCOMPOSITION = 0x10D,