cleaned, unistallscript old java versions, testing

This commit is contained in:
Dennis Trinks 2013-12-10 14:27:11 +01:00
parent 709e37b2a6
commit 14bf43636c
23 changed files with 436 additions and 623 deletions

View File

@ -0,0 +1,392 @@
'***************************************************************************************
'Java removal script.
'Version: 3.0
'Description: Removes specified Java versions based on command line parameters.
' !!!!!!USE AT YOUR OWN RISK!!!!!!!
'2011.03.09 - 2.0 - First version. Assumes %SYSTEMDRIVE%\Logs exists.
'2011.03.23 - 2.1 - Fixes issue running in 32bit SCCM under 64bit Windows.
'2011.03.30 - 2.2 - Adds array of versions to keep.
'2011.04.24 - 3.0 - Added command line parameters. Still doesn't make the log directory!
'
'http://www.itninja.com/question/silent-uninstall-java-all-versions
'***************************************************************************************
'-----------------------------Begin Main Script--------------------------------
Option Explicit
'If help is specified on the command line, show it and quit.
If WScript.Arguments.Named.Count < 1 Or WScript.Arguments.Named.Exists("help") Or WScript.Arguments.Named.Exists("?") Then
PrintHelp()
WScript.Quit(0)
End If
Dim aryVersions, aryVersionsx86Onx64
Dim bolKeepJava
Dim colNamedArguments, colProcesses
Dim objWMIService, objProcessor, objProcess
Dim strArgument, strLogFilePath
'Set default command line parameters.
'The script defaults to removing all versions of Java without leaving uninstall logs.
bolKeepJava = 1
strLogFilePath = ""
aryVersions = Array()
aryVersionsx86Onx64 = Array()
'Start script logging.
WScript.Echo "**********************************"
WScript.Echo "Java uninstall script started at " & Now()
'Parse command line parameters.
If WScript.Arguments.Named.Count > 0 Then
Set colNamedArguments = WScript.Arguments.Named
For Each strArgument in colNamedArguments
Select Case LCase(strArgument)
Case "keeponly"
Case "removeonly"
bolKeepJava = 0
Case "logfilepath"
strLogFilePath = colNamedArguments.Item(strArgument)
Case "versions"
aryVersions = Split(colNamedArguments.Item(strArgument), ";", -1, 1)
Case "versionsx86onx64"
aryVersionsx86Onx64 = Split(colNamedArguments.Item(strArgument), ";", -1, 1)
Case Else
WScript.Echo vbCrLf & "Unknown switch: " & strArgument & "."
WScript.Echo vbCrLf & "Java uninstall script finished at " & Now()
WScript.Echo "**********************************" & vbCrLf
PrintHelp()
WScript.Quit(2)
End Select
Next
End If
'Output the parameters the script was run with.
WScript.Echo vbCrLf & "----------------------------------"
WScript.Echo "Script parameters:"
If bolKeepJava Then
WScript.Echo "Specified Java versions found will be kept. Other versions will be removed."
Else
WScript.Echo "Specified Java versions found will be removed. Other versions will be kept."
End If
'This check is important. It will default the versions array if no versions were specified. Without this the whole thing falls apart.
If (Ubound(aryVersions) < 0 ) Then
aryVersions = Array("FooBar")
WScript.Echo "No native Java versions specified on the command line."
Else
WScript.Echo "Native Java versions specified on the command line."
End If
'If no non-native versions are specified set the non-native array to the native array.
If (Ubound(aryVersionsx86Onx64) < 0) Then
aryVersionsx86Onx64 = aryVersions
WScript.Echo "No x86 Java versions for x64 systems specified on the command line." & vbCrLf & "Using specified native verions for x86 also."
Else
WScript.Echo "x86 Java versions for x64 systems specified on the command line."
End If
If strLogFilePath = "" Or IsNull(strLogFilePath) Then
WScript.Echo "Uninstall logfile path is empty. Uninstall logs will not be created."
Else
'If the log file path does not end in a \ put one on there!
If (StrComp(Right(strLogFilePath,1), "\") <> 0) Then
strLogFilePath = strLogFilePath & "\"
End If
WScript.Echo "Uninstall log file path: " & strLogFilePath & "."
End If
WScript.Echo "----------------------------------"
'Get a WMI Service object.
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate, (Debug)}\\.\root\cimv2")
'Get processor object. objProcessor.AddressWidth will give us bitness. Check objProcessor.AddressWidth = "32" or "64"
Set objProcessor = GetObject("winmgmts:\\.\root\cimv2:Win32_Processor='cpu0'")
'Kill processes that might prevent installs or uninstalls.
Set colProcesses = objWMIService.ExecQuery("Select Name from Win32_Process Where Name = 'jqs.exe' OR Name = 'jusched.exe' OR Name = 'jucheck.exe' OR Name = 'jp2launcher.exe' OR Name = 'java.exe' OR Name = 'javaws.exe' OR Name = 'javaw.exe'", "WQL", 48)
WScript.Echo vbCrLf & "----------------------------------"
WScript.Echo "Checking for problematic processes."
'Set this to look for errors that aren't fatal when killing processes.
On Error Resume Next
'Cycle through found problematic processes and kill them.
For Each objProcess in colProcesses
WScript.Echo "Found process " & objProcess.Name & "."
objProcess.Terminate()
Select Case Err.Number
Case 0
WScript.Echo "Killed process " & objProcess.Name & "."
Err.Clear
Case -2147217406
WScript.Echo "Process " & objProcess.Name & " already closed."
Err.Clear
Case Else
WScript.Echo "Could not kill process " & objProcess.Name & "! Aborting Script!"
WScript.Echo "Error Number: " & Err.Number
WScript.Echo "Error Description: " & Err.Description
WScript.Echo "Finished problematic process check."
WScript.Echo "----------------------------------"
WScript.Echo vbCrLf & "Java uninstall script finished at " & Now()
WScript.Echo "**********************************" & vbCrLf
WScript.Quit(1)
End Select
Next
'Resume normal error handling.
On Error Goto 0
WScript.Echo "Finished problematic process check."
WScript.Echo "----------------------------------"
'This call will remove x64 versions on a x64 system and x86 versions on a x86 system.
RemoveJava "Software\Microsoft\Windows\CurrentVersion\Uninstall\", aryVersions, strLogFilePath, objProcessor
'This call will remove x86 versions on a x64 system.
If (objProcessor.AddressWidth = "64") Then
RemoveJava "Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\", aryVersionsx86Onx64, strLogFilePath, objProcessor
End If
WScript.Echo vbCrLf & "Java uninstall script finished at " & Now()
WScript.Echo "**********************************" & vbCrLf
'-------------------------------End Main Script--------------------------------
'---------------------------------Functions------------------------------------
Function RemoveJava(strRegistryPath, aryVersions, strLogFilePath, objProcessor)
Dim objWSHShell, objRegistry, objWbemContext, objSWbemLocator, objSWbemServices
Dim aryUninstallKeys
Dim strUninstallKey, strDisplayName, strUninstallString, strVersion
Dim intUninstallReturnCode
Set objWSHShell = CreateObject("WScript.Shell")
'The following SWbem setup allows a script running in a x86 context, such as under the SCCM client, on a x64 system
'to access the full x64 registry. Without this the actual registry paths will be transparently redirected to the
'Wow6432Node branch for every registry call to HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall.
'Essentially this transparent redirection would hide 64bit Java runtimes from a script running in 32bit mode on a 64bit OS.
'Provides the bitness context parameters for registry calls.
Set objWbemContext = CreateObject("WbemScripting.SWbemNamedValueSet")
objWbemContext.Add "__ProviderArchitecture", objProcessor.AddressWidth
objWbemContext.Add "__RequiredArchitecture", true
'Create SWbemLocator to connect to WMI
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
'Actually connect to the WMI service using the SWbemLocator and the SWbemContext parameters.
Set objSWbemServices = objSWbemLocator.ConnectServer(".","root\default","","",,,,objWbemContext)
'Get the Standard Registry Provider from WMI... finally.
Set objRegistry = objSWbemServices.Get("StdRegProv")
'Find the Java uninstallers hiding in the uninstall key. &H80000002 = HKEY_LOCAL_MACHINE for this function call.
objRegistry.EnumKey &H80000002, strRegistryPath, aryUninstallKeys
'Enable VBS' poor excuse for error handling...
On Error Resume Next
For Each strUninstallKey In aryUninstallKeys
'These must be reset in case the GetStringValue fails to return a value. This way we don't keep values for other pieces of software.
strDisplayName = ""
strUninstallString = ""
intUninstallReturnCode = ""
'DisplayName should always be a REG_SZ
objRegistry.GetStringValue &H80000002, strRegistryPath & strUninstallKey, "DisplayName", strDisplayName
'Just in case GetStringValue doesn't retrieve what we want.
If Err.Number <> 0 Then
Wscript.Echo vbCrLf & "----------------------------------"
WScript.Echo "Could not retrieve DisplayName at " & strRegistryPath & strUninstallKey & "!"
WScript.Echo "Error Number: " & Err.Number
WScript.Echo "Error Description: " & Err.Description
Wscript.Echo "----------------------------------"
strDisplayName = ""
Err.Clear
End If
'In English: If the DisplayName contains either Java OR the DisplayName contains J2SE Runtime Environment
'AND if the DisplayName does not contain Development AND if the DisplayName does not contain JavaDB
'AND if the DisplayName does not contain Web Start
'AND if the DisplayName does not contain SAS
'AND if the DisplayName does not contain Java Auto Update then do the if block.
'Fun, eh?
'You could remove the Web Start line to get rid of JWS but the uninstall string If block would have to account for that. It currently doesn't.
If ((Instr(1, strDisplayName, "Java", 1) OR (Instr(1, strDisplayName, "J2SE Runtime Environment", 1))) _
AND ((Instr(1, strDisplayName, "Development", 1) + Instr(1, strDisplayName, "JavaDB", 1)) < 1) _
AND (Instr(1, strDisplayName, "Web Start", 1) < 1) _
AND (Instr(1, strDisplayName, "SAS", 1) < 1) _
AND (Instr(1, strDisplayName, "Java Auto Update", 1) < 1)) Then
Wscript.Echo vbCrLf & "----------------------------------"
WScript.Echo "Found version: " & strDisplayName
WScript.Echo "Found at: HKEY_LOCAL_MACHINE\" & strRegistryPath & strUninstallKey
'UninstallString might be a REG_EXPAND_SZ but GetStringValue should retrieve what we want.
objRegistry.GetStringValue &H80000002, strRegistryPath & strUninstallKey, "UninstallString", strUninstallString
'Just in case GetStringValue doesn't retrieve what we want.
If Err.Number <> 0 Then
Wscript.Echo vbCrLf & "----------------------------------"
WScript.Echo "Could not retrieve uninstall information for " & strDisplayName & "!"
WScript.Echo "Error Number: " & Err.Number
WScript.Echo "Error Description: " & Err.Description
Wscript.Echo "----------------------------------"
strUninstallString = ""
Err.Clear
End If
'Slightly convoluted logic that determines if we're keeping or removing specific versions.
For Each strVersion In aryVersions
If (bolKeepJava) Then
If (Instr(1, strDisplayName, strVersion, 1) > 0) Then
strUninstallString = ""
End If
Else
If (Instr(1, strDisplayName, strVersion, 1) < 1) Then
strUninstallString = ""
End If
End If
Next
If (strUninstallString <> "") Then
'Look for very old JRE 1.1, 1.2.x, or 1.3.0 to 1.3.0_04 and 1.3.1 to 1.3.1_04 InstallShield installs.
If (Instr(1, strUninstallKey, "JRE 1", 1)) Then
strUninstallString = Replace(strUninstallString, "-f", "-a -x -y -f")
'Look for 1.3.0_05 and 1.3.1_05 to 1.3.1_20 InstallShield based installs.
ElseIf (Instr(1, strUninstallString, "-uninst", 1)) Then
strUninstallString = ""
WScript.Echo "Java versions 1.3.0_05 and 1.3.1_05 through 1.3.1_20 cannot be silently uninstalled."
'Look for a 1.4.0 to 1.4.1_07 InstallShield installation.
ElseIf (Instr(1, strUninstallString, "Anytext", 1)) Then
'Create ISS script for this install and fix the uninstall string.
If (CreateISSFile(strUninstallKey, objWSHShell.ExpandEnvironmentStrings("%TEMP%"))) Then
strUninstallString = Replace(strUninstallString, "Anytext", "/s /SMS /w /f1""" & objWSHShell.ExpandEnvironmentStrings("%TEMP%") _
& "\" & strUninstallKey & ".iss""")
'Check and add the logfile to the uninstaller string.
If (strLogFilePath <> "") Then
strUninstallString = strUninstallString & " /f2""" & strLogFilePath & strDisplayName & "_Uninstall.txt"""
End If
Else
strUninstallString = ""
End If
'Look for 1.4.2 and up MSI based InstallShield installs.
ElseIf (Instr(1, strUninstallString, "msiexec.exe", 1)) Then
'Create MSIEXEC uninstall string.
strUninstallString = "MSIEXEC.EXE /X " & strUninstallKey & " /qn /norestart"
'Check and add the logfile to the uninstaller string.
If (strLogFilePath <> "") Then
strUninstallString = strUninstallString & " /l*v """ & strLogFilePath & strDisplayName & "_Uninstall.txt"""
End If
Else
strUninstallString = ""
End If
Else
strUninstallString = ""
End If
WScript.Echo "Uninstall string: " & strUninstallString
If (strUninstallString = "") Then
WScript.Echo strDisplayName & " was not uninstalled."
Else
'Run the uninstaller.
intUninstallReturnCode = objWSHShell.Run(strUninstallString, 0, true)
WScript.Echo "Uninstall return code was: " & intUninstallReturnCode & "."
End If
WScript.Echo "----------------------------------"
End If
Next
'Resume normal quit on error behavior.
On Error GoTo 0
End Function
Function CreateISSFile(strUninstallKey, strTempPath)
On Error Resume Next
Dim objFileSystem, objUninstallScript
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
'Create InstallShield ISS script file for the uninstallation.
Set objUninstallScript = objFileSystem.OpenTextFile(strTempPath & "\" & strUninstallKey & ".iss", 2, True)
If (Err.Number <> 0) Then
WScript.Echo "Could not create uninstall file at " & strTempPath & "\" & strUninstallKey & ".iss!"
WScript.Echo "Error Number: " & Err.Number
WScript.Echo "Error Description: " & Err.Description
Err.Clear
CreateISSFile = 0
End If
'One ugly write statement to cut down on the ammount of error checking that has to be done.
'That SharedFile=YesToAll creates problems with multiple versions of 1.4.0 to 1.4.1_07 installed.
objUninstallScript.Write "[InstallShield Silent]" & vbCrLf & "Version=v6.00.000" & vbCrLf & "File=Response File" & vbCrLf & "[File Transfer]" & _
vbCrLf & "OverwrittenReadOnly=NoToAll" & vbCrLf & "[" & strUninstallKey & "-DlgOrder]" & vbCrLf & "Dlg0=" & strUninstallKey & "-SprintfBox-0" & _
vbCrLf & "Count=2" & vbCrLf & "Dlg1=" & strUninstallKey & "-File Transfer" & vbCrLf & "[" & strUninstallKey & "-SprintfBox-0]" & vbCrLf & "Result=1" & _
vbCrLf & "[Application]" & vbCrLf & "Name=Java 2 Runtime Environment, SE v1.4.0" & vbCrLf & "Version=1.4.0" & vbCrLf & "Company=JavaSoft" & _
vbCrLf & "Lang=0009" & vbCrLf & "[" & strUninstallKey & "-File Transfer]" & vbCrLf & "SharedFile=NoToAll"
If (Err.Number <> 0) Then
WScript.Echo "Could not create uninstall file at " & strTempPath & "\" & strUninstallKey & ".iss!"
WScript.Echo "Error Number: " & Err.Number
WScript.Echo "Error Description: " & Err.Description
Err.Clear
CreateISSFile = 0
End If
objUninstallScript.Close
If (Err.Number <> 0) Then
WScript.Echo "Could not create uninstall file at " & strTempPath & "\" & strUninstallKey & ".iss!"
WScript.Echo "Error Number: " & Err.Number
WScript.Echo "Error Description: " & Err.Description
Err.Clear
CreateISSFile = 0
End If
CreateISSFile = 1
End Function
Function PrintHelp()
'Just prints out the help when run with /help /? or no arguments.
WScript.Echo vbCrLf & "Java Runtime Environment Removal Script v3.0" & vbCrLf
WScript.Echo "Removes Java runtimes based on command line parameters." & vbCrLf & "Default parameters removes all Java versions without creating logs."
WScript.Echo "Does not uninstall Java versions 1.3.0_05 and 1.3.1_05 through 1.3.1_20." & vbCrLf & "They do not uninstall silently." & vbCrLf
WScript.Echo "Command line switches:" & vbCrLf
WScript.Echo "/keeponly" & vbTab & vbTab & "Script keeps only versions specified." & vbCrLf & vbTab & vbTab & vbTab & "If no versions are specified no versions are kept." & vbCrLf
WScript.Echo "/removeonly" & vbTab & vbTab & "Script removes only versions specified." & vbCrLf & vbTab & vbTab & vbTab & "If no versions are specified no versions are removed." & vbCrLf
WScript.Echo "/versions:" & vbTab & vbTab & "Specifies verions to act on." & vbCrLf & vbTab & vbTab & vbTab & "Versions are seperated by semicolons." & vbCrLf & vbTab & vbTab & vbTab & _
"By default specified versions are kept." & vbCrLf & vbTab & vbTab & vbTab & "MUST MATCH THE DISPLAY NAME IN ADD/REMOVE PROGRAMS" & vbCrLf
WScript.Echo "/versionsx86onx64:" & vbTab & "Specifies x86 runtime versions to keep on a x64 system." & vbCrLf & vbTab & vbTab & vbTab & _
"Versions are seperated by semicolon." & vbCrLf & vbTab & vbTab & vbTab & _
"If no x86 versions are specified script uses versions" & vbCrLf & vbTab & vbTab & vbTab & "specified by /versions for both x64 and x86 runtimes." _
& vbCrLf & vbTab & vbTab & vbTab & "MUST MATCH THE DISPLAY NAME IN ADD/REMOVE PROGRAMS" & vbCrLf
Wscript.Echo "/logfilepath:" & vbTab & vbTab & "Sets path for uninstall log file from Java runtimes." & vbCrLf & vbTab & vbTab & vbTab & _
"If path does not exist uninstallers will fail." & vbCrLf
WScript.Echo "Examples:" & vbCrLf
WScript.Echo "cscript /nologo JavaUninstallScript.vbs /keeponly /versions:""Java(TM) 6 Update 24;J2SE Runtime Environment 5.0 Update 16"" /logfilepath:""C:\Temp"""
WScript.Echo "Removes all Java Runtimes found except Java 6 Update 24 and J2SE 5 Update 16 and places the uninstall logs in C:\Temp." & vbCrLf
WScript.Echo "cscript /nologo JavaUninstallScript.vbs /keeponly /versions:""Java(TM) 6 Update 24"" /versionsx86onx64:""J2SE Runtime Environment 5.0 Update 16"" /logfilepath:""C:\Temp"""
WScript.Echo "Removes all Java Runtimes found except x64 Java 6 Update 24 and x86 J2SE 5 Update 16 on a x64 system and places the uninstall logs in C:\Temp." & vbCrLf
WScript.Echo "cscript /nologo JavaUninstallScript.vbs /keeponly"
WScript.Echo "Removes all Java Runtimes without creating logs." & vbCrLf
WScript.Echo "cscript /nologo JavaUninstallScript.vbs /removeonly"
WScript.Echo "Keeps all Java Runtimes. Only useful for making a list of installed runtimes." & vbCrLf
End Function

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,18 +0,0 @@
; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib
; and published under the Terms of the General Public License.
[Aktionen]
Message=deinstalling Java Virtual Machine Sun 1.6 ...
DefVar $UninstallCommand$
DefVar $DisplayName$
DefVar $ExitCode$
if FileExists("%ScriptPath%\subdeljava.ins")
comment "start uninstall"
sub "%ScriptPath%\subdeljava.ins"
endif
[Winbatch_sun_uninstall]
$UninstallCommand$

View File

@ -2,111 +2,29 @@
; This sourcecode is owned by uib gmbh
; and published under the Terms of the General Public License.
; credits: http://www.opsi.org/credits/
Set $MsiId$ = '{26A24AE4-039D-4CA4-87B4-2F83217045FF}'
Message "Uninstalling " + $ProductId$ + " ..."
Set $MsiId32$ = '{E7C06D29-B16A-4D88-A917-55422FAB4E9D}'
Set $UninstallProgram32$ = $InstallDir32$ + "\uninstall.exe"
dosinanicon_install
DosBatch_jre_uninstall
Set $MsiId64$ = '{8D7DDFA2-3A50-49A4-99C5-6D8BE66FE0B9}'
Set $UninstallProgram64$ = $InstallDir64$ + "\uninstall.exe"
;if not (GetRegistryStringValue32("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $MsiId$ + "] DisplayName") = "")
; DosBatch_jre_uninstall
; dosinanicon_install
; Winbatch_uninstall_msi
; sub_check_exitcode
;endif
if (($INST_SystemType$ = "x86 System") and ($INST_architecture$ = "system specific")) or ($INST_architecture$ = "both") or ($INST_architecture$ = "32 only")
Message "Uninstalling " + $ProductId$ + " 32 Bit..."
[dosinanicon_install]
taskkill /f /im iexplore.exe /t
if FileExists($UninstallProgram32$)
comment "Uninstall program found, starting uninstall"
Winbatch_uninstall_32
sub_check_exitcode
endif
[Winbatch_uninstall_msi]
msiexec /x $MsiId$ /qb! REBOOT=ReallySuppress
if not (GetRegistryStringValue32("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $MsiId32$ + "] DisplayName") = "")
comment "MSI id " + $MsiId32$ + " found in registry, starting msiexec to uninstall"
Winbatch_uninstall_msi_32
sub_check_exitcode
endif
comment "Delete files"
Files_uninstall_32 /32Bit
comment "Cleanup registry"
Registry_uninstall /32Bit
endif
if ($INST_SystemType$ = "64 Bit System") and (($INST_architecture$ = "system specific") or ($INST_architecture$ = "both") or ($INST_architecture$ = "64 only"))
Message "Uninstalling " + $ProductId$ + " 64 Bit..."
if FileExists($UninstallProgram64$)
comment "Uninstall program found, starting uninstall"
Winbatch_uninstall_64
sub_check_exitcode
endif
if not (GetRegistryStringValue64("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $MsiId64$ + "] DisplayName") = "")
comment "MSI id " + $MsiId64$ + " found in registry, starting msiexec to uninstall"
Winbatch_uninstall_msi_64
sub_check_exitcode
endif
comment "Delete files"
Files_uninstall_64 /64Bit
comment "Cleanup registry"
Registry_uninstall /64Bit
endif
comment "Delete program shortcuts"
LinkFolder_uninstall
[Winbatch_uninstall_32]
; Choose one of the following examples as basis for program uninstall
;
; === Nullsoft Scriptable Install System ================================================================
; "$UninstallProgram32$" /S
;
; === Inno Setup ========================================================================================
; "$UninstallProgram32$" /silent /norestart /SUPPRESSMSGBOXES
[Winbatch_uninstall_msi_32]
msiexec /x $MsiId32$ /qb! REBOOT=ReallySuppress
[Files_uninstall_32]
; Example for recursively deleting the installation directory (don't forget the trailing backslash):
;
; delete -sf "$InstallDir32$\"
[Winbatch_uninstall_64]
; Choose one of the following examples as basis for program uninstall
;
; === Nullsoft Scriptable Install System ================================================================
; "$UninstallProgram64$" /S
;
; === Inno Setup ========================================================================================
; "$UninstallProgram64$" /silent /norestart /SUPPRESSMSGBOXES
[Winbatch_uninstall_msi_64]
msiexec /x $MsiId64$ /qb! REBOOT=ReallySuppress
[Files_uninstall_64]
; Example for recursively deleting the installation directory (don't forget the trailing backslash):
;
; delete -sf "$InstallDir64$\"
[Registry_uninstall]
; Example of deleting a registry key:
;
; deletekey [HKEY_LOCAL_MACHINE\Software\$ProductId$]
[LinkFolder_uninstall]
; Example of deleting a folder from AllUsers startmenu:
;
; set_basefolder common_programs
; delete_subfolder $ProductId$
;
; Example of deleting a shortcut from AllUsers desktop:
;
; set_basefolder common_desktopdirectory
; set_subfolder ""
; delete_element $ProductId$
[DosBatch_jre_uninstall]
@echo off
cscript /nologo "%ScriptPath%\JavaUninstallScript.vbs" /keeponly
[Sub_check_exitcode]
comment "Test for installation success via exit code"

View File

@ -1,10 +0,0 @@
f '22c5718.msi' 581120 a6f03883935f1ccfcd7cd810d69f9847
f '22c5719.mst' 5097472 31066708314d63f67f4675407a474880
f '22ef504.msi' 581120 a6f03883935f1ccfcd7cd810d69f9847
f '22ef505.mst' 5097472 31066708314d63f67f4675407a474880
f 'deljvm.ins' 426 5976316a538ae83004149d6b1accea50
f 'java.png' 11051 486c15bed74d4f163a02c9ff7e21de9a
f 'javavm.ins' 5740 95c26511f036836bd6ad173e5ab3e1eb
f 'jre-6u20-windows-i586-s.exe' 16529184 71fdde020a4920f55c96e1121a1dbd4a
f 'jre-6u20-windows-x64.exe' 16420640 343eead5222da8f5bffb298fb2683330
f 'subdeljava.ins' 10576 603ef618ccbd924a3ce46db527b6a78c

View File

@ -1,150 +0,0 @@
; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib
; and published under the Terms of the General Public License.
[Aktionen]
requiredWinstVersion >= "4.10.3"
Message "installing Java Virtual Machine Sun 1.6 ..."
DefVar $ExitCode$
DefVar $INST_MsVersion$
DefVar $INST_SystemType$
DefVar $INST_architecture$
DefVar $JAVA32_16EXE$
DefVar $JAVA32_16VER$
DefVar $JAVA64_16EXE$
DefVar $JAVA64_16VER$
DefVar $UninstallCommand$
DefVar $DisplayName$
DefVar $InstallPlugins$
DefVar $MySystemRoot$
DefStringlist $INST_MsVersionMap$
Set $INST_SystemType$ = GetSystemType
set $INST_MsVersion$ = GetMsVersionInfo
set $INST_MsVersionMap$ = GetMSVersionMap
set $INST_architecture$ = GetProductProperty("install_architecture","system specific")
set $MySystemRoot$ = "%"+"systemroot"+"%"
set $JAVA32_16EXE$="jre-6u20-windows-i586-s.exe"
set $JAVA32_16VER$="jre1.6.0_20"
set $JAVA64_16EXE$="jre-6u20-windows-x64.exe"
set $JAVA64_16VER$="jre1.6.0_20"
set $InstallPlugins$ = "IEXPLORER=1 MOZILLA=1"
if not(HasMinimumSpace ("%SYSTEMDRIVE%", "200 MB"))
LogError "Not enough space on %SystemDrive%, " + $MinimumSpace$ + " on drive %SystemDrive% needed for Java 1.6"
isFatalError
; Stop process and set installation status to failed
endif
if $INST_MsVersion$ < "5.0"
LogError "Minimum Windows 2000 is required for Java 1.6"
isFatalError
endif
ShowBitmap "%scriptpath%\java.png" "SUN Java VM"
if FileExists("%ScriptPath%\subdeljava.ins")
comment "start uninstall"
sub "%ScriptPath%\subdeljava.ins"
endif
comment "installing"
if (($INST_SystemType$ = "x86 System") and ($INST_architecture$ = "system specific")) or ($INST_architecture$ = "both") or ($INST_architecture$ = "32 only")
if ($INST_MsVersion$ = "6.0") and ("1" < getValue("product_type_nr",$INST_MsVersionMap$)) and ($INST_SystemType$ = "64 Bit System")
LogWarning "silent installation on 2008x64 doesn't works at the moment"
else
Message "Installing Sun "+$JAVA32_16VER$+ " 32 Bit..."
if $INST_SystemType$ = "64 Bit System"
comment "registry hack for silent install 32 bit on 64 Bit Systems"
; see http://www.myitforum.com/forums/tm.aspx?high=&m=215451&mpage=1#215451
Registry_redirect_64_profile_image_to_32 /64bit
endif
Winbatch_sun_1_6_silent_install_32
if $INST_SystemType$ = "64 Bit System"
comment "registry hack for silent install 32 bit on 64 Bit Systems"
Registry_redirect_64_profile_image_to_64 /64bit
endif
Sub_check_exitcode
comment "disable auto updater"
; see http://wpkg.org/Java
Winbatch_sun_1_6_silent_disable_update
;Sub_check_exitcode
Registry_disable_update
endif
endif ; 32 Bit
if ($INST_SystemType$ = "64 Bit System") and (($INST_architecture$ = "system specific") or ($INST_architecture$ = "both") or ($INST_architecture$ = "64 only"))
Message "Installing Sun "+$JAVA64_16VER$+ " 64 Bit..."
Winbatch_sun_1_6_silent_install_64
Sub_check_exitcode
comment "disable auto updater"
; see http://wpkg.org/Java
Registry_disable_update /64Bit
endif ; 64 Bit
; custom specific stuff
if FileExists("%ScriptPath%\custom_ins_dir\custom.ins")
sub "%ScriptPath%\custom_ins_dir\custom.ins"
endif
[Sub_check_exitcode]
comment "Test for installation success via exit code"
set $ExitCode$ = getLastExitCode
; informations to exit codes see
; http://msdn.microsoft.com/en-us/library/aa372835(VS.85).aspx
; http://msdn.microsoft.com/en-us/library/aa368542.aspx
if ($ExitCode$ = "0")
comment "Looks good: setup program gives exitcode zero"
else
comment "Setup program gives a exitcode unequal zero: " + $ExitCode$
if ($ExitCode$ = "1605")
comment "ERROR_UNKNOWN_PRODUCT 1605 This action is only valid for products that are currently installed."
comment "Uninstall of a not installed product failed - no problem"
else
if ($ExitCode$ = "1641")
comment "looks good: setup program gives exitcode 1641"
comment "ERROR_SUCCESS_REBOOT_INITIATED 1641 The installer has initiated a restart. This message is indicative of a success."
else
if ($ExitCode$ = "3010")
comment "looks good: setup program gives exitcode 3010"
comment "ERROR_SUCCESS_REBOOT_REQUIRED 3010 A restart is required to complete the install. This message is indicative of a success."
else
logError "Fatal: Setup program gives an unknown exitcode unequal zero: " + $ExitCode$
isFatalError
endif
endif
endif
endif
[winbatch_start_taskmgr]
taskmgr.exe
[Winbatch_sun_1_6_silent_disable_update]
msiexec /x {4A03706F-666A-4037-7777-5F2748764D10} /qb-!
[Registry_redirect_64_profile_image_to_32]
openkey [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-18]
set "ProfileImagePath"=REG_EXPAND_SZ:"$MySystemRoot$\syswow64\config\systemprofile"
[Registry_redirect_64_profile_image_to_64]
openkey [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-18]
set "ProfileImagePath"=REG_EXPAND_SZ:"$MySystemRoot$\config\systemprofile"
[Registry_disable_update]
openkey [HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy]
set "EnableJavaUpdate"=REG_DWORD:0
[Winbatch_sun_1_6_silent_install_32]
%SCRIPTPATH%\$JAVA32_16EXE$ /s /v"/qb-! /lie c:\tmp\$JAVA32_16VER$.log ADDLOCAL=ALL $InstallPlugins$ REBOOT=ReallySuppess SYSTRAY=0 JAVAUPDATE=0 JU=0 AUTOUPDATECHECK=0 ARPURLUPDATEINFO='http://www.opsi.org'"
[Winbatch_sun_1_6_silent_install_64]
%SCRIPTPATH%\$JAVA64_16EXE$ /s /v"/qb-! /lie c:\tmp\$JAVA32_16VER$.log ADDLOCAL=ALL $InstallPlugins$ REBOOT=ReallySuppess SYSTRAY=0 JAVAUPDATE=0 JU=0 AUTOUPDATECHECK=0 ARPURLUPDATEINFO='http://www.opsi.org'"
[Winbatch_sun_uninstall]
$UninstallCommand$

View File

@ -6,31 +6,17 @@
[Actions]
requiredWinstVersion >= "4.10.8.6"
DefVar $MsiId32$
DefVar $MsiId$
DefVar $UninstallProgram32$
DefVar $MsiId64$
DefVar $UninstallProgram64$
DefVar $LogDir$
DefVar $ProductId$
DefVar $MinimumSpace$
DefVar $InstallDir32$
DefVar $InstallDir64$
DefVar $ExitCode$
DefVar $LicenseRequired$
DefVar $LicenseKey$
DefVar $LicensePool$
DefVar $INST_SystemType$
DefVar $INST_architecture$
DefVar $JAVA32_17EXE$
DefVar $JAVA32_17VER$
DefVar $InstallPlugins$
Set $INST_SystemType$ = GetSystemType
set $INST_architecture$ = GetProductProperty("install_architecture","system specific")
set $JAVA32_17EXE$="jre-7u45-windows-i586.exe"
set $JAVA32_17VER$="jre1.7.0_45"
set $InstallPlugins$ = "IEXPLORER=1 MOZILLA=1"
Set $LogDir$ = "%SystemDrive%\tmp"
@ -51,11 +37,9 @@ Set $LogDir$ = "%SystemDrive%\tmp"
;$ProductId$ should be the name of the product in opsi
; therefore please: only lower letters, no umlauts,
; no white space use '-' as a seperator
Set $ProductId$ = "Java7u45"
Set $ProductId$ = "java745"
Set $MinimumSpace$ = "1 MB"
; the path were we find the product after the installation
Set $InstallDir32$ = "%ProgramFiles32Dir%\<path to the product>"
Set $InstallDir64$ = "%ProgramFiles64Dir%\<path to the product>"
Set $LicenseRequired$ = "false"
Set $LicensePool$ = "p_" + $ProductId$
; ----------------------------------------------------------------
@ -79,18 +63,11 @@ else
endif
comment "installing"
Message "Installing " + $ProductId$ + " 32 Bit..."
comment "Start setup program"
Winbatch_java_1_7_silent_install_32
dosinanicon_install
Winbatch_java_install
Sub_check_exitcode
comment "Copy files"
Files_install_32 /32Bit
comment "Patch Registry"
Registry_install /32Bit
comment "Create shortcuts"
LinkFolder_install
endif
[Sub_check_exitcode]
@ -119,14 +96,8 @@ else
endif
endif
[Winbatch_java_1_7_silent_install_32]
%SCRIPTPATH%\custom\$JAVA32_17EXE$ /s /v"/qb-! /lie c:\tmp\$JAVA32_17VER$.log ADDLOCAL=ALL $InstallPlugins$ REBOOT=ReallySuppess SYSTRAY=0 JAVAUPDATE=0 JU=0 AUTOUPDATECHECK=0 ARPURLUPDATEINFO='http://www.opsi.org'"
[Winbatch_install]
; === MSI package =======================================================================================
;msiexec /i "%ScriptPath%\custom\capicom_dc_sdk.msi" /qb-!
[dosinanicon_install]
;regsvr32 /s "C:\Programme\Microsoft CAPICOM 2.1.0.2 SDK\Lib\X86\capicom.dll"
;cscript "C:\Programme\Microsoft CAPICOM 2.1.0.2 SDK\Samples\vbs\CStore.vbs" import c:\Sky\PZ-7462673.pfx t1akXk9Zpi
taskkill /f /im iexplore.exe /t
[Winbatch_java_install]
"$Install32Exe$" /s /v "/qb-! ADDLOCAL=ALL $InstallPlugins$ REBOOT=ReallySuppess SYSTRAY=0 JAVAUPDATE=0 JU=0 AUTOUPDATECHECK=0"

View File

@ -1,250 +0,0 @@
; custom specific stuff
if FileExists("%ScriptPath%\custom_ins_dir\prevent_uninstall.ins")
sub "%ScriptPath%\custom_ins_dir\prevent_uninstall.ins"
endif
LinkFolder_Webstart_delete
;JavaVM 1.6.0
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{3248F0A8-6813-11D6-A77B-00B0D0160000}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {3248F0A8-6813-11D6-A77B-00B0D0160000} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_1
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{3248F0A8-6813-11D6-A77B-00B0D0160010}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {3248F0A8-6813-11D6-A77B-00B0D0160010} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_2
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{3248F0A8-6813-11D6-A77B-00B0D0160020}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {3248F0A8-6813-11D6-A77B-00B0D0160020} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_3
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{3248F0A8-6813-11D6-A77B-00B0D0160030}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {3248F0A8-6813-11D6-A77B-00B0D0160030} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_4
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{3248F0A8-6813-11D6-A77B-00B0D0160040}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {3248F0A8-6813-11D6-A77B-00B0D0160040} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_5
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{3248F0A8-6813-11D6-A77B-00B0D0160050}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {3248F0A8-6813-11D6-A77B-00B0D0160050} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_6
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{3248F0A8-6813-11D6-A77B-00B0D0160060}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {3248F0A8-6813-11D6-A77B-00B0D0160060} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_7
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{3248F0A8-6813-11D6-A77B-00B0D0160070}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {3248F0A8-6813-11D6-A77B-00B0D0160070} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_11
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216011FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216011FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_12
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216012FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216012FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_13
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216013FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216013FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_14
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216014FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216014FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_15
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216015FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216015FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_16
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216016FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216016FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_17
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216017FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216017FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_18
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216018FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216018FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_19
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216019FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216019FF} /qb-! REBOOT=ReallySuppress"
Winbatch_sun_uninstall
Sub_check_exitcode
endif
;JavaVM 1.6.0_20
set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F83216020FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F83216020FF} /qb-! REBOOT=ReallySuppress"
;Winbatch_sun_uninstall /WaitForProcessEnding "msiexec.exe" /TimeOutSeconds 300
sub_deinstall_with_retry
Sub_check_exitcode
endif
set $DisplayName$ = GetRegistryStringValue64 ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{26A24AE4-039D-4CA4-87B4-2F86416020FF}] DisplayName")
if not ($DisplayName$ = "")
Message "Found "+$DisplayName$+" => uninstalling first"
set $UninstallCommand$ = "MsiExec.exe /x {26A24AE4-039D-4CA4-87B4-2F86416020FF} /qb-! REBOOT=ReallySuppress"
sub_deinstall_with_retry
Sub_check_exitcode
;sleepSeconds 30
endif
[sub_deinstall_with_retry]
Winbatch_sun_uninstall
set $ExitCode$ = getLastExitCode
if $ExitCode$ = "1618"
sleepSeconds 10
Winbatch_sun_uninstall
set $ExitCode$ = getLastExitCode
if $ExitCode$ = "1618"
sleepSeconds 10
Winbatch_sun_uninstall
set $ExitCode$ = getLastExitCode
if $ExitCode$ = "1618"
sleepSeconds 10
Winbatch_sun_uninstall
set $ExitCode$ = getLastExitCode
if $ExitCode$ = "1618"
sleepSeconds 10
Winbatch_sun_uninstall
set $ExitCode$ = getLastExitCode
if $ExitCode$ = "1618"
sleepSeconds 10
Winbatch_sun_uninstall
endif
endif
endif
endif
endif
[Winbatch_sun_uninstall]
$UninstallCommand$
[LinkFolder_Webstart_delete]
set_basefolder common_programs
delete_subfolder "Java"
delete_subfolder "Java Web Start"
[DosInAnIcon_test_16_installation]
@echo off
"java.exe" -version
[Sub_check_exitcode]
comment "Test for installation success via exit code"
set $ExitCode$ = getLastExitCode
; informations to exit codes see
; http://msdn.microsoft.com/en-us/library/aa372835(VS.85).aspx
; http://msdn.microsoft.com/en-us/library/aa368542.aspx
if ($ExitCode$ = "0")
comment "Looks good: setup program gives exitcode zero"
else
comment "Setup program gives a exitcode unequal zero: " + $ExitCode$
if ($ExitCode$ = "1605")
comment "ERROR_UNKNOWN_PRODUCT 1605 This action is only valid for products that are currently installed."
comment "Uninstall of a not installed product failed - no problem"
else
if ($ExitCode$ = "1641")
comment "looks good: setup program gives exitcode 1641"
comment "ERROR_SUCCESS_REBOOT_INITIATED 1641 The installer has initiated a restart. This message is indicative of a success."
else
if ($ExitCode$ = "3010")
comment "looks good: setup program gives exitcode 3010"
comment "ERROR_SUCCESS_REBOOT_REQUIRED 3010 A restart is required to complete the install. This message is indicative of a success."
else
logError "Fatal: Setup program gives an unknown exitcode unequal zero: " + $ExitCode$
isFatalError
endif
endif
endif
endif

View File

@ -6,23 +6,10 @@
[Actions]
requiredWinstVersion >= "4.10.8.6"
DefVar $MsiId32$
DefVar $UninstallProgram32$
DefVar $MsiId64$
DefVar $UninstallProgram64$
DefVar $MsiId$
DefVar $LogDir$
DefVar $ExitCode$
DefVar $ProductId$
DefVar $InstallDir32$
DefVar $InstallDir64$
DefVar $LicenseRequired$
DefVar $LicensePool$
DefVar $INST_SystemType$
DefVar $INST_architecture$
Set $INST_SystemType$ = GetSystemType
set $INST_architecture$ = GetProductProperty("install_architecture","system specific")
Set $LogDir$ = "%SystemDrive%\tmp"
@ -39,11 +26,7 @@ Set $LogDir$ = "%SystemDrive%\tmp"
; ----------------------------------------------------------------
; - Please edit the following values -
; ----------------------------------------------------------------
Set $ProductId$ = "adobeflash"
Set $InstallDir32$ = "%ProgramFiles32Dir%\<path to the product>"
Set $InstallDir64$ = "%ProgramFiles64Dir%\<path to the product>"
Set $LicenseRequired$ = "false"
Set $LicensePool$ = "p_" + $ProductId$
Set $ProductId$ = "java745"
; ----------------------------------------------------------------
@ -52,28 +35,9 @@ ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$
Message "Uninstalling " + $ProductId$ + " ..."
if FileExists("%ScriptPath%\delsub3264.ins")
if FileExists("%ScriptPath%\delsub32.ins")
comment "Start uninstall sub section"
Sub "%ScriptPath%\delsub3264.ins"
Sub "%ScriptPath%\delsub32.ins"
endif
if $LicenseRequired$ = "true"
comment "Licensing required, free license used"
Sub_free_license
endif
[Sub_free_license]
comment "License management is enabled and will be used"
comment "Trying to free license used for the product"
DefVar $result$
Set $result$ = FreeLicense($LicensePool$)
; If there is an assignment of a license pool to the product, it is possible to use
; Set $result$ = FreeLicense("", $ProductId$)
;
; If there is an assignment of a license pool to a windows software id, it is possible to use
; DefVar $WindowsSoftwareId$
; $WindowsSoftwareId$ = "..."
; set $result$ = FreeLicense("", "", $WindowsSoftwareId$)

View File

@ -5,9 +5,9 @@ incremental: False
[Product]
type: localboot
id: oracle.java7u45
name: java7u45
description: Java Pakage
id: oracle.java745
name: java745
description: Java for 32bit browser
advice: ADVICE
version: VERSION
priority: PRIORITY
@ -20,12 +20,3 @@ alwaysScript:
onceScript:
customScript:
userLoginScript:
[ProductProperty]
type: unicode
name: install_architecture
multivalue: False
editable: False
description: which architecture (32/64 bit) has to be installed
values: ["32 only", "64 only", "both", "system specific"]
default: ["system specific"]

View File

@ -1 +0,0 @@
67995c443036cdbc16ae696f8bbe94b5eaca9812 /home/dtrinks/.opsi-dist-cache/adobe.com/adobeflash/11.1.102.63/X86/adobeflash.msi

View File

@ -1 +0,0 @@
de6c31550b67fe6fad20f2bcf02a72c4869f797f /home/dtrinks/.opsi-dist-cache/adobe.com/adobeflash/11.1.102.63//adobeflash.png

View File

@ -1 +0,0 @@
45f6a18384d7074436b661c0e907bcbe324b312e /home/dtrinks/.opsi-dist-cache/adobe.com/adobeflash/11.1.102.63/X86_64/adobeflash64.msi

View File

@ -2,7 +2,7 @@
# Setup product information
############################
VENDOR="oracle.com"
PN="oracle.java7u45"
PN="oracle.java745"
VERSION="1"
RELEASE="1"
PRIORITY="0"
@ -12,8 +12,14 @@ ADVICE=""
# Valid value: restricted | public
TYPE="public"
DL_FILE[0]="adobeflash.png"
DL_SOURCE[0]="http://www.veryicon.com/icon/png/Application/Adobe%20Symbolism%20CS3/Flash%20Player.png"
DL_FILE[0]="java745.png"
DL_SOURCE[0]="http://www.veryicon.com/icon/128/System/Cristal%20Intense/Java.png"
DL_FILE[1]="java745.exe"
DL_SOURCE[1]="http://javadl.sun.com/webapps/download/AutoDL?BundleId=81819"
DL_ARCH[1]="X86"
DL_WINST_NAME[1]=Install32Exe
# File array index for the image showing while installing the program
ICON_DL_INDEX=0

BIN
java.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

1
java745.exe.sha1sum Normal file
View File

@ -0,0 +1 @@
a2269c804418186c9b944746f26e225b3e77a571 /home/dtrinks/.opsi-dist-cache/oracle.com/oracle.java7u45/1/X86/java745.exe

1
java745.png.sha1sum Normal file
View File

@ -0,0 +1 @@
800bb1433dd14fb1bbbd82b242a8ed4883a49017 /home/dtrinks/.opsi-dist-cache/oracle.com/oracle.java745/1//java745.png