Batch Sendkeys Tastenkombination

Registriert
Apr. 2018
Beiträge
127
Hallo leute

Ich habe ein Batch gemacht mit dem ich ein paar eingaben mache
Das Problem ist ich weis nicht wie ich eine "Tastenkombination" mache mit CTRL+A
Also er soll mir alles auswählen

Kann wer helfen?

Versucht hab ichs mit zb. "{CTRL+A}" oder auch "{CTRL}+{A}"
 
Ja muss es und es funktioniert mit einem Hybrid VBS zb.
set SendKeys=CScript //nologo //E:JScript "%~F0"
var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.SendKeys(WScript.Arguments(0));
 
Für solche Kombinationen nutzt SendKeys einfach special characters:

Ctrl = ^
Alt = %
Shift = +

Für dein Beispiel also ^A

Man kann für Tastenfolgen auch direkt ein Wort eingeben, wie es bei exotischen Kombinationen wie AB zeitgleich aussieht weiß ich leider nicht, AB würde einfach beide nacheinander eingeben soweit ich weiß.
 
also ich will einen Text im Programm löschen... schreiben etc. geht alles aber das löschen macht probleme

Ich bin in einem feld und sollte ctrl + a dann dell haben

so siehts momentan aus
%SendKeys% "{^A}"
%SendKeys% "{DEL}"
aber funktioniert nicht
er markiert nix und löst nur einen buchstaben (wegen DEL)
 
Ja das Problem liegt beim markieren...
Hab einiges versucht was empfohlen wurde....
Hier mal als "selbstversuch"

Irgendwo muss ein denkfehler sein...
Bitte als .bat abspeichern und testen.

@if (@CodeSection == @batch) @then


@Echo off

set SendKeys=CScript //nologo //E:JScript "%~F0"
START notepad.exe
timeout /t 3

%SendKeys% "TryItUrSelf"
%SendKeys% <<<<<<<<hier will ich markieren
%SendKeys% "{DEL}"


@End
// JScript section

var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.SendKeys(WScript.Arguments(0));
 
Du willst "CTRL" und "a" gleichzeitig drücken, nicht hintereinander ....
%SendKeys% "^(a)"
 
  • Gefällt mir
Reaktionen: SchwarzerSurfer und Mihawk90
Du bist ein GOTT
100000 versuche nichts hat geklappt aber das rockt :D
Danke :*
Ergänzung ()

noch eine kleine Frage...

Weisst du evt. auch wie ich ein Batch "sich selber" minimieren oder ausblenden kann?
Ich BRAUCHE zwingend ein paar timeouts im batch und will es nicht im vordergrund haben
durch die Timeouts krieg ich es relativ lange angezeigt
 
Zuletzt bearbeitet:
Erstelle eine Verknüpfung für die BAT-Datei und dann unter Eigenschaften minimiert starten eintragen.
 
Das geht so nicht... da ich die Datei extern schon brauche muss ich direkt darauf zugreifen...
Das ist auch der Grund warum es eine Bat sein muss...
Powershell ginge auch aber kein bock alles um zu programmieren
 
Du könntest die Batch-Datei mit start /min aufrufen also nicht innerhalb der Batch-Datei ...

Code:
start /min file.bat ^& exit
 
Zurück
Oben