###Function###
Send

###Description###
Sendet ein oder mehrere sumulierte Tastendrücke an das aktive Fenster.

###Syntax###
Send ( "keys" [, flag] )


###Parameters###
@@ParamTable@@
keys
	Die Folge von Tastendrücken die gesendet werden soll.
flag
	[optional] Kennzeichnet wie "keys" ausgeführt wird:
	  flag = 0 (Vorgabe), Text beinhaltet spezielle Zeichen, wie + und ! die für SHIFT (=UMSCHALT) und ALT Tasten stehen.
	  flag = 1, "keys" werden wie angegeben ausgeführt.
@@End@@


###ReturnValue###
Kein.


###Remarks###
Siehe <a href="..\appendix\SendKeys.htm">Appendix</a> für einige Tips für die Verwendung von "Send".  AutoIt kann alle ASCII und erweiterte ASCII Zeichen (0-255) senden. Um UNICODE Zeichen zu senden muss die "ASC" Option benutzt werden und der Code des Zeichens das gesendet werden soll (siehe {ASC} am Ende der untenstehenden Tabelle).

Die "Send" Befehlssyntax ist ähnlich der von ScriptIt und dem Visual Basic "SendKeys" Befehl. Die Zeichen werden wie geschrieben gesendet, mit Ausnahme der folgenden Zeichen:

'!'
Dies weist AutoIt an den ALT Tastendruck zu senden, folglich würde Send("This is text!a") die Tastendrücke "This is text" senden und dann die Tastendrücke "ALT+a".

N.B. Einige Programme sind sehr empfindlich bezüglich Großbuchstaben und ALT Taste, z.B. "!A" ist unterschiedlich zu "!a". Der erste Ausdruck bewirkt ALT+SHIFT+A, der zweite ist ALT+a. Im Zweifelsfall benutze Kleinschreibung!

'+'
Dies weist AutoIt an den SHIFT (=UMSCHALT) Tastendruck zu senden, folglich würde Send("Hell+o") den Text "HellO" senden. Send("!+a") würde "ALT+SHIFT+a" senden.

'^'
Dies weist AutoIT an den CONTROL (=STRG =STEUERUNG) Tastendruck zu senden, folglich würde Send("^!a") "CTRL+ALT+a" senden.

Bemerkung: Einige Programme reagieren sehr empfindlich auf Groß-/Kleinschreibung und CTRL Tastendücke, z.B. "^A" ist unterschiedlich zu "^a". Der erste Ausdruck sendet CTRL+SHIFT+A, der zweite sendet CTRL+a.  Im Zweifesfall benutze Kleinschreibung!

'#'
Die hash (=Raute =Doppelkreuz) Taste simuliert das Drücken der Window Taste. Folglich würde Send("#r") Win+r senden und damit die Run Dialogbox (Auführen-Dialog) aufrufen.


Man kann "SendCapslockMode" so einstellen, dass die CAPSLOCK (FESTSTELLTASTE) Taste beim start einer "Send" Operation abgeschaltet wird und nach beenden wieder zurückgesetz wird.
Wie auch immer, wenn ein Anwender die SHIFT Taste beim Beginn einer "Send" Funktion gedrückt hält, könnte der Text in Großbuchstaben gesendet werden.
Eine Vermeidungsmöglichkeit ist Send("{SHIFTDOWN}{SHIFTUP}") vor der eigentlichen "Send" Operations zu senden.


Bestimmte spezielle Tastendrücke müsssen in gschweiften Klammern gesendet werden:

