run external in vbscript
Mit Hilfe von vbscript können ausführbare Dateien z.B. im Hintergrund gestartet werden.
Folgender Beispiel-Quellcode startet die Eingabeaufforderung aus einer VBScript-Datei
Quellcode:
Set wshshell = WScript.CreateObject ("wscript.shell") wshshell.run "c:\Windows\system32\cmd.exe", 6, True set wshshell = nothing
Parameter
der Parameter 6: Minimiert das Fenster
0: versteckt das Fenster und aktiviert ein anderes
1: aktiviert und zeigt ein Fenster
2: aktiviert und minimiert das Fenster
3: aktiviert und maximiert das Fenster
4: zeigt das Fenster in seiner letzen Position, das aktive Fenster bleibt aktiv
5: zeigt das Fenster in seiner letzen grösse und Position
6: minimiert das Fenster und aktiviert ein anderes
7: minimiert das Fenster, das aktive Fenster bleibt aktiv
8: zeigt das Fenster in seiner letzen Position, das aktive Fenster bleibt aktiv
9: stellt ein minimiertes Fenster wieder in seinen ursprünglichen Zustand
10: setzt das Fenster gleich dem Programm
True: Script wartet, bis der Task beendet wird, False: Script läuft weiter
Optional kann der Pfad für das Ausführen des externen Programmes festgelegt werden:
wshshell.currentdirectory="c:\temp"
(der Befehl muss natürlich vor wshshell.run eingefügt werden
{{percentage}} % positiv
DANKE für deine Bewertung!
Fragen / Kommentare
(sortiert nach Bewertung / Datum) [alle Kommentare(neueste zuerst)]
User: Vaddy kann man auch ein Zeitparameter eingeben z.B. Mo-Fr 8.00 und wenndann noch bestimmet Tage (Feiertage) ausgeblendet werden können wär das ein Traum
User: WillyB Meine Zeile wshshell.run "c:\LinuxUtils\gawk.exe -f sdf_comp_details.awk parts.txt > parts3.txt",, True läuft, schreibt aber nichts in parts3.txt ==> warum? c:\LinuxUtils\gawk.exe -f sdf_comp_details.awk parts.txt > parts3.txt direkt im cmd-Fenster läuft tadellos.
User: mairdo ich habe folgenden Aufruf: s = CreateObject("Wscript.Shell").Exec(im_command & " " & im_ID).StdOut.ReadAll Nervig ist nur dass das DOS Fenster bei jeden Aufruf hoch Pop. Kann man das verhindert?
User: wagria Wenn ich ein Programm ausfren mhte, wo ich erst den Laufwerksbuchstaben ermitteln muss, wie lautet dann die Syntax( statt dem C ermittel ich z.B. den Laufwerksbuchstaben D)? wshshell.run "c:\Windows\system32\cmd.exe", 6, True
User: Bernd Franzen Wie muss ich denn dieses Skript verändern, um eine laufende Applikation zu finden und zu ihr zu wechseln?
User: hiddenAlpha der Dritte Parameter (im Beispiel \"True\") gibt an ob das Script waten soll, bis das Programm zu ende ist (True), oder ob gleich mit dem Code weitergefahren werden soll (false).
stimmt
Beitrag erstellt von anonym