Войти

Показать полную графическую версию : VBS. Исключить из копирования определенные файлы.


serixxxo
19-05-2014, 10:20
Здравствуйте, вот скрипт копирования всех файлов из папки:

Dir2 = "Ваш Путь:\"

set fso=createobject("scripting.filesystemobject")
set WshShell = WScript.CreateObject("WScript.Shell")
Dir1 = WshShell.ExpandEnvironmentStrings("%USERPROFILE%") & "\AppData\...\Папка"
Set Files = FSO.GetFolder (Dir1).Files
For Each f In Files
FSO.CopyFile f, (Dir2), True
Next


В папке много файлов, 2 из которых не копируются, так как заняты приложением и при копировании выдаётся ошибка. Имя этих файлов постоянное. Подскажите как исключить эти 2 файла из копирования.

Iska
19-05-2014, 14:59
Для двух можно просто:
If StrComp(f.Name, "bla-bla-bla.ext", vbTextCompare) = 0 Or _
StrComp(f.Name, "bla-bla-bla2.ext", vbTextCompare) = 0 Then

' Exclude. Nothing to do.
Else
FSO.CopyFile f.Path, Dir2, True
End If

megaloman
20-05-2014, 11:59
Перед FSO.CopyFile f, (Dir2), True поставить On Error Resume Next
При этом не надо думать о именах файлов
При желании можно выводить куда-нибудь имена нескопированных файлов
If Err.Number <> 0 Then .........




© OSzone.net 2001-2012