Ok. Then I guess we'll have to do it the hard way!

vb.net Code:
  1. Public Class Form1
  2.     Private Declare Auto Function VkKeyScan Lib "user32" (ByVal ch As Char) As Byte
  3.     Private Declare Auto Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Int32, ByVal dwExtraInfo As Int32)
  4.     Private Declare Auto Sub mouse_event Lib "user32" Alias "mouse_event" (ByVal dwFlags As UInt32, ByVal dx As UInt32, ByVal dy As UInt32, ByVal cButtons As UInt32, ByVal dwExtraInfo As IntPtr)
  5.     Const MOUSEEVENTF_LEFTDOWN = &H2 ' left button down
  6.     Const MOUSEEVENTF_LEFTUP = &H4 ' left button up
  7.     Const VK_LSHIFT = &HA0
  8.  
  9.     Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
  10.         Cursor.Position = PointToScreen(New Point(100, 225))
  11.         mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, CType(0, IntPtr))
  12.         mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, CType(0, IntPtr))
  13.  
  14.         For Each c In "Computer 123"
  15.             If Not Char.IsNumber(c) AndAlso Char.ToUpper(c) = c Then keybd_event(VK_LSHIFT, 0, 0, 0)
  16.             keybd_event(VkKeyScan(c), 0, 0, 0)
  17.             keybd_event(VkKeyScan(c), 0, 2, 0)
  18.             If Not Char.IsNumber(c) AndAlso Char.ToUpper(c) = c Then keybd_event(VK_LSHIFT, 0, 2, 0)
  19.         Next
  20.     End Sub
  21. End Class