My.Computer.Keyboard.SendKeys-Methode
Aktualisiert: November 2007
Sendet einen oder mehrere Tastaturanschläge wie bei der Eingabe über die Tastatur an das aktive Fenster.
' Usage
My.Computer.Keyboard.SendKeys(keys)
My.Computer.Keyboard.SendKeys(keys ,wait)
' Declaration
Public Sub SendKeys( _
ByVal keys As String _
)
' -or-
Public Sub SendKeys( _
ByVal keys As String, _
ByVal wait As Boolean _
)
Parameter
keys
Ein String, der die zu sendenden Tasten definiert.wait
Optional. Ein Boolean-Wert, der angibt, ob die Ausführung der Anwendung erst nach der Verarbeitung von Tastaturanschlägen fortgesetzt werden soll. Standardmäßig True.
Ausnahmen
Die folgende Bedingung kann einen Ausnahmefehler verursachen:
- Ein teilweise vertrauenswürdiger Kontext, in dem der Benutzer nicht über erforderliche Berechtigungen verfügt (SecurityException).
Hinweise
Die My.Computer.Keyboard.SendKeys-Methode bietet ähnliche Funktionalität wie die Send-Methode und die SendWait-Methode.
Das wait-Argument bietet sich an, wenn die Anwendung erst fortgesetzt werden kann, nachdem die andere Anwendung beendet wurde.
Hinweis: |
---|
Da es keine verwaltete Methode zum Aktivieren einer anderen Anwendung gibt, können Sie diese Klasse entweder in der aktuellen Anwendung verwenden, das Fenster manuell auswählen, an das die Tastaturanschläge gesendet werden sollen oder die Aktivierung anderer Anwendungen mit Windows API-Methoden, z. B. FindWindow und SetForegroundWindow, erzwingen. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Aufrufen von Windows-APIs. |
Das keys-Argument kann eine einzelne Taste oder eine beliebige, mit ALT, CTRL oder SHIFT (oder eine beliebige Kombination dieser Tasten) kombinierte Taste angeben. Jede Taste wird durch mindestesn ein Zeichen dargestellt, z. B. a für das Zeichen "a" oder {ENTER} für die EINGABETASTE.
Um eine Taste mit der UMSCHALTTASTE zu kombinieren, stellen Sie dem Tastencode + (Pluszeichen) voran. Um eine Taste mit STRG zu kombinieren, stellen Sie dem Tastencode ^ (Caretzeichen) voran. Um eine Taste mit ALT zu kombinieren, stellen Sie dem Tastencode % (Prozentzeichen) voran. Um die Wiederholung von Tastaturanschlägen anzugeben, verwenden Sie das Format {key number}. Sie müssen zwischen key und number ein Leerzeichen einfügen. Beispielsweise bedeutet {LEFT 42} "NACH-LINKS-TASTE 42 Mal drücken", und {h 10} bedeutet "'h' 10 Mal drücken".
In der folgenden Tabelle ist der jeweilige Code aufgelistet, mit dem Zeichen angegeben werden können, die nicht angezeigt werden, wenn die entsprechende Taste (z. B. EINGABETASTE oder TAB-TASTE) gedrückt wird.
Taste |
Code |
---|---|
RÜCKTASTE |
{BACKSPACE} oder {BS} |
UNTBR |
{BREAK} |
FESTSTELLTASTE |
{CAPSLOCK} |
ENTF |
{CLEAR} |
LÖSCHEN |
{DELETE} oder {DEL} |
NACH-UNTEN |
{DOWN} |
ENDE |
{END} |
EINGABETASTE (Zehnertastatur) |
{ENTER} |
EINGABETASTE |
~ |
ESC |
{ESCAPE} oder {ESC} |
HILFE |
{HELP} |
POS1 |
{HOME} |
EINFG |
{INSERT} |
NACH-LINKS |
{LEFT} |
NUM |
{NUMLOCK} |
BILD-AB |
{PGDN} |
BILD-AUF |
{PGUP} |
EINGABETASTE |
{RETURN} |
NACH-RECHTS |
{RIGHT} |
ROLLEN |
{SCROLLLOCK} |
TAB |
{TAB} |
NACH-OBEN |
{UP} |
F1 bis F15 |
{F1} bis {F15} |
Beispiel
In diesem Beispiel wird die My.Computer.Keyboard.SendKeys-Methode verwendet, um Tastaturanschläge an die externe Anwendung Rechner zu senden, die von der Shell-Funktion gestartet wird.
Dim ProcID As Integer
' Start the Calculator application, and store the process id.
ProcID = Shell("CALC.EXE", AppWinStyle.NormalFocus)
' Activate the Calculator application.
AppActivate(ProcID)
' Send the keystrokes to the Calculator application.
My.Computer.Keyboard.SendKeys("22", True)
My.Computer.Keyboard.SendKeys("*", True)
My.Computer.Keyboard.SendKeys("44", True)
My.Computer.Keyboard.SendKeys("=", True)
' The result is 22 * 44 = 968.
Eine ArgumentException-Ausnahme wird ausgelöst, wenn eine Anwendung mit der angeforderten Prozess-ID nicht gefunden werden kann.
Der Aufruf der Shell-Funktion erfordert volle Vertrauenswürdigkeit (SecurityException-Klasse).
Anforderungen
Namespace: Microsoft.VisualBasic.Devices
Klasse: Keyboard
Assembly: Visual Basic-Laufzeitbibliothek (in Microsoft.VisualBasic.dll)
Verfügbarkeit nach Projekttyp
Projekttyp |
Verfügbar |
---|---|
Windows-Anwendung |
Ja |
Klassenbibliothek |
Ja |
Konsolenanwendung |
Ja |
Windows-Steuerelementbibliothek |
Ja |
Web-Steuerelementbibliothek |
Nein |
Windows-Dienst |
Ja |
Website |
Nein |
Berechtigungen
Die folgenden Berechtigungen sind möglicherweise erforderlich:
Berechtigung |
Beschreibung |
---|---|
Steuert die Fähigkeit, auf Dateien und Ordner zuzugreifen. Zugeordnete Enumeration: Unrestricted. |
|
Steuert die Berechtigungen für Benutzeroberflächen und die Zwischenablage. Zugeordnete Enumeration: AllWindows. |
Weitere Informationen finden Sie unter Codezugriffssicherheit und unter Anfordern von Berechtigungen.
Siehe auch
Aufgaben
Exemplarische Vorgehensweise: Aufrufen von Windows-APIs