title: Problem registering Win + L hotkey in c#
body: <p>I am using the below code to disable the hotkeys like Alt + f4, ctrl + c which are working perfectly. But I could not register win + L using the below code.</p>
  
  <pre><code>namespace KioskMode
  {
      public partial class Test : Form
      {
          #region Dynamic Link Library Imports
  
          [DllImport("user32.dll")]
          private static extern int FindWindow(string cls, string wndwText);
  
          [DllImport("user32.dll")]
          private static extern int ShowWindow(int hwnd, int cmd);
  
          [DllImport("user32.dll")]
          private static extern long SHAppBarMessage(long dword, int cmd);
  
          [DllImport("user32.dll")]
          private static extern int RegisterHotKey(IntPtr hwnd, int id, int fsModifiers, int vk);
  
          [DllImport("user32.dll")]
          private static extern int UnregisterHotKey(IntPtr hwnd, int id);
  
          #endregion
  
  
          #region Modifier Constants and Variables
  
          // Constants for modifier keys
          private const int USE_ALT = 1;
          private const int USE_CTRL = 2;
          private const int USE_SHIFT = 4;
          private const int USE_WIN = 8;
  
          // Hot key ID tracker
          short mHotKeyId = 0;
  
          #endregion
  
          public Test()
          {
              InitializeComponent();
              RegisterGlobalHotKey(Keys.F4, USE_ALT);
              RegisterGlobalHotKey(Keys.L, USE_WIN);
          }
  
          private void RegisterGlobalHotKey(Keys hotkey, int modifiers)
          {
              try
              { 
                  mHotKeyId++;
  
                  if (mHotKeyId &gt; 0)
                  {
                      // register the hot key combination
                      if (RegisterHotKey(this.Handle, mHotKeyId, modifiers, Convert.ToInt16(hotkey)) == 0)
                      {
                            MessageBox.Show("Error: " + mHotKeyId.ToString() + " - " +
                              Marshal.GetLastWin32Error().ToString(),
                              "Hot Key Registration");
                      }
                  }
              }
              catch
              { 
                  UnregisterGlobalHotKey();
              }
          }
  
  
          private void UnregisterGlobalHotKey()
          { 
              for (int i = 0; i &lt; mHotKeyId; i++)
              {
                  UnregisterHotKey(this.Handle, i);
              }
          }
  
          protected override void WndProc(ref Message m)
          {
              base.WndProc(ref m); 
              const int WM_HOTKEY = 0x312;
              if (m.Msg == WM_HOTKEY)
              {
                  // Ignore the request or each
                  // disabled hotkey combination
              }
          }
      }
  }
  </code></pre>