Wie kann ich ein zweites Programm gleichzeitig mit dem Hauptprogramm starten?
Wenn ich zum Beispiel das Remote Desktop Programm starte, und gleichzeitig z.b das VPN Programm startet?
5 Antworten
Und wie kann man ein Programm auf diese weise etwas Zeitverzögert starten? um z.b etwas einzugeben?
...auch das lässt sich mit Batch realisieren.
demo.cmd
@echo off
chcp 65001 >nul & rem Umlaute erlauben
rem der Normalzustand, starte Programme nacheinander.
rem wenn das ersere beendet wird, startet das nächste.
rem gib eine Meldung aus
echo Ich warte bis der Editor beendet wird Editor wieder
echo Schließe nun den Editor wieder
rem starte Notpad
Notepad
echo Schließe nun das Malprogramm wieder
rem wenn dises beendet wird, starte das Malprogramm
mspaint
echo Ich bin fertig...
pause
demo2.cmd
@echo off
chcp 65001 >nul
echo Ich start den Editor und das Malprogram gleichzeitig.
echo ...verliere jedoch die Kontrolle über beide Programme
rem starte Notpad
start "" Notepad "mein Text.txt"
start "" mspaint
echo: & rem leerzeile
echo erledigt...
echo:
echo ich schließe mich in 30 Sekunden
timeout 30
timeout sekundenanzahl ,lässt die Batch warten.
demo3.cmd
@echo off
chcp 65001 >nul
echo Ich start den Editor und das Malprogram gleichzeitig.
echo ...verliere jedoch die Kontrolle über beide Programme
rem starte Notpad
start "" Notepad "mein Text.txt"
echo:
echo warte 10 Sekunden bis zum Start des Malprogramms
timeout 10 >nul & rem >verteckt die ausgabe eines Programms
mspaint
echo: & rem leerzeile
echo erledigt...
echo:
echo ich schließe mich in 30 Sekunden
timeout 30
demo.4.cmd
@echo off
chcp 65001 >nul
rem Eingabe in der Console
set /p "variable=Gib etwas ein :"
echo Du hast folgendes eingegeben: "%variable%")
rem schreibe das eingegebene in die Datei "mein Text.txt"
echo %date% , %time%: ich habe in diese Datei geschrieben: >>"mein Text.txt"
echo "%variable%" >>"mein Text.txt"
rem wartet noch bis die Datei geschrieben ist.
start "" Notepad "mein Text.txt"
echo:
timeout 5
mspaint
echo: & rem leerzeile
echo erledigt...
echo:
echo ich schließe mich in 30 Sekunden
timeout 30
...füge die Beispiele im Editor ein und speichere diese unter einem Namen.cmd .
(Achtung: Dateityp: alleDateien. , Codierung UTF-8 (ohne BOM))
In bestimmten Fällen, wie z. B. wenn häufig die selben Programme gleichzeitig geöffnet werden müssen, kann der Start dieser Programme über ein einziges Symbol (z.B. auf dem Desktop) sehr hilfreich sein. Hierfür muss einfach zusammen mit einem Befehl ein Windows-Befehlsskript erstellt werden. Die folgende Beschreibung zeigt die Technik exemplarisch für den Start der Officeanwendungen Word, Excel und Access. Selbstverständlich funktioniert dies mit sämtlichen anderen Programmen auch.
So geht's:
- "Start" > ("Programme") (bzw. "Alle Programme") > "Zubehör" > "Editor" (alternativ anderen Texteditor starten)
- Geben Sie folgende Zeile ein bzw. passen Sie die folgenden Zeilen an:
- @ECHO OFF
- ECHO Bitte warten, Programme werden gestartet...
- START "Winword" /B "C:\Programme\Microsoft Office\Office\winword.exe"
- START "Excel" /B "C:\Programme\Microsoft Office\Office\excel.exe"
- START "Access" /B "C:\Programme\Microsoft Office\Office\msaccess.exe"
- ECHO Alle Programme gestartet!
- Speichern Sie den Inhalt unter einem beliebigen Dateinamen mit der Dateiendung ".CMD" in einem frei wählbaren Verzeichnis (Ordner) ab. Z.B.: "%windir%\programmestarten.cmd"
- Geben Sie den Namen im Feld "Dateiname" mit Anführungszeichen ein.
- Erstellen Sie nun eine neue Verknüpfung auf dem Desktop (oder im Startmenü).
- Klicken Sie mit der rechten Maustaste auf die Desktopoberfläche.
- Im Kontextmenü wählen Sie "Neu" > "Verknüpfung".
- Als Speicherort des Objekts / Elements geben Sie den Pfad und Dateinamen vom Windows-Befehlsskript ein. Z.B.: "%windir%\programmestarten.cmd"
- Klicken Sie nun auf die Schaltfläche "Weiter".
- Geben Sie nun eine Beschreibung ein (z.B.: "Word, Excel, Access") und klicken dann auf "Fertig stellen".
Und wie kann man ein Programm auf diese weise etwas Zeitverzögert starten? um z.b etwas einzugeben?
Eleganter als eine *.bat Datei ist eine *.vbs Datei.
Erstelle eine leere *txt Datei und füge diesen Quelltext ein:
Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.Run("notepad.exe")
WScript.Sleep 2000
WshShell.Run("calc.exe")
Anschliessend benennst du die Datei in "startscript.vbs" um.
Der Wert 2000 steht für Millisekunden. Die Pfade müssen nur angepasst werden.
funktioniert zwar, ist jedoch...Unfug..
VBS-ist ein Zombie. und wird von Microsoft nur noch aus Kompatibilitätsgründen im System behalten. Es kann nicht mit Umlauten umgehen.
https://de.wikipedia.org/wiki/Visual_Basic_Script#Zuk%C3%BCnftige_Nutzung_von_VBScript
(versuche mal ein Programm zu starten, welches eine Datei mit umlauten öffnen soll)
Am einfachsten ist ein batchscript zu machen womit du beide startest. Wie es ezekyle erklärt hat.
Aber, du könntet euch das loggen von Anwendungstarts aktivieren und dann im task scheduler das so einstellen dass er bei diesem Log Eintrag diene zweite Anwendung Startet. Das wäre dann automatisch wenn immer die eine Anwendung aus irgendeinem Grund gestartet wird.
https://superuser.com/questions/745318/how-to-start-a-program-when-another-one-is-started
also das ist ja fast sinnbefreit ,
eine remote desktop verbindung baut man doch erst auf wenn die VPN garantiert steht .
oder hab ich jetzt ein an der marmel und du willst RDP machen wo die VPN noch gar nicht steht ?
du sollest also lieber gucken ob der VPN tunnel steht .
womit wir hier nix mit gleichzeitig haben , nicht mal nacheinader , sondern genau dann wenn programm 1 erfolg hat , kann man programm 2 einsetzen .
wildest rumstochern ist für mich eher ein sicherheits problem ... das ziel wäre dann schonmal bekannt und wenn nicht einer ganz dumm ist gibt er sich als die IP adresse aus .
ich ahne schon wie es im hotel zimmer in china abgeht .