WinRobots-FAQ
4. Maus- und Tastaturaktivitäten simulieren
4.1 Wie kann ich mit WinRobots Mausklicks realisieren?
4.2 Wie kann ich mit WinRobots Tastatureingaben simulieren?
4.3 Kann ich auch das Mausrad simulieren?
4.4 Wozu gibt es so viele unterschiedliche Tastatur-Simulationsbefehle?
4.5 Warum gibt es parallel laufende Robots wie den "DialogButtonClick" (DBC)?
4.6 Kann WR die UAC-Box in Windows Vista wegklicken?
4.7 Was kann ich mit SKD "Send-Key-Dos" machen?
4.8 Warum fügt mir der WinRobots meistens RST ("Replace selected Text") in mein Skript ein?
4.9 Text fehlt.
4.1 Wie kann ich mit WinRobots Mausklicks realisieren?
WinRobots-Mausklicks mit der linken Maustaste werden mit den Befehlen MLC, MLI, MEL und BCS simuliert. Dazu kommen dann noch die entsprechenden Befehle für die rechte Maustaste und das Mausrad.
Die ME?-Befehle senden eine Maus-Message direkt an das zuletzt lokalisierte Fenster(Steuerelement) und können daher auch verdeckte Fenster bedienen. Allerdings unterstützen nicht alle Fenster diese Funktion, aber wenn, sollte diese Art bevorzugt werden. Alle anderen Befehle erzeugen einen (fast) "realen" Mausklick an der vorher lokalisierten Stelle, d.h. auf demjenigen Fenster, das dort liegt und sichtbar ist.
top | Index
4.2 Wie kann ich mit WinRobots Tastatureingaben simulieren?
Tastatureingaben dienen hauptsächlich zum Schreiben von Zeichenfolgen, aber auch zur Realisierung von Funktionen wie Menü aufklappen, Shortkeys als Schnellzugriff etc. Tastatureingaben werden in der Regel mit SKD, SKP, RST, SDK oder SKS simuliert. Es gibt aber noch einige andere Spezialbefehle, mit denen man Tasten "herunterdrücken" (KYD) oder "loslassen" kann (KYU).
top | Index
4.3 Kann ich auch das Mausrad simulieren?
Ja, das Mausrad wird mit dem Befehl MWM simuliert.
top | Index
4.4 Wozu gibt es so viele unterschiedliche Tastatur-Simulationsbefehle?
Eine der häufigsten Aufgaben von WinRobots ist das Eintragen von Text in Eingabefelder. Am elegantesten geschieht das mittels SDT oder RST, wobei der Text direkt an das betreffende Fenster geschickt wird. Eine andere Möglichkeit ist das Einfügen über die Zwischenablage mit PFC. Es kommt aber insbesondere bei Eingabefeldern für sensible Daten wie Benutzername oder Paßwort oft vor, daß diese Methoden nicht unterstützt werden. Der Text erscheint zwar (manchmal) optisch, wird aber nicht verarbeitet. In solchen Fällen werden nur Tastatureingaben akzeptiert. Das gilt auch für Anwendungen ohne die "normale" Fensterstruktur wie z.B. Webseiten im Browser.
Ab WinNT4 aufwärts kann es sogar vorkommen, daß ein Programm nur reale, d.h. mit der "echten" Tastatur erzeugte Tastendrücke akzeptiert (z.B. Windows Vista UAC-Dialoge; diese reagieren auch nur auf "echte" Mausklicks). Dann ist selbst WinRobots machtlos.
Neben der Texteingabe ist die Bedienung von Menüs über Shortkeys eine häufig vorkommende Aufgabe. Dazu dient der Befehl SMK.
Für andere Anwendungen (Beispiel: Eingaben in eine DOS-Box) gibt es den Befehl SKD. Dieser kann auch im Internet Explorer/Browser verwendet werden, aber dort hat SKP an bestimmten Stellen den Vorzug.
top | Index
4.5 Warum gibt es parallel laufende Robots wie den "DialogButtonClick" (DBC)?
Wenn während des Ablaufs von Automatisierungsscripten sporadisch (Dialog)Fenster auftauchen können (Beispiel: "Es ist schon Version soundso installiert ..."), bietet WinRobots die Möglichkeit, hier einen Robot parallel laufen zu lassen, der nur diese Fenster bedient. Allerdings muß bekannt sein, welche Fenster das sein können.
Auch hier kann der Scriptcode einfach mit der "gelben Liste" aufgezeichnet werden (Anwahl von DBC oder WBC).
top | Index
4.6 Kann WR die UAC-Box in Windows Vista wegklicken?
Nein. Die UAC (UserAccountControl) ist eine Sicherheitsmaßnhme, deren Dialoge nur manuell zu bedienen sind, sonst wäre sie zu leicht außer Kraft zu setzen. Wenn WinRobots ungestört arbeiten soll, muß die UAC ausgeschaltet werden. Das wird aber ein Benutzer, der Automatisierungen mit WinRobots durchführen will, ohnehin schon getan haben...
top | Index
4.7 Was kann ich mit SKD "Send-Key-Dos" machen?
SKD kann - wie der Name schon sagt, Text in DOS-Boxen eingeben, ganz so, als wenn Sie den Text von hand in die DOS-BOX schreiben würden.
top | Index
4.8 Warum fügt mir der WinRobots meistens RST ("Replace selected Text") in mein Skript ein?
SKD erzeugt "fast" echte Tastendrücke im aktiven Fenster und kann deshalb auch für Eingaben in ein DOS-Fenster (Console) verwendet werden. Darüber hinaus ist SKD für jede Art von Tastatureingabe geeignet, wobei die Tastendrücke für Text nacheinander für jedes Zeichen erzeugt werden; deshalb sollten Sie für Texteingaben andere Befehle bevorzugen.
top | Index
4.9 Tetxt fehlt
RST kann in einem Befehl sowohl vorhandenen Text selektieren und den selektierten Text ersetzen. Die "gelbe Liste" nutzt es so, dass jeweils der gesamte eventuell bereits in dem Eingabefeld stehende Text durch den neu einzutragenden Text ersetzt wird. Das müssen Sie ggf. präzisieren.
top | Index
