1 (изменено: griha09, 2016-03-08 17:29:20)

Тема: VBS: обработка EXIF-тегов

сделал скрипт для обработки EXIF-тегов в фотках. Конкретно этот скрипт для вставки названия папки, в которой лежат фотки, в EXIF-тег "Производитель". Все работает, но с папками имеющими пробел в пути не работает. При этом из командной строки прекрасно обработывает, например
exiftool.exe -Make="Танковый музей в Кубинке" *.jpg

Как исправить?


input = "f:\99\"
exiftool="c:\Install\Graphics\exiftool.exe"


Set objFSO = CreateObject("Scripting.FileSystemObject")
Set WSHShell = WScript.CreateObject("WScript.Shell")

RecursiveFolderScan input
  MsgBox "ВСЕ!"
  Set objFSO = Nothing
WScript.Quit


'Создаём процедуру рекурсивного обхода каталога
Sub RecursiveFolderScan(FolderPath)
    'Получаем объектную модель текущего каталога
    Set Folder = objFSO.GetFolder(FolderPath)
 	
    'Перебираем все файлы в текущем каталоге
    For Each File in Folder.Files
	NameFile = objFSO.GetBaseName(File)
	put = objFSO.BuildPath(Folder, NameFile&".jpg_original") 
	
            If (LCase(Right(File.Name, 4)) = ".jpg") Or (LCase(Right(File.Name, 5)) = ".jpeg") Then
		
WSHShell.Run """" & exiftool & """ -Make="""""&Folder.Name&""""" " & File&"", 2, True
 
   If objFSO.FileExists(put) Then   objFSO.DeleteFile put, 1 

   End if
    Next
 
    'Перебираем все подкаталоги в каталоге
   For Each SubFolder in Folder.SubFolders
        RecursiveFolderScan(SubFolder.Path)
    Next
End Sub
 

2

Re: VBS: обработка EXIF-тегов

Я ж показывал, как фильтровать. Ладно, лень повторяться...

WSHShell.Run """" & exiftool & """ -Make=""" & Folder.Name & """ """ & File & """", 2, True