Type "Hello, World!" Write a program which generates keyboard events which type Hello, World!.

It doesn't have to be platform-independent.

It can't leave any keys pressed.  For example, in Java, Robot.KeyPress('H'); will leave H pressed, so you must release it with Robot.KeyRelease('H');

You may assume that the caps lock is off when your program is run.  Capital letters can be typed either by holding shift and pressing the letter, or by toggling caps lock.  For the !, you'll probably have to use the shift method.

Shortest code wins.
AppleScript, 50 bytes

tell app"System Events"to keystroke"Hello, World!"


Thanks to marinus for the suggestion.