2012-05-09 23 views
1

私はこのスクリプトを持っていますが、ファイルのリストとマップされたドライブRの存在を確認するためにこのスクリプトを展開したいと思います。VBSファイルのリストを確認してください

FileA.txt FileB.txt FileD.txt
FileE.txt FileF.dll FileG.dll

Const OverwriteExisting = TRUE 

Set objFSO = CreateObject("Scripting.FileSystemObject") 

Set objLocalFile = objFSO.GetFile("C:\SCRIPT\SCRIPTTEXT.txt") 
dtmLocalDate = objLocalFile.DateLastModified 

Set objServerFile = objFSO.GetFile("R:\SCRIPT\SCRIPTTEXT.txt") 
dtmServerDate = objServerFile.DateLastModified 

If dtmLocalDate < dtmServerDate Then 
    objFSO.CopyFile objServerFile.Path, objLocalFile.Path, OverwriteExisting 
End If 

「エラーであり、これをしない駆動されていない場合、スニペットは動作しません。ネットワーク接続は存在しません "が再マップされます。

> Set WSHNetwork = CreateObject("WScript.Network") 
> 
> WSHNetwork.RemoveNetworkDrive "R:","True","True" 
> 
> WSHNetwork.MapNetworkDrive "R:", "\\192.168.1.103\","True" 
+0

ソリューションがVBScriptであることが必要との直接比較をしませんか?この問題は、BATchファイルを使用して解決するほうがはるかに簡単であるようです。 –

答えて

1

は、マップのURL

on error resume next 
path = "\\192.168.1.103\SCRIPT\SCRIPTTEXT.txt" 
if objFSO.fileExist(path) 
    Set objServerFile = objFSO.GetFile(path) 
    dtmServerDate = objServerFile.DateLastModified 
    if dtmLocalDate < dtmServerDate Then 
    objFSO.CopyFile objServerFile.Path, objLocalFile.Path, OverwriteExisting 
    end if 
else 
    objFSO.CopyFile objServerFile.Path, objLocalFile.Path 
end if 
+0

これはどういたしまして、FileA.txt、FileB.txt FileD.txt、FileE.txt、FileF.dll、FileG.dll、.dll s 'が同じフォルダに入っていないかを調べることができます。 – icecurtain

+0

フォルダ内の空のファイルを削除するには、同じテクニックを使用します。http://stackoverflow.com/questions/10450639/how-can-i-make-script-for-recursive-downloading-all-empty-files – peter

関連する問題