http://channel9.msdn.com/Showpost.aspx?postid=251492
べたな方法でRestart Managerに対応する方法が解説されています。
Developerは
protected override void WndProc(ref Message m)
{
base.WndProc(ref m);
if (m.Msg == WM_QUERYENDSESSION) //0x0011
{
if (m.LParam.ToInt32() == ENDSESSION_CLOSEAPP) //0x1
{
// some installation will shut us down next, so do some cleanup (prepare for it)
File.WriteAllText(Environment.CurrentDirectory + @"\rm.txt", "for demo purposes");
//MessageBox.Show("intercepted", “RM request”);
}
}
}
をやってねってことですね。ほかにもあるけど・・・
http://www.danielmoth.com/Blog/2006/10/vista-restart-manager.html
ちょっと対応アプリを自分で組んで、体感しておくとよさそうです。