Dim sUpdateUrl
Dim sDomain
Dim sDomainPassword
Dim objHttp
Dim blnExit
sUpdateUrl = "http://www.vroute.de/index.php/api/dyndns/updater/"
Dim sCurrentTime
Dim sLastTime
Dim iTimeDifference
Dim iMinDifference
' Aendern Sie KEINESFALLS diesen Wert da bei JEDEM Update GLEICHZEITIG ein DEAKTIVIERUNGS-Befehl
' ausgefuehrt wird welcher Ihren Host DEAKTIVIERT wenn Sie die Update-Zeit unterschreiten!
' Nach einer DEAKTIVIERUNG ist Ihr Host nicht mehr fuer den DNS-Service nutzbar!
' Eine Reaktivierung kann nur durch den Support gegen eine Bearbeitungsgebuehr erfolgen!
iMinDifference = 900
Dim oFileObject
Dim oTextObject
Dim sDebugMessage
Dim sReadLine
Set oFileObject = WScript.CreateObject("Scripting.FileSystemObject")
If oFileObject.FileExists("pid.ini") Then
'Alles okay, Pid-File existiert
Else
MsgBox "Diese Datei darf nicht direkt aufgerufen werden", 0, "DNS Updater"
WScript.Quit 1
End If
If oFileObject.FileExists("settings.ini") Then
Set oTextObject = oFileObject.OpenTextFile("settings.ini", 1)
Do Until oTextObject.AtEndOfStream
sReadLine = oTextObject.ReadLine
If InStr(sReadLine, "domainpassword") Then
sDomainPassword = Replace(sReadLine, "domainpassword=", "")
sDebugMessage = "Passwort gefunden: " & sDomainPassword
'MsgBox sDebugMessage, 0, "DNS Updater"
ElseIf InStr(sReadLine, "domain") Then
sDomain = Replace(sReadLine, "domain=", "")
sDebugMessage = "Domain gefunden: " & sDomain
'MsgBox sDebugMessage, 0, "DNS Updater"
End If
Loop
Else
MsgBox "Update abgebrochen, Datei settings.ini nicht gefunden", 0, "DNS Updater"
WScript.Quit 1
End If
Set objHttp = WScript.CreateObject("WinHttp.WinHttpRequest.5.1")
If objHttp Is Nothing Then Set objHttp = WScript.CreateObject("WinHttp.WinHttpRequest")
objHttp.Option(4) = 256 + 512 + 4096 + 8192
objHttp.SetTimeouts 0, 5000, 10000, 10000
Do
sCurrentTime = Now()
If oFileObject.FileExists("last.ini") Then
Set oTextObject = oFileObject.OpenTextFile("last.ini", 1)
Do Until oTextObject.AtEndOfStream
sLastTime = oTextObject.ReadLine
Loop
iTimeDifference = DateDiff("s", sLastTime, sCurrentTime)
Else
iTimeDifference = 9000
End If
If iTimeDifference >= iMinDifference Then
CreateObject("Scripting.FileSystemObject").CreateTextFile("last.ini").Write sCurrentTime
objHttp.Open "GET", sUpdateUrl & "?domain=" & sDomain & "&domainpassword=" &sDomainPassword, FALSE
objHttp.setRequestHeader "User-Agent", WScript.ScriptName
objHttp.Send ""
If Not (objHttp.statusText = "OK") Then
'WScript.Echo "Error: " & objHttp.statusText
MsgBox "Update abgebrochen, Fehler bei Aktualisierung"
WScript.Quit 1
Else
If Not (objHttp.ResponseText = "updated") Then
MsgBox "Fehler beim Update, Server meldet: " & objHttp.ResponseText, 0, "DNS Updater Fehler"
WScript.Quit 1
End If
End If
Else
'MsgBox iTimeDifference
End If
'60 * 1000 = 1 Minute (60000)
'900000 = 15 Minuten
WScript.Sleep 60000
Loop