Bemerkung: Windows erlaubt nicht das senden der "CTRL-ALT-DEL" Tastenkombination!
@@StandardTable@@
<b>Send Befehl (wenn Flag=0)</b>	<b>Resultierende Tastendruck</b>
{!}	!
{#}	#
{+}	+
{^}	^
{{}	{
{}}	}
{SPACE}	Leertaste
{ENTER}	Eingabetast auf der Haupttastatur
{ALT}	ALT
{BACKSPACE} or {BS}	Rücktaste
{DELETE} or {DEL}	Entfernen (Entf)
{UP}	Nach-Oben-Taste
{DOWN}	Nach-Unten-Taste
{LEFT}	Nach-Links-Taste
{RIGHT}	Nach-Rechts-Taste
{HOME}	POS1
{END}	ENDE
{ESCAPE} or {ESC}	ESCAPE
{INSERT} or {INS}	EINFÜGEN (EINFG)
{PGUP}	Bild-Auf
{PGDN}	Bild-Ab
{F1} - {F12}	Funktions Tasten
{TAB}	TABULATOR
{PRINTSCREEN}	Drucken
{LWIN}	Linke Windows Taste
{RWIN}	Rechte Windows Taste
{NUMLOCK on}	Numerisches Tastenfeld (an/aus/wechseln)=(on/off/toggle)
{CAPSLOCK off}	FESTSTELLTASTE (an/aus/wechseln)=(on/off/toggle)
{SCROLLLOCK toggle}	ROLLEN (an/aus/wechseln)=(on/off/toggle)
{CTRLBREAK}	Ctrl+Break = STRG+UNTERBRECHUNG
{PAUSE}	PAUSE

{NUMPAD0} - {NUMPAD9}	Numpad Ziffern (Numpad = Numerisches Tastenfeld)
{NUMPADMULT}	Numpad Multiplizieren
{NUMPADADD}	Numpad Addieren
{NUMPADSUB}	Numpad Subtrahieren
{NUMPADDIV}	Numpad Dividieren
{NUMPADDOT}	Numpad Punkt
{NUMPADENTER}	Numpad Eingabe Taste
{APPSKEY}	Windows Programm Taste
{LALT}	Links ALT Taste
{RALT}	Rechts ALT Taste
{LCTRL}	Links CTRL Taste
{RCTRL}	Rechts CTRL Taste
{LSHIFT}	Linke Shift Taste
{RSHIFT}	Rechte Shift Taste
{SLEEP}	Computer PAUSE Taste
{ALTDOWN}	Hält die ALT Taste gedrückt bis {ALTUP} gesendet wird
{SHIFTDOWN}	Hält die SHIFT Taste gedrückt bis {SHIFTUP} gesendet wird
{CTRLDOWN}	Hält die CTRL Taste gedrückt bis {CTRLUP} gesendet wird
{LWINDOWN}	Hält die linke Windows Taste gedrückt bis {LWINUP} gesendet wird
{RWINDOWN}	Hält die rechte Windows Taste gedrückt bis {RWINUP} gesendet wird
{ASC nnnn}	Sendet die ALT+nnnn Tastenkombination
{BROWSER_BACK}	Nur 2000/XP: Wählt den Browser "Zurück" Button
{BROWSER_FORWARD}	Nur 2000/XP: Wählt den Browser "Vorwärts" Button
{BROWSER_REFRESH}	Nur 2000/XP: Wählt den Browser "Aktualisieren" Button
{BROWSER_STOP}	Nur 2000/XP: Wählt den Browser "Stop" Button
{BROWSER_SEARCH}	Nur 2000/XP: Wählt den Browser "Suche" Button
{BROWSER_FAVORITES}	Nur 2000/XP: Wählt den Browser "Favoriten" Button
{BROWSER_HOME}	Nur 2000/XP: Startet den Browser und geht zur Startseite
{VOLUME_MUTE}	Nur 2000/XP: Stellt Lautsprecher auf Stumm
{VOLUME_DOWN}	Nur 2000/XP: Reduziert die Lautstärke
{VOLUME_UP}	Nur 2000/XP: Steigert die Lautstärke
{MEDIA_NEXT}	Nur 2000/XP: Wählt den nächsten Track im Media Player
{MEDIA_PREV}	Nur 2000/XP: Wählt den vorhergehenden Track im Media Player
{MEDIA_STOP}	Nur 2000/XP: Stoppt Media Player
{MEDIA_PLAY_PAUSE}	Nur 2000/XP: Wiedergabepause Media player
{LAUNCH_MAIL}	Nur 2000/XP: Startet die Standard email Anwaendung
{LAUNCH_MEDIA}	Nur 2000/XP: Startet den Media Player
{LAUNCH_APP1}	Nur 2000/XP: Startet Anwender Programm 1
{LAUNCH_APP2}	Nur 2000/XP: Startet Anwender Programm 2
@@End@@

Um den ASCII Wert A zu senden, der durch drücken von ALT+065 auf dem numerischen Tastenfeld erzeugt wird, benutze
    Send("{ASC 065}")

Bei einem 2 ziffrigem ASCII Code muss eine 0 vorangestellt werden.

Um UNICODE Zeichen zu senden muss der Zeichencode eingegeben werdeb. Z.B. wird so ein chinesisches Zeichen gesendet
    Send("{ASC 2709}")


Einzelne Tastendrücke können auch wiederholt werden, z.B.
    Send("{DEL 4}")    ;Drückt die ENTF Taste 4 mal
    Send("{S 30}")      ;Sendet 30 'S' Zeichen
    Send("+{TAB 4})   ;Drückt SHIFT+TAB 4 mal

Um eine Taste gedrückt zu halten (Allgemein nur brauchbar für Spiele)
    Send("{a down}")    ;Hält die A Taste gedrückt
    Send("{a up}")        ;Loslassen der A Taste

So wird der Status für Capslock, Numlock und Scrolllock gesetzt.
    Send("{NumLock on}")        ;Schaltet NUMLock ein
    Send("{CapsLock off}")      ;Schaltet die CapsLock Taste aus
    Send("{ScrollLock toggle}") ;Wechselt den Status von ScrollLock

Soll eine Variable für die Anzahl von Wiederholungen genutzt werden, dann versuche
    $n = 4
    Send("+{TAB " & $n & "}")

Soll der ASCII Wert A 4 mal gesendet werden, dann versuche
    $x = Chr(65)
    Send("{" & $x & " 4}")

Die meisten Notebooks haben auf der Tastatur eine spezielle Fn Taste.  Diese Taste kann nicht simuliert werden.

Beachte, wird der Flag Parameter auf 1 gesetzt, werden keine der zuvor angeführten "speziellen" Tastendrücke gesendet.  Das ist praktisch wenn einiger Text, kopiert von einer Variablen, genauso wie geschrieben gesendet werden soll.


Z.B., öffne Ordneroptionen (Explorer -> Extras -> ...) und versuche folgendes:
@@StandardTable@@
Send("{TAB}")	Navigiere zum nächsten Control (Button, Checkbox, usw.) 
Send("+{TAB}")	Navigiere zum vorhergehenden Control. 
Send("^{TAB}")	Navigiere zum nächsten WindowTab (in einem Dialog mit Tabs) 
Send("^+{TAB}")	Navigiere zum vorhergehenden WindowTab. 
Send("{SPACE}")	Kann benutzt werden um eine Checkbox (Kontrollkästchen) zu makieren oder ein Button anzuklicken. 
Send("{+}")	Aktiviert/markiert üblicherweise eine Checkbox (wenn es wirklich eine Checkbox ist.) 
Send("{-}")	Deaktiviert eine Checkbox. 
Send("{NumPadMult}")	Expandiert rekursiv Verzeichnisse in einem SysTreeView32.
@@End@@

Benutze Alt-key Kombinationen um auf Menüpunkte zuzugreifen.  Also, öffne Notepad und versuche folgendes:
Send("!d") Sendet Alt+d, die Zugriffstaste auf Notepad's Datei Menü.

@@StandardTable@@
Send("{DOWN}")	Geht runter im Menu. 
Send("{UP}")	Geht rauf im Menu. 
Send("{LEFT}")	Geht links zu einem neuen Menu oder expandiert ein Untermenü. 
Send("{RIGHT}")	Geht rechts zu einem neuen Menu oder kollapsed ein Untermenü. 
@@End@@
Siehe Windows' Help--drücke Win+F1--für eine komplette Liste von Tastatur "shortcuts", wenn du die Bedeutung von Alt+F4, PrintScreen, Ctrl+C, .... nicht kennst.



###Related###
SendAttachmode (Option), SendKeyDelay (Option), SendKeyDownDelay (Option), ControlSend


###Example###
@@IncludeExample@@
