Vbs - Variable als Parameter an externes Programm übergeben und Rückgabewert in Variable schreiben
Hallo,
ich habe ein vbs-Script, welches alle Dateien eines Verzeichnisse in ein Array schreibt. Mittels eines kleinen Tools kann ich Exif-Daten einer Datei auslesen.
Ich gebe also den interessierenden Wert als Parameter mit und dazu den Dateinamen als String:
Danach schreib ich den Dateinamen und den ermittelten Exif-String in das Array.
Wie übergebe ich also an das externe Tool und wie schreibe ich den zurückgegebenen String in eine Variable?
Gruß
Torsten
ich habe ein vbs-Script, welches alle Dateien eines Verzeichnisse in ein Array schreibt. Mittels eines kleinen Tools kann ich Exif-Daten einer Datei auslesen.
Ich gebe also den interessierenden Wert als Parameter mit und dazu den Dateinamen als String:
exiftool.exe -SuchParameter [Dateiname]
Wie übergebe ich also an das externe Tool und wie schreibe ich den zurückgegebenen String in eine Variable?
Gruß
Torsten
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 270600
Url: https://administrator.de/forum/vbs-variable-als-parameter-an-externes-programm-uebergeben-und-rueckgabewert-in-variable-schreiben-270600.html
Ausgedruckt am: 22.12.2024 um 19:12 Uhr
4 Kommentare
Neuester Kommentar
Hallo Torsten,
hier ein kleines Beipspiel wie man den StdOut eines Konsolentools auslesen kann:
Grüße Uwe
hier ein kleines Beipspiel wie man den StdOut eines Konsolentools auslesen kann:
Dim objShell, oExec, out
Set objShell = CreateObject("Wscript.Shell")
'Befehl ausführen
Set oExec = objShell.Exec("cmd /c ping -n 1 localhost")
'Warte darauf das der Befehl beendet wurde
Do While oExec.Status = 0
WScript.Sleep 100
Loop
' StdOut auslesen
out = ""
Do While Not oExec.StdOut.AtEndOfStream
out = out & oExec.StdOut.ReadAll
Loop
' Zum Test: Ausgabe anzeigen lassen:
msgbox out
Wenn es in der ersten Zeile der Ausgabe steht und die Ausgabe mehrere Zeilen hat ...
Kommt halt drauf an wie die Zeile aussieht ... Du machst es uns einfacher indem du uns einfach die exakte Ausgabe deines Befehls hier postest
Kommt halt drauf an wie die Zeile aussieht ... Du machst es uns einfacher indem du uns einfach die exakte Ausgabe deines Befehls hier postest
'..... wie oben
arrLines = Split(out,vbNewLine)
var = Trim(Split(arrLines(0),":",2,1)(1))
MsgBox var