4

I want to send { and } signs to the Active window in Visual Basic 2010.But the problem is when we send a key like "Backspace" we send it as "{BS}".So it also contains the { & } signs. Therefore when we send { and } signs nothing happen.Anyone help me...

Joel Coehoorn
  • 399,467
  • 113
  • 570
  • 794
Thusitha
  • 3,393
  • 3
  • 21
  • 33

1 Answers1

8

From

http://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.aspx

The plus sign (+), caret (^), percent sign (%), tilde (~), and parentheses () have special meanings to SendKeys. To specify one of these characters, enclose it within braces ({}). For example, to specify the plus sign, use "{+}". To specify brace characters, use "{{}" and "{}}". Brackets ([ ]) have no special meaning to SendKeys, but you must enclose them in braces. In other applications, brackets do have a special meaning that might be significant when dynamic data exchange (DDE) occurs.

Basically, you need to double up the braces to escape them, Like

{{}

to send a { opening brace, and

{}} 

to send a closing brace. It may not be obvious at first glance, but that's just enclosing a brace character within braces. This is consistent with other escape sequences, such as using \\ in C/C#/etc to indicate a literal \ instead of a string formatting character.

3Dave
  • 28,657
  • 18
  • 88
  • 151