.bat Anwendung soll in andere .bat Anwendung schreiben

Aeon1991

Newbie
Registriert
Jan. 2016
Beiträge
2
Hallo,
ich habe folgendes Problem.
Ich habe eine .bat Datei die ein Java Programm startet. Über das offene cmd Fenster kann ich danach das Java Programm steuern.
Jetzt bräuchte ich ein anderes .Bat Programm was automatisch einen Befehl alle paar Minuten in das "Java-cmd" Fenster schreibt. Gibt es da eine Lösung? Würde das alles gerne mit .bat Dateien lösen falls es möglich ist.

Mit freundlichen Grüßen
Aeon
 
Ich würde es mit AutoIt machen. Einfach ein Script schreiben, das das Kommandozeilenfenster selektiert und eine Tastatureingabe absetzt. Das alles in einer Schleife, dann bist Du mit 4 Zeilen Code plus eine halbe Stunde einlesen fertig .

Allerdings muss ich sagen, dass sich das vom Konzept her nach einer ziemlich krummen Lösung anhört, was Du vorhast.
 
Könnte man wahrscheinlich alles via AutoIT machen lassen, hört sich wirklich krumm und schief an :D
 
Danke für eure Antworten, werde es versuchen.
Krumm und schief stimmt leider :D aber es hilft nichts.
 
Was genau soll den passieren? Hast Du den Code des Java-Programms?
 
Bei AutoIT eine Schleife machen, mit der was getippt wird? Lass das. Dadurch schrottet man den PC. Ich habe so ein Programm erstellt, welches jede 2 sekunden was schreibt. Ließ sich nicht mehr schließen, TaskManager minimierte sich direkt nach dem Öffnen und hat man den PC neugestartet, war es noch aktiv, obwohl es nicht im AutoStart war
 
@EherNeu1: Den Code würde ich gerne mal sehen.
 
Werde ich hier posten!
Kann natürlich auch sein, dass ich ein Fehler gemacht habe, aber es ließ sich noch schließen, wenn es noch nicht angefangen zu schreiben hat. Unter Win10 keine Probleme, Win7 hat es fast zerstört.
 
@EherNeu1
Bitte Dein Jolly-Roger-PC-Kaperungsscript noch um Cupholder-Funktion erweitern ^-^

Folgendes autoit-Script setzt einen Dauerping in der CMD ab & wird abgebrochen, sobald ESC gedrückt wird. Das dann in einer entsprechenden Dauerschleife setzen..
Code:
#include <Misc.au3>

Run("cmd.exe")

WinWaitActive("Administrator: C:\Windows\system32\cmd.exe", "", 15)
Send("ping 127.0.0.1 -t")
Send("{ENTER}")


While 1
If _IsPressed ("1B") Then
Send("^c")
;Exit
EndIf
WEnd
 
Ruheliebhaber schrieb:
@EherNeu1: Den Code würde ich gerne mal sehen.

Hier der Code
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$frmMain = GUICreate("Spammbot für MC", 615, 437, 656, 261)
$btnStart = GUICtrlCreateButton("Start", 144, 296, 257, 65)
$txtText = GUICtrlCreateEdit("", 88, 64, 473, 169)
$whtWichtig = GUICtrlCreateLabel("Nicht im textfeld laufen lassen!!! Kann nur per Task Manager geschlossen werden!", 88, 20, 450, 120)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit

Case $btnStart
$string = GUICtrlRead($txtText)
Sleep(5000)
While 1
Sleep(1500)
$nMsg = GUIGetMsg
Switch $nMsg
Case $GUI_EVENT_CLOSE
Send("{Enter}")

EndSwitch
Send($string & @LF)
WEnd
EndSwitch

WEnd
Ergänzung ()

ryan_blackdrago schrieb:
@EherNeu1
Bitte Dein Jolly-Roger-PC-Kaperungsscript noch um Cupholder-Funktion erweitern ^-^

Folgendes autoit-Script setzt einen Dauerping in der CMD ab & wird abgebrochen, sobald ESC gedrückt wird. Das dann in einer entsprechenden Dauerschleife setzen..
Code:
#include <Misc.au3>

Run("cmd.exe")

WinWaitActive("Administrator: C:\Windows\system32\cmd.exe", "", 15)
Send("ping 127.0.0.1 -t")
Send("{ENTER}")


While 1
If _IsPressed ("1B") Then
Send("^c")
;Exit
EndIf
WEnd

Verstehe nicht was du damit meinst, bin nicht sehr bewandert im Programmieren! :D
 
>cupholder
War eine Anspielung auf das berühmte Tassenhalter-Skript

>Quellcode Post#10:
Das genannte Skript kann beispielhaft nicht per X geschlossen werden, da der Punkt im Skript fehlt.
Auch schreibt das Script munter ohne Rücksicht den eingegebenen Text (egal welches Fenster auf ist; daher wirds schwierig mit Taskmanager abschießen).

>Autoit-Skript:
Habe da mal was für autoit gebastelt. Sobald exakt das cmd-prompt im Vordergrund ist, wir der vorher festgelegte Text dort hineingeschrieben. Ist das cmd-prompt nicht im Vordergrund (man arbeitet zum Beispiel in Word), dann wird nix geschrieben. Sobald cmd wieder im Vordergrund ist, wird der festgelegte Text geschrieben.
Das Skript kann geöffnet werden, startet aber noch nicht. Erst mit dem Multiplikationszeichen auf dem Nummerblock ist das Programm scharfgeschalten. Mit dem Minuszeichen am Nummerblock wird das Programm beendet.

Code:
HotKeySet ("{NUMPADMULT}", "Start")
HotKeySet ("{numpadsub}", "_Exit")

$str = InputBox("EINGABE","Bitte Text eingeben","")
;Msgbox(0, "test", $str)

While 1
Sleep(2000)
WEnd

Func Start()
While 1
Opt("WinTitleMatchMode", 3)
WinActivate("Administrator: C:\Windows\system32\cmd.exe")
WinWaitActive("Administrator: C:\Windows\system32\cmd.exe")
Sleep(2000)
Send($str)

Wend
EndFunc

Func _Exit()
Exit
EndFunc
 
Zuletzt bearbeitet:
Also kann ich bei meinem total genialem Programm einfach die HotKeys irgendwo setzten, und ich kanns wieder schließen?
Ergänzung ()

Problem gelöst
 
Zurück
Oben