You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

84 lines
2.4 KiB
Plaintext

Option Explicit
Dim wshshell,fso,i,Fnct
Dim strPath,strSystemFolder,strWinFolder,strTempFolder
'----------------------------- Objekte erzeugen --------------------------------
Set wshshell = CreateObjectSafely("WScript.Shell")
Set fso = CreateObjectSafely("Scripting.FileSystemObject")
Set Fnct = CreateObjectSafely("Install.Functions")
'--------------------------- Standardpfade -------------------------------------
strPath = GetCurrentPath()
strSystemFolder = fso.GetSpecialFolder(1) & "\"
strWinFolder = fso.GetSpecialFolder(0) & "\"
strTempFolder = fso.GetSpecialFolder(2) & "\"
'------------------------------ Main -------------------------------------------
Dim strFilename
strFilename = ExpandPath("%FOCKEDIR%","c:\Focke")
strFilename = strFilename & "\Parameter\BC9100_SID\BC9100_SID.pr6"
If Not fso.FileExists(strFilename) Then
Dim Dlg
Set Dlg = CreateObject("Install.MessageDlg")
Dlg.Caption = "End"
Call Dlg.SetLine(0, "File not found!")
Call Dlg.SetLine(1, strFilename)
Call Dlg.SetLine(2, "Execution will be terminated!")
Dlg.Show
WScript.Quit
End If
Dim strCmdFile
strCmdFile = ExpandPath("%SAR_DIR%","C:\SaveAndRestore")
strCmdFile = strCmdFile & "\TCatBoot.cmd"
Dim CmdLine
CmdLine = "c:\TWinCat\Plc\TCatPlcCtrl.exe """ & strFilename & """ /cmd " & strCmdFile
Call wshshell.Run(CmdLine,1,true)
WScript.Sleep(1000)
'------------------------------- Funktionen ------------------------------------
Function GetCurrentPath()
Dim l_strScriptName
Dim l_strTemp
l_strScriptName = WScript.ScriptFullName
l_strTemp = WScript.ScriptName
GetCurrentPath = Left(l_strScriptName, Len(l_strScriptName) - Len(l_strTemp))
End Function
Function ExpandPath(p_strEnvironment,p_strDefault)
Dim l_strTemp
l_strTemp = wshshell.ExpandEnvironmentStrings(p_strEnvironment)
If l_strTemp = p_strEnvironment Then
l_strTemp = p_strDefault
End If
ExpandPath = l_strTemp
End Function
'Hilfsfunktion zum Erzeugen von Objekten
'Ist die Erzeugung nicht m<>glich, wird das Skript beendet
Function CreateObjectSafely(p_strObject)
Dim i
i = 0
On Error Resume Next
Do
err.Clear
i = i+1
Set CreateObjectSafely = CreateObject(p_strObject)
WScript.Sleep 1000
Loop Until Err.Number = 0 OR i > 30
If Err.Number <> 0 Then
MsgBox "Unable to Create Object: " & p_strObject
WScript.Quit
End If
On Error Goto 0
End Function
'------------------------------ Sub -------------------------------------------