13KOLDUN
@13KOLDUN
Танцор с Бубном

VBScript. Резервное копирование файлов. поможите разобраться?

Доброго дня. Начал учить VBScript. Опытные люди посоветовали поставить перед собой определенную задачу и искать методы решения.
Идея в голове возникла такая:
Есть скрипт, которые хватает файлы с одного сервака, кладет их на другой, а тот с помощью SFTP осуществляет раздачу для пользователей. Разбив на этапы эту задачу потихоньку пишется код, не сказать, что ударными тэмпами, но все же. В поисках примеров применения FSO, наткнулся на вот такой пример:
Option Explicit

Const ForReading = 1, ForWriting = 2, ForAppending = 8

Dim MySource, MyTarget, MyZipName, MyHex, MyBinary, i
Dim oShell, oApp, oFolder, oCTF, oFile,DT,dateVal
Dim oFileSys
DT = Now
DateVal = Right("0" & Day(DT), 2) & "." & _
          Right("0" & Month(DT), 2) & "." & _
          Year(DT) & "_" & _         
          Right("0" & Hour(DT), 2) & "." & _
          Right("0" & Minute(DT), 2) & "." & _
          Right("0" & Second(DT), 2)
MySource = "E:\files"
MyTarget = "E:\logs\" & dateVal & "_Logs.zip"

MyHex = Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)

For i = 0 To UBound(MyHex)
MyBinary = MyBinary & Chr(MyHex(i))
Next

Set oShell = CreateObject("WScript.Shell")
Set oFileSys = CreateObject("Scripting.FileSystemObject")


Set oCTF = oFileSys.CreateTextFile(MyTarget, True)
oCTF.Write MyBinary
oCTF.Close
Set oCTF = Nothing

Set oApp = CreateObject("Shell.Application")

Set oFolder = oApp.NameSpace(MySource)
If Not oFolder Is Nothing Then
oApp.NameSpace(MyTarget).CopyHere oFolder.Items
End If

wScript.Sleep(5000)


Set oFile = Nothing
On Error Resume Next
Do While (oFile Is Nothing)

Set oFile = oFileSys.OpenTextFile(MyTarget, ForAppending, False)
If Err.number <> 0 then
Err.Clear
wScript.Sleep 3000
End If
Loop

Set oFile=Nothing
Set oFileSys=Nothing


Часть с добавлением даты\времени в имени файла, эт я уже добавил.
В виду пока еще недостатка знаний, не могу прочитать логику кода.
Стало интересно, как человек реализовал как раз такую же задачу. Вижу и массив, и что он к внешнему софту обращается, но вот по какой логике выполняется сценарий понять не могу.
Сорян братцы, если возможно примитивный вопрос. Гуглеж помогает понять обрывки кода, но не ход сценария.
  • Вопрос задан
  • 137 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы