title: On Windows, how do we convert a virtual key code to the shifted character?
body: <p>I looked at MapVirtualKey() and ToAscii().</p>
  
  <p>MapVirtualKey() gives me only the unshifted character. ToAscii() only works for vk codes that translate to ASCII values.</p>
  
  <p>I need to detect for example, "Ctrl + Shift + 3" as Ctrl active, Shift active and '#'.</p>
  
  <p>Any clues?</p>