Batch mit VBS erstellen

EarthQuaker

Lieutenant
Registriert
Apr. 2007
Beiträge
703
Hallo Ihr Lieben,

habe heute mal wieder eien frage zur Batch Programmierung.

Und zwar will ich eine Batch erstellen welche sich Später ausführen lässt.

Erstmal anbei mein VBS Script welcher auch Funktioniert

Code:
Set FSO = CreateObject("Scripting.FileSystemObject")
Set MyFile = FSO.CreateTextFile("Batch.bat", TRUE)

Set objFSO = CreateObject("Scripting.FileSystemObject")
objStartFolder1 = "Google"	'Der Pfad für die gelisteten Dateien
objStartFolder2 = "Samsung"	'Der Pfad für die gelisteten Dateien

Set objFolder1 = objFSO.GetFolder(objStartFolder1)
Wscript.Echo objFolder1.Path

Set objFolder2 = objFSO.GetFolder(objStartFolder2)
Wscript.Echo objFolder2.Path

Set colFiles1 = objFolder1.Files
Set colFiles2 = objFolder2.Files

For Each objFile in colFiles1
	MyFile.WriteLine ("adb install -r Google/" + objFile.Name)
	Next
	For Each objFile in colFiles2
	MyFile.WriteLine ("adb install -r Samsung/" + objFile.Name)
	Next
MyFile.Close


Nun zu meiner Frage an euch. Vllt. kann man dieses ja soweit Kürzen das es immernoch Funktioniert und oder Sogar sowas wie Filter einbauen.

Sowie das immer ein Popup erstellt wird nervt mich :)


Also wer will und kann Helfen?

Danke
 
Hallo EarthQuaker,

ich hab dein Script mal etwas verkürzt. Alle Unterordner, die in dem Ordner lagern in dem sich dieses Script befindet werden jetzt nach Dateien durchsucht. Falls das Script fündig wird, schreibt es die Ergebnisse mit entsprechendem Befehl in die Batch.bat.

Code:
Set FSO = CreateObject("Scripting.FileSystemObject")
Set MyFile = FSO.CreateTextFile("Batch.bat", TRUE)
Set objFolder = FSO.GetFolder(".")

For Each folders in objFolder.SubFolders
	For Each objFile in folders.Files
		MyFile.WriteLine ("adb install -r " & folders.Name & "/" + objFile.Name)
	Next
Next

Das Popup welches du erwähnt hast, wird durch Wscript.Echo ausgelöst und ist nicht für die Ausführung erforderlich, kann also getrost entfernt werden.

Falls das Script nur in bestimmten Ordnern arbeiten soll, wäre es sinnvoll ein Array mit den Namen zu definieren und dieses per For Each durchzugehen.
 
Zuletzt bearbeitet:
Okay danke ich werde es gleich einmal testen und Anschauen :)

PS. Funktioniert wunderbar.


Vielen Dank
 
Zuletzt bearbeitet:
Zurück
Oben