Тема: VBS:Win XP ругается на CDate
Сделал себе скрипт для разбивки видеофайлов на куски
'сегментирование видео из командной строки с ffmpeg
input = "e:\Борджиа\" 'папка input
output= input&"segment\" 'папка segment
dlit="00:04:00"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set WSHShell = WScript.CreateObject("WScript.Shell")
If not objFSO.FolderExists(output) Then objFSO.CreateFolder output 'создаем output
RecursiveFolderScan input
'Создаём процедуру рекурсивного обхода каталога
Sub RecursiveFolderScan(FolderPath)
'Получаем объектную модель текущего каталога
Set Folder = objFSO.GetFolder(FolderPath)
'Перебираем все файлы в текущем каталоге
For Each File in Folder.Files
Name2 = objFSO.GetBaseName(File)
' проверяем на длительность
Set oFileDetailsReader = New cFileDetailsReader
With oFileDetailsReader
.OpenFile File
param = .GetDetail(27)
s1="00:00:00"
i=1
Do While CDate(param) > CDate(s1) 'на эту строку ругается
RetCode = WSHShell.Run ("""c:\ffmpeg\bin\ffmpeg.exe"" -i """ & File & """ -vcodec copy -map 0:0 -ss "& s1 &" -t "& dlit &" """&output&Name2&i&".avi",1,True) 'только видео
' складываем дату
s1 = DateDiff("s", 0, s1) + DateDiff("s", 0, dlit)
H = Int(s1/3600)
M1 = s1 - (H * 3600)
M = Int(M1/60)
S = M1 - (M * 60)
s1 = TimeSerial(H, M, S)
i=i+1
Loop
End With
Next
End Sub
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под Win 7 SP1 работает отлично, а Win XP SP3 ругается на CDate.
Что ей не хватает?




