title: WinForms key press isn't working right
body: <p><strong>update</strong>: I've modified the code below to reveal some additional information regarding the key that was pressed.</p>
  
  <p><strong>update #2</strong>: I've discovered the root cause of the issue: we have an HTML control (Gecko rendering engine) on our form. When that Gecko rendering engine navigates to some Flash control, suddenly ~2% of our key presses don't get through, even after we've removed the Gecko HTML control. Wahoo, I get to blame this on Flash! Now the question is, how do I fix this?</p>
  
  <p><strong>update #3</strong>: Nope, it's not Flash. It's the Gecko rendering engine. Navigating even to Google causes some keys to not come through to our app right. Hrmmm.</p>
  
  <p>We have a strange case in our WinForms app where the user presses a key combination (in this case, <kbd>Alt</kbd> + <kbd>S</kbd>), and WinForms tells us some other key combo (value 262162) is pressed:</p>
  
  <pre><code>protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
  {
      if(keyData == (Keys.S | Keys.Alt))
      {
         Console.WriteLine("You pressed Alt+S");
      }
      else if(keyData == (Keys.Menu | Keys.Alt))
      {
         Console.WriteLine("What the hell?"); // This sometimes gets hit when I press Alt+S
      }
  }
  </code></pre>
  
  <p>90% of the time, <code>You pressed Alt+S</code> will be shown. But on rare occurrances, we press <kbd>Alt</kbd> + <kbd>S</kbd> and it says, <code>What the hell?</code>.</p>
  
  <p>Any idea what's wrong?</p>