2010-05-18 14 views
0

Я действительно не знаю, что не так прямо здесь. Я пытаюсь создать vbscript, который в основном проверяет два папки для своих файлов и сравнивает атрибут DateLastModified для каждого, а затем копирует исходные файлы в целевую папку, если DateLastModified исходного файла является более новым, чем существующий.Vbscript - объект, требуемый для DateLastModified

У меня есть этот код:

Dim strSourceFolder, strDestFolder 
Dim fso, objFolder, colFiles 

strSourceFolder = "c:\users\user\desktop\Source\" 
strDestFolder = "c:\users\user\desktop\Dest\" 

Set fso = CreateObject("Scripting.FileSystemObject") 
Set objFolder = fso.GetFolder(strSourceFolder) 
Set colFiles = objFolder.Files 

For each objFile in colFiles 
    Dim DateModified 
    DateModified = objFile.DateLastModified 
    ReplaceIfNewer objFile, DateModified, strSourceFolder, strDestFolder 
Next 

Sub ReplaceIfNewer (sourceFile, DateModified, SourceFolder, DestFolder) 

    Const OVERWRITE_EXISTING = True 
    Dim fso, objFolder, colFiles, sourceFileName, destFileName 
    Dim DestDateModified, objDestFile 

    Set fso = CreateObject("Scripting.FileSystemObject") 

    sourceFileName = fso.GetFileName(sourceFile) 
    destFileName = DestFolder & sourceFileName 

    if fso.FileExists(destFileName) Then  
     objDestFile = fso.GetFile(destFileName)  
     DestDateModified = objDestFile.DateLastModified 

     msgbox "File last modified: " & DateModified 
     msgbox "New file last modified: " & DestDateModified 

    End if  


End Sub 

И я получаю ошибку: На линии 34, требуется Char 3 «Объект: 'objDestFile' Но objDestFile создан

ответ

2

Вы должны использовать множество? например:

Set objDestFile = fso.GetFile(destFileName) 
+0

Omg ... спасибо, я думаю, что у меня было слишком мало кофе утром :) –

+0

я теперь слышу я главный !!! На моей второй чашке !!! –

Смежные вопросы