Hi, Alter.
Hier ein einfacher Weg, CAB-Dateien zu untersuchen.
Extract.VBS
----------------------------------------------
set MyShell = CreateObject("wscript.shell")
Set MyFiles = CreateObject("Scripting.FileSystemObject")
cabpfad=inputbox("Pfad der CAB-Dateien eingeben: ")
if cabpfad="" then wscript.quit
set MyOrdner=MyFiles.GetFolder(cabpfad)
modus=myshell.popup("Kennen Sie den Namen/Dateimaske der zu entpackenden Datei(en)?",,"",3)
if modus=2 then wscript.quit
if modus=6 then
FileKnown
else
FileUnknown
FileKnown
end if
Sub FileKnown()
set batch=MyFiles.CreateTextFile("c:\\cablist.bat")
datei=inputbox("Dateiname oder Dateimaske eingeben: ")
if datei="" then wscript.quit
zielpfad=inputbox("Zielpfad der entpackten Dateien eingeben:")
befehl="for %%n in (" & cabpfad & "\\*.cab) do extract /Y /L " & zielpfad & " %%n " & datei
batch.Writeline befehl
\'befehl="exit"
\'batch.Writeline befehl
batch.close
myshell.Run ("command.com /c c:\\cablist.bat"),2,TRUE
set del=MyFiles.Getfile("c:\\cablist.bat")
del.delete
End Sub
Sub FileUnknown()
set batch=MyFiles.CreateTextFile("c:\\cablist.bat")
datei=inputbox("Geben Sie eine passende Dateimaske ein oder NICHTS, wenn Sie in der kompletten Liste suchen wollen:")
befehl="for %%n in (" & cabpfad & "\\*.cab) do extract /d %%n " & datei & " >> c:\\cablist.lst"
batch.Writeline befehl
befehl="type c:\\cablist.lst | find /v /i " & chr(34) & "Microsoft" & chr(34) & " > c:\\cablist.lst"
batch.Writeline befehl
befehl="type c:\\cablist.lst | find /v /i " & chr(34) & "Matching" & chr(34) & " > c:\\cablist.lst"
batch.Writeline befehl
\'befehl="exit"
\'batch.Writeline befehl
batch.close
myshell.Run ("command.com /c c:\\cablist.bat"),2,TRUE
myshell.Run ("wordpad.exe c:\\cablist.lst"),,TRUE
set del=MyFiles.Getfile("c:\\cablist.lst")
del.delete
End Sub
-----------------------
Hab ich von PC-Welt.
CU Kolti
