ich möchte von einem Programm aus einen Befehl absetzen (dir), ohne dass ein Kommandzeilenfenster aufgeht. Gibt es da eine Möglichkeit?
Konkret: Ich rufe „dir > C:\dir.txt“ auf, leite also die Ausgabe des Befehls in eine Datei um. Danach ist Ende der Ausführung, also die Kommandozeile geht kurz auf und gleich wieder zu, das stört mich.
Eigentlich möchte ich nur die Festplatten-ID abfragen. Der einzige mir bekannte Weg ist der, in der Ausgabe des dir-Befehls nachzuschauen. Kennt jemand einen anderen Weg (z.B. per Registry oder so)?
Option Explicit
Dim MyFSO,Text, Datei
Set MyFSO = CreateObject("Scripting.FileSystemObject")
ScanDir("C:\TEMP")
Set Datei = MyFSO.CreateTextFile("c:\Direktory.txt", True)
Datei.WriteLine(Text)
Datei.Close
Sub ScanDir(ScanPfad)
Dim PathObject, FileObject, FileNow, SubFolders, SubFoldersNow
Set PathObject=MyFSO.getFolder(ScanPfad)
Set FileObject=PathObject.Files
For Each FileNow In FileObject
Text = Text + FileNow + VbCrLf
Next
Set SubFolders=PathObject.SubFolders
For Each SubFoldersNow in SubFolders
Text = Text + SubFoldersNow.ParentFolder+"\"+ SubFoldersNow.Name + VbCrLf
Next
End Sub