Ok, so I've tried instead to grab the contents of the directory where Java gets installed to in order to find the newest version and I'm getting errors, is my error-trapping incorrect?

Code:
$LocalLogFolder = %SystemRoot% + '\GPOUpdates'
$JavaUpdates = '\\[server name]- Java Updates'
$LogFile = '\\[server name]- Java Updates\JavaUpdateResults.csv'
$Return=Chr(13)+Chr(10)
$date="@year@MonthNo@MDayNo"
$LogError = OPEN (5,$LogFile,5)
$LogText="@DATE,@TIME,@FULLNAME,@USERID,@COMMENT,@WKSTA,@IPADDRESS0,@ADDRESS,@LDOMAIN,@LSERVER,@PRODUCTTYPE,@BUILD,@CSD,@TICKS,"

SHELL '%COMSPEC% /e:1024 /c "dir /b /ad /o-n %ProgramFiles%\Java\ >> c:\JavaDirectory.txt"
if @error <> 0
? @error + ": " @serror
else
$ = OPEN (1, "c:\JavaDirectory.txt")
$BeforeJavaVersion = ReadLine(1)
$ = CLOSE (1)
ENDIF

$Version13 = KEYEXIST ("HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.3")
IF $Version13 = 1
$PatchedVersion = KEYEXIST ("HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.3.1_15")
IF $PatchedVersion = 0
RUN '$JavaUpdates\j2re-1_3_1_15-windows-i586.exe -s -a -s -f2$LocalLogFolder\JavaInstallV1.3.log'
ENDIF
ENDIF

$Version14 = KEYEXIST ("HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.4")
IF $Version14 = 1
$PatchedVersion = KEYEXIST ("HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.4.2_07")
IF $PatchedVersion = 0
RUN '$JavaUpdates\j2re-1_4_2_07-windows-i586-p.exe /s /v"/qn IEXPLORER=1 REBOOT=Suppress JAVAUPDATE=0 WEBSTARTICON=0 /L $LocalLogFolder\JavaInstallV1.4.log"'
? "Running update..."
ENDIF
ENDIF

$Version15 = KEYEXIST ("HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.5")
IF $Version15 = 1
$PatchedVersion = KeyExist ("HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.5.0_01")
IF $PatchedVersion = 0
RUN '$JavaUpdates\jre-1_5_0_01-windows-i586-p.exe /s /v"/qn IEXPLORER=1 REBOOT=Suppress JAVAUPDATE=0 WEBSTARTICON=0 /L $LocalLogFolder\JavaInstallV1.5.log"'
ENDIF
ENDIF

IF NOT $Version13 and NOT $Version14 and NOT $version15
RUN '$JavaUpdates\jre-1_5_0_01-windows-i586-p.exe /s /v"/qn IEXPLORER=1 REBOOT=Suppress JAVAUPDATE=0 WEBSTARTICON=0 /L $LocalLogFolder\JavaInstallV1.5.log"'
ENDIF

SHELL '%COMSPEC% /e:1024 /c "dir /b /ad /o-n %ProgramFiles%\Java\ >> c:\JavaDirectory.txt"
$ = OPEN (2, "c:\JavaDirectory.txt")
$AfterJavaVersion = ReadLine(2)
$ = CLOSE (2)

If $LogError=0
$ = WRITELINE(5,$LogText+$BeforeJavaVersion+","+$AfterJavaVersion+$Return)
EndIf
$ = CLOSE(5)

sleep 5

Exit



I keep getting error messages about line 22 [_3_1_15]. I tried to cut and paste the code into a different script and the $Version13 runs fine when it's by itself...


Edited by thepip3r (2005-04-08 05:34 PM)