I have a script that runs a nightly Opus config backup. Since installing DO13, I have received this error, which I suspect is connected to the script:
Here's the script:
Summary
Option Explicit
Dim ActionList, IntervalList
Set ActionList = DOpus.NewVector(1, "delete", "rename", "replace")
Set IntervalList = DOpus.NewVector(2, "minute(s)", "hour(s)", "day(s)", "month(s)")
Function OnInit(InitData)
InitData.name = "Settings Auto Backup"
InitData.desc = "Automatically creates backups of settings with specified interval in user defined folder."
InitData.copyright = "(C) 2014 TVB"
InitData.version = "1.1"
InitData.min_version = "11"
InitData.default_enable = False
InitData.config.Action = ActionList
InitData.config.Amount = 0
InitData.config.Copy = "all"
InitData.config.Description = ""
InitData.config.FilePath = ""
InitData.config.FileName = ""
InitData.config.Global = True
InitData.config.Interval = IntervalList
InitData.config.Number = 1
InitData.config.OnStartup = False
InitData.config.OnOpenLister = True
InitData.config.OnOpenTab = False
InitData.config.OnDisplayModeChange = True
InitData.config.OnListerUIChange = True
InitData.config.OnStyleSelected = True
InitData.config.OnCloseTab = False
InitData.config.OnCloseLister = True
InitData.config.OnShutdown = False
InitData.config.OnTimer = True
InitData.config.Password = ""
InitData.config.Remove = DOpus.NewVector
End Function
Function OnStartup(StartupData)
If Script.config.OnTimer Then
Do
Call DoSettingsBackup
DOpus.Delay(60 * 1000)
Loop
ElseIf Script.config.OnStartup Then
Call DoSettingsBackup
End If
End Function
Function OnOpenLister(OpenListerData)
If Script.config.OnOpenLister And Not Script.config.OnTimer Then
Call DoSettingsBackup
End If
End Function
Function OnOpenTab(OpenTabData)
If Script.config.OnOpenTab And Not Script.config.OnTimer Then
Call DoSettingsBackup
End If
End Function
Function OnDisplayModeChange(DisplayModeChangeData)
If Script.config.OnDisplayModeChange And Not Script.config.OnTimer Then
Call DoSettingsBackup
End If
End Function
Function OnListerUIChange(ListerUIChangeData)
If Script.config.OnListerUIChange And Not Script.config.OnTimer Then
Call DoSettingsBackup
End If
End Function
Function OnStyleSelected(StyleSelectedData)
If Script.config.OnStyleSelected And Not Script.config.OnTimer Then
Call DoSettingsBackup
End If
End Function
Function OnCloseTab(CloseTabData)
If Script.config.OnCloseTab And Not Script.config.OnTimer Then
Call DoSettingsBackup
End If
End Function
Function OnCloseLister(CloseListerData)
If Script.config.OnCloseLister And Not Script.config.OnTimer Then
Call DoSettingsBackup
End If
End Function
Function OnShutdown(ShutdownData)
If Script.config.OnShutdown And Not Script.config.OnTimer Then
Call DoSettingsBackup
End If
End Function
Sub DoSettingsBackup
Dim Action, Amount, File, FileDate, FileDateFormat, FileExt, FileList, FileName, FilePath, FilePathName, FilePathNameExt, Folder, FSO, i, Interval, Size
FilePath = DOpus.FSUtil.Resolve(Trim(Script.config.FilePath))
FileName = Trim(Script.config.FileName)
If FilePath <> "" And FileName <> "" Then
If Right(FilePath, 1) <> "\" Then
FilePath = FilePath & "\"
End If
FilePathName = FilePath & FileName
FileExt = "ocb"
FilePathNameExt = FilePath & FileName & "." & FileExt
Set FSO = CreateObject("Scripting.FileSystemObject")
If DOpus.FSUtil.Exists(FilePathNameExt) Then
Set File = FSO.GetFile(FilePathNameExt)
Action = ActionList(Script.config.Action + 1)
FileDate = File.DateLastModified
FileDateFormat = Year(FileDate) & "-" & Right("0" & Month(FileDate), 2) & "-" & Right("0" & Day(FileDate), 2) & "_" & Right("0" & Hour(FileDate), 2) & "." & Right("0" & Minute(FileDate), 2) & "." & Right("0" & Second(FileDate), 2)
Interval = IntervalList(Script.config.Interval + 1)
If Interval = IntervalList(1) Then
Interval = "n"
Else
Interval = Left(Interval, 1)
End If
If DateDiff(Interval, FileDate, Now) >= Script.config.Number Then
Call CommandList(Action, FileDateFormat, FileExt, FilePathName, FilePathNameExt)
Amount = Script.config.Amount
If Amount > 0 Then
Set FileList = DOpus.NewVector
Set Folder = FSO.GetFolder(FilePath)
i = 0
For Each File In Folder.Files
If InStr(1, File.Name, FileName & "_", 1) <> 0 And LCase(FSO.GetExtensionName(File.Name)) = FileExt Then
FileList(i) = File.Name
i = i + 1
End If
Next
Size = FileList.size
Amount = Size - Amount
If Size > Amount Then
For i = 0 To Amount
DOpus.NewCommand.RunCommand("Delete FILE FORCE RECYCLE QUIET """ & FilePath & FileList(i) & """")
Next
End If
End If
End If
Else
Call CommandList("", "", "", FilePathName, FilePathNameExt)
End If
End If
End Sub
Sub CommandList(Action, FileDateFormat, FileExt, FilePathName, FilePathNameExt)
Dim Args, Description, i, OpusCmd, Password, RemoveList, Size
Set OpusCmd = DOpus.NewCommand
If Action = "delete" Then
OpusCmd.RunCommand("Delete FILE FORCE RECYCLE QUIET """ & FilePathNameExt & """")
ElseIf Action = "rename" Then
OpusCmd.RunCommand("Rename AUTORENAME """ & FilePathNameExt & """ TO """ & FilePathName & "_" & FileDateFormat & "." & FileExt & """")
End If
Args = Replace(Script.config.Copy, " ", "")
If Args <> "" Then
Args = "BACKUP=" & Args & " "
Else
Args = "BACKUP "
End If
Description = Trim(Script.config.Description)
If Description <> "" Then
Description = "DESC=""" & Description & """ "
End If
Password = Trim(Script.config.Password)
If Password <> "" Then
Password = "PASSWORD=""" & Password & """ "
End If
OpusCmd.RunCommand("Prefs " & Args & Description & Password & "QUIET TO """ & FilePathName & """")
If DOpus.FSUtil.Exists(FilePathNameExt) Then
If Script.config.Global Then
OpusCmd.RunCommand("Copy FILE CREATEFOLDER=""Global Data"" ""/dopusglobaldata\Global Data\*.oxc"" TO """ & FilePathNameExt & """")
End If
Set RemoveList = Script.config.Remove
Size = RemoveList.size
If Size > 0 Then
For i = 0 To Size - 1
OpusCmd.RunCommand("Delete FORCE NORECYCLE QUIET """ & FilePathNameExt & "\" & RemoveList(i) & """")
Next
End If
End If
End Sub
Any ideas?