DIR-Funktion in VBS oder FileExists in Javascript mit Platzhalter
bearbeitet von
Das Problem ist, dass der eigentliche Directory Scan schnell geht (GetFolder(xyz).Files), aber das Abfragen des Dateinamens dazu führt, dass er ein File-Objekt für diesen Eintrag initialisiert. Und das DAUERT. Warum es bei Dir 10 Minuten dauert, ist mir nicht ganz klar; ich habe mir einen Ordner mit 150K Dateien angelegt und da dauerte es 15s, alle Dateinamen nach einem Muster zu durchsuchen. Liegt dein Ordner im Netzwerk?
Wenn Du das Scripting.FileSystemObject nutzen kannst, dann auch bestimmt das WScript.Shell Objekt, gelle?
Du kannst dich an diesem Snippet hier orientieren. Das ermittelt die gewünschten Dateinamen über einen DIR Befehl per Kommandozeile. Dieser Ablauf ist schnell. An Stelle von a* musst Du das gewünschte Suchmuster eintragen. Sollten Deine Dateinamen Leerstellen enthalten, musst Du auch noch Anführungszeichen drumherum setzen. Windows Kommandozeile eben.
~~~
set WshShell = WScript.CreateObject("WScript.Shell")
counter = 0
Set wx = WshShell.Exec("cmd.exe /c dir a* /b")
Do
line = wx.StdOut.ReadLine()
counter = counter + 1
Loop While Not wx.Stdout.atEndOfStream
WScript.Echo "Gezählt: " + cstr(counter)
~~~
_Rolf_