title: SendMessage CTRL + UP ARROW
body: <p>I'm trying to replicate a CTRL + UP ARROW message but it's like ignoring the CTRL key, the result is like only sending UP ARROW, without sending CTRL</p>
  
  <p>This is how the Spy++ results looks:
  <a href="https://i.stack.imgur.com/XwIWW.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/XwIWW.png" alt="enter image description here"></a></p>
  
  <p>CTRL KEYDOWN:</p>
  
  <p><a href="https://i.stack.imgur.com/yjIuk.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/yjIuk.png" alt="enter image description here"></a></p>
  
  <p>UP ARROW KEYDOWN:</p>
  
  <p><a href="https://i.stack.imgur.com/t1bTx.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/t1bTx.png" alt="enter image description here"></a></p>
  
  <p>UP ARROW KEYUP:</p>
  
  <p><a href="https://i.stack.imgur.com/n2bqZ.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/n2bqZ.png" alt="enter image description here"></a></p>
  
  <p>CTRL KEYUP:</p>
  
  <p><a href="https://i.stack.imgur.com/0ydqP.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/0ydqP.png" alt="enter image description here"></a></p>
  
  <p>This is the code I'm using:</p>
  
  <pre><code>[DllImport("user32.dll")]
  public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
  [DllImport("user32.dll", CharSet = CharSet.Auto)]
  private static extern IntPtr SendMessage(IntPtr hWnd, int Msg, int wParam, uint lParam);
  
  SendMessage(whandle, 0x100, 0x00000011, 0x011D0001);
  SendMessage(whandle, 0x100, 0x00000026, 0x01480001);
  SendMessage(whandle, 0x101, 0x00000026, 0xC1480001);
  SendMessage(whandle, 0x101, 0x00000011, 0xC11D0001);
  </code></pre>
  
  <p>I've changed this SendMessage signature to accept KEYUP lParams: </p>
  
  <p><code>private static extern IntPtr SendMessage(IntPtr hWnd, int Msg, int wParam, uint lParam);</code></p>
  
  <p>Maybe the signature is wrong? I don't really know what I'm missing</p>
  
  <p>I can't use SendKeys or any method that requires setting the window in front, it must work in background, neither SetKeyBoardState that could affect to other programs running</p>
  
  <p>EDIT:</p>
  
  <p>Tested with PostMessage and I get the same results, CTRL key is ignored</p>
  
  <pre><code>PostMessage(whandle, 0x100, 0x00000011, 0x011D0001);
  PostMessage(whandle, 0x100, 0x00000026, 0x01480001);
  PostMessage(whandle, 0x101, 0x00000026, 0xC1480001);
  PostMessage(whandle, 0x101, 0x00000011, 0xC11D0001);
  </code></pre>