Java 8 Deinstallation per Silent Skript
Hallo zusammen,
ich habe momentan ein kleines Problem. Ich habe ein Batch-Skript erstellt, um die spezifischen Versionen von Java 8 zu deinstallieren. Wenn ich jedoch den Befehl für die Silent-Deinstallation ausführe, passiert nichts – das Programm wird nicht deinstalliert.
Zur Situation: Wir möchten über das Skript die alten Java 8-Versionen von unseren Clients entfernen, um OpenJDK zu installieren. Dafür benötigen wir ein Skript, das alle Java 8-Versionen abfragt und diese deinstalliert.
Hier ist der Befehl, den ich verwendet habe:
msiexec /x {77924AE4-039E-4CA4-87B4-2F32180421F0} /quiet
Ich hatte die Idee, ein Skript zu schreiben, das die GUID abruft und dann in diesem Befehl für die stille Deinstallation verwendet. Allerdings funktioniert der Befehl nicht einmal, wenn ich ihn direkt in der Eingabeaufforderung eingebe.
Vielen Dank für eure Hilfe!
Gruß
Jasha
ich habe momentan ein kleines Problem. Ich habe ein Batch-Skript erstellt, um die spezifischen Versionen von Java 8 zu deinstallieren. Wenn ich jedoch den Befehl für die Silent-Deinstallation ausführe, passiert nichts – das Programm wird nicht deinstalliert.
Zur Situation: Wir möchten über das Skript die alten Java 8-Versionen von unseren Clients entfernen, um OpenJDK zu installieren. Dafür benötigen wir ein Skript, das alle Java 8-Versionen abfragt und diese deinstalliert.
Hier ist der Befehl, den ich verwendet habe:
msiexec /x {77924AE4-039E-4CA4-87B4-2F32180421F0} /quiet
Ich hatte die Idee, ein Skript zu schreiben, das die GUID abruft und dann in diesem Befehl für die stille Deinstallation verwendet. Allerdings funktioniert der Befehl nicht einmal, wenn ich ihn direkt in der Eingabeaufforderung eingebe.
Vielen Dank für eure Hilfe!
Gruß
Jasha
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 12771123519
Url: https://administrator.de/contentid/12771123519
Ausgedruckt am: 21.11.2024 um 18:11 Uhr
8 Kommentare
Neuester Kommentar
Liste mal die Number-Codes und vergleiche die!
Mit PowerShell.
Quelle: https://stackoverflow.com/questions/29937568/how-can-i-find-the-product- ...
Deine ist offiziell die von Oracle aus den Help Inhalten. Lasst mal das Kommando raus und schau welchen Product Code du hast!
get-wmiobject Win32_Product | Sort-Object -Property Name |Format-Table IdentifyingNumber, Name, LocalPackage -AutoSize
Mit PowerShell.
Quelle: https://stackoverflow.com/questions/29937568/how-can-i-find-the-product- ...
Deine ist offiziell die von Oracle aus den Help Inhalten. Lasst mal das Kommando raus und schau welchen Product Code du hast!
Ich habe dazu das folgende powershell script:
# Uninstall All Java installation on this machine
# Get all installed Java Versions
$uninstalls32 = gci "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall" | foreach { gp $_.PSPath } | ? { $_ -like "*Java 8 Update*" } | select UninstallString
$uninstalls64 = gci "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" | foreach { gp $_.PSPath } | ? { $_ -like "*Java 8 Update*" } | select UninstallString
# Run msiexec uninstall silently if either registry path has an uninstall string present
if ($uninstalls64) {
foreach ($uninstall64 in $uninstalls64) {
$uninstall64 = $uninstall64.UninstallString -Replace "msiexec.exe","" -Replace "/I","" -Replace "/X",""
$uninstall64 = $uninstall64.Trim()
Write-Output "Found Java 8 Update Installer (64bit) - uninstalling..."
Start-Process "msiexec.exe" -arg "/X $uninstall64 /qb" -Wait
}
}
if ($uninstalls32) {
foreach ($uninstall32 in $uninstalls32) {
$uninstall32 = $uninstall32.UninstallString -Replace "msiexec.exe","" -Replace "/I","" -Replace "/X",""
$uninstall32 = $uninstall32.Trim()
Write-Output "Found Java 8 Update Installer (32bit) - uninstalling..."
Start-Process "msiexec.exe" -arg "/X $uninstall32 /qb" -Wait
}
}
Moin,
Auch als kleiner singleliner möglich:
Gruß Thomas
Kann man das Skript auch Quiet ausführen ?
für Silentdeinstallation halt "/quiet /passive" anfügen.Auch als kleiner singleliner möglich:
"Wow6432Node\",""|%{gp "HKLM:\Software\${_}Microsoft\Windows\CurrentVersion\Uninstall\*"}|? {$_.DisplayName -like "*java*" -and $_.UninstallString}|%{iex ($_.UninstallString.Replace('/I','/X') -replace '{.+?}','"$0" /quiet /passive')}
Gruß Thomas