ホットキーでウィンドウを前面に

ホットキーでウィンドウを前面に出す方法。

using System.Runtime.InteropServices; // DllImport
[DllImport("User32.dll")]
static extern bool SetForegroundWindow(IntPtr hWnd);

[DllImport("User32.dll")]
static extern bool
RegisterHotKey(System.IntPtr hWnd, int id, uint fsModifiers, uint vk);

const int WM_HOTKEY = 0x312;

private void Form1_Load(object sender, System.EventArgs e)
{
    RegisterHotKey(this.Handle, 0, 0, (uint)Keys.Pause);
}

protected override void WndProc(ref Message m)
{
    if (m.Msg == WM_HOTKEY)
       SetForegroundWindow(Handle);
    else
      base.WndProc (ref m);
}