Batch Datei für Autoprogrammstart mit Login/PW

mp3exe

Cadet 2nd Year
Registriert
Jan. 2023
Beiträge
21
Hallo Zusammen ich suche ein Code für eine .bat Datei das ich bei allen meinen Programmen meine Logindaten andauernd eingeben muss.

Also sprich: Programm A öffnen, Username, Tab, PW, Enter
Programm B öffnen, Username, Tab, PW, Enter
ect. (Aktuell ist es so)

Nach der Batch möchte ich die Usernamen und Pw's sowie die Wartezeit zwischen den Schritten anpassenlassen. Also einmal Doppelklick auf die .bat Datei, dann sollen alle meine 10-15 Programme nach und nach aufgehen.

Ich habe diesen Code gefunden, aber der Funktioniert bei mir nicht.

'Deklaration
Set Shell = CreateObject("WScript.Shell")

'Ausführen des Programmes
Shell.Run "C:\Programmpfad\Programm.exe"
WScript.Sleep 100
Shell.AppActivate "Rechner"

'Tastendruck simulieren
WScript.Sleep 500
Shell.SendKeys "user"
WScript.Sleep 500
Shell.SendKeys "{TAB}"
WScript.Sleep 500
Shell.SendKeys "PW"
WScript.Sleep 500
Shell.SendKeys "{ENTER}"

Bitte um Hilfe.
 
Das Skript würde - wenn die Variablen korrekt angepasst wurden - wahrscheinlich funktionieren.

Aber: das ist ein VB-Skript, das muss in eine vbs-Datei und nicht in eine bat-Datei.
 
Ich habe es in VBs eingefügt bisher nicht. Aber .bat wäre mir lieber. Bin um die Umarbeitung der Syntax dankbar.
 
Eine .bat-Datei kann das technisch nicht leisten - bzw. nur, wenn es auch wieder ein Programm gäbe, dass die Bat-Datei ausführen kann, dass die eigentlich schwierigen Parts übernimmt (dann brauchst du aber wieder gar keine Bat sondern könntest gleich das andere Tool nutzen).

Unten habe ich rot und blau markiert, was du ändern musst. Das betrifft natürlich hauptsächlich den Pfad zum Programm, dass du ausführen möchtest, und den Namen des Fensters, den das Skript danach aktiv schalten soll (das kann der Name sein, wie er in der Titelzeile des Programms (oder Login-Fensters) steht - muss aber nicht). Dann natürlich dein Benutzername und Passwort (was an sich schon eine schlechte Idee ist! Das kann dann ja jeder mit Zugriff auf dem Rechner einfach auslesen!).

Die blaue "100" ist die Wartezeit in Millisekunden (=0.1 Sekunden), die nach dem Starten des Programms gewartet werden soll, bevor versucht wird es aktiv zu schalten und sich da anzumelden - das ist definitiv zu wenig, klappt bestenfalls beim Taschenrechner. Wenn du Anwendungen hast, die gerne mal 10-20 Sekunden zum öffnen brauchen, kannst du da gleich mal eine 30000 oder so hinschreiben.

Den fett geschriebenen Block unten im Zitat müsstest du wiederum für jedes einzelne Programm wiederholen, dass du automatisch starten möchtest.

Alles in allem... ist das eine sehr unsaubere, schlechte Lösung. Es gibt schon extra Tools dafür, die sowas automatisieren können (RoboTask, AutoHotkey etc.) und sich ggf. besser dafür eignen.
Eine andere, einfache Frage wäre ggf., ob deine Software die du automatisch nutzen willst nicht vlt. eine "angemeldet bleiben"-Funktion hat? Das wäre immer noch sauberer, als die Zugangsdaten in eine klar einsehbare Textdatei zu schreiben.


'Deklaration
Set Shell = CreateObject("WScript.Shell")

'Ausführen des Programmes
Shell.Run "
C:\Programmpfad\Programm.exe"
WScript.Sleep
100
Shell.AppActivate "Rechner"

'Tastendruck simulieren
WScript.Sleep 500
Shell.SendKeys "
user"
WScript.Sleep 500
Shell.SendKeys "{TAB}"
WScript.Sleep 500
Shell.SendKeys "
PW"
WScript.Sleep 500
Shell.SendKeys "{ENTER}"
 
Mit einer "Echten" Bat würde der Code völlig ander aussehen ..... das ist alter DOS Code der da rein muss.

Sprich ein Programstart würde den ganzen Pfad sowie die ARgumente benötigen so wie das Program es erfordert.

z.B.

c:\windows\notepad.exe -> Würde das Notepad öffnen

Wie du deine Programme darüber MIT Nutzer+PW öffnen kannst, sofern die es überhaupt unterstützen, must du beim Support der jeweiligen Programem erfragen/nachschauen. Es gibt keine FESTEN Regeln dafür die das genau geregelt ist bzw. welche Kürzel/Funktionen wie/in welchem Formal per Argument verfügbar sind.

Zwischen den einzelnen Öffnungsbefehlen dann jeweils nur eine Zeile mit "wait XXX" XXX steht für Millisekunden ! einfügen und fertig. Ich bezweifle aber das du so glücklich wirst denn bedenke : Eine Bat bkann mannich tverschlüsseln und die Login-Daten liegen somit absolut offen für jeden der an das System ran kommt bzw. sich von außen rein hackt. Es wäre Idiotisch das so zumachen !!
 
Okay, verstehe. Ja, meine Idee ist eigt. ja nur für meine Privaten Arbeits PC der im Dauerhomeoffice steht und nur von mir bedient wird, eine Batchdatei/Script/Programm zu haben wo ich alle Programme öffen kann anhand eines Klicks. Dann warte ich z.b. 1 Minute und alle Programme und Tabs gehen automatisch auf mit allen Logindaten.

Robotask kostet monatlich habe ich gesehen? Autohotkey sieht interessant aus, kann das Programm so etwas?
Ist das schwer zu lernen? Gibt es noch weitere Programme dieser Art?
 
Es bleibt die FGrage ob die Programme welche du STARTEN willst, das ganze auch unterstützen in Sachen "Sofortlogin". Wenn die (egal auf welchem weg) keinerlei Daten "von außen" annehmen ...... dann könnte es sein das du am ende bei einem Script landest welches deinen Mauszeiger auf dem Desktop steuert um ein Programm zu starten un dann per Tastatur-Emulation die Logindaten ein zu geben und zu bestätigen -> DAS ist durchaus möglich, aber das letzte mal das ICH mit sowas gearbeitet habe ist .... einige Jahre her :-)
 
Zurück
Oben