1

私はこのスクリプトを持っていますが、ファイルのリストとマップされたドライブR:の存在を確認し、存在しない場合はマップするために拡張したいと思います。

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"
4

1 に答える 1

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
于 2012-05-09T23:29:22.377 に答える