Тема: VBS: сложение времени
Хочу сделать скрипт для подсчета общей длительности видеофайлов в папке
Option Explicit
Dim oFileDetailsReader, sTmpStr, sValue, i, input, output, objFSO, WSHShell, Folder, File, param, SubFolder, str
input = "f:\видео\"
str=0
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set WSHShell = WScript.CreateObject("WScript.Shell")
RecursiveFolderScan input
MsgBox str
'Создаём процедуру рекурсивного обхода каталога
Sub RecursiveFolderScan(FolderPath)
'Получаем объектную модель текущего каталога
Set Folder = objFSO.GetFolder(FolderPath)
'Перебираем все файлы в текущем каталоге
For Each File in Folder.Files
Set oFileDetailsReader = New cFileDetailsReader
With oFileDetailsReader
.OpenFile File
param = .GetDetail(27)
str=str+param
End With
Next
'Перебираем все подкаталоги в каталоге
For Each SubFolder in Folder.SubFolders
RecursiveFolderScan(SubFolder.Path)
Next
Set WSHShell = Nothing
End Sub
Set WSHShell = Nothing
Class cFileDetailsReader
Private oFSO, oShellApp, oFolder3, oFolderItem
Private Sub Class_Initialize()
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oShellApp = CreateObject("Shell.Application")
End Sub
Sub OpenFile(FilePath)
With oFSO.GetFile(FilePath)
Set oFolder3 = oShellApp.NameSpace(.ParentFolder.Path)
Set oFolderItem = oFolder3.ParseName(.Name)
End With
End Sub
Function GetDetail(Index)
GetDetail = oFolder3.GetDetailsOf(oFolderItem,Index)
End Function
Function GetDetailName(Index)
GetDetailName = oFolder3.GetDetailsOf(0,Index)
End Function
End Class
но затык с сложением времени