Esta guía detalla cómo desinstalar Soda PDF Desktop mediante objetos de directiva de grupo (GPO).

 

Desinstalación de Soda PDF a través de GPO

Método 1: desinstalación de MSI por MSI

Para eliminar manualmente cada MSI:

  1. Abra el Editor de administración de directivas de grupo.
  2. Vaya a Instalación de software en Configuración del equipo -> Directivas.
  3. Haga clic con el botón derecho en cada MSI instalado y seleccione Todas las tareas -> Eliminar.
  4. Seleccione el método de eliminación y luego haga clic en Aceptar.

Repita para cada MSI instalado hasta que se desinstalen todos los módulos.

 

Método 2: desinstalación de Soda PDF a través de PowerShell

Use /uninstall=quiet para que las aplicaciones se desinstalen de forma silenciosa.

Ejemplo: para cmd

"C:\Datos del programa\Soda PDF Desktop 14\Instalación\SodaPDFDesktop14.exe" /uninstall=quiet

 

# Define service name wildcard
$serviceWildcard = "Soda PDF Desktop*"

# Stopping and removing matching services
Write-Host "Stopping and removing services matching '$serviceWildcard'..."

# Get services matching the wildcard
$services = Get-Service | Where-Object { $_.DisplayName -like $serviceWildcard }

foreach ($service in $services) {
Write-Host "Stopping service: $($service.DisplayName)"
Stop-Service -Name $service.Name -Force -ErrorAction SilentlyContinue
Write-Host "Removing service: $($service.DisplayName)"
sc.exe delete $service.Name | Out-Null
}

Write-Host "Service cleanup complete."

# Fetch and process uninstall strings (as before)
$uninstall32 = Get-ChildItem "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall" |
ForEach-Object { Get-ItemProperty $_.PSPath } |
Where-Object { $_.DisplayName -match "Soda PDF Desktop" } |
Select-Object -ExpandProperty UninstallString -ErrorAction SilentlyContinue

$uninstall64 = Get-ChildItem "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" |
ForEach-Object { Get-ItemProperty $_.PSPath } |
Where-Object { $_.DisplayName -match "Soda PDF Desktop" } |
Select-Object -ExpandProperty UninstallString -ErrorAction SilentlyContinue

# 32-bit uninstallation
if ($uninstall32) {
Write-Host "Running 32-bit uninstaller silently..."
Start-Process -FilePath "C:\ProgramData\Soda PDF Desktop*\Installation\SodaPDFDesktop*.exe" `
-ArgumentList "/uninstall=quiet /norestart" -Wait
} else {
Write-Host "No 32-bit Soda PDF Desktop found."
}

# 64-bit uninstallation
if ($uninstall64) {
$uninstall64Commands = $uninstall64 -split "MsiExec.exe"
foreach ($command in $uninstall64Commands) {
$command = "MsiExec.exe " + $command.Trim()
if ($command -match "/X|/I") {
$arguments = ($command -replace "MsiExec.exe", "").Trim() + " /qn /norestart"
Write-Host "Running 64-bit uninstaller silently: MsiExec.exe $arguments"
Start-Process -FilePath "MsiExec.exe" -ArgumentList $arguments -Wait
}
}
} else {
Write-Host "No 64-bit Soda PDF Desktop found."
}

# Cleanup remaining folders using wildcards
Write-Host "Cleaning up leftover Soda PDF directories using wildcards..."

$foldersToClean = @(
"C:\Program Files\Soda PDF Desktop*",
"C:\Program Files (x86)\Soda PDF Desktop*",
"C:\ProgramData\Soda PDF Desktop*"
)

foreach ($folder in $foldersToClean) {
Get-ChildItem -Path $folder -Directory -ErrorAction SilentlyContinue | ForEach-Object {
if (Test-Path $_.FullName) {
Write-Host "Removing folder: $($_.FullName)"
Remove-Item -Path $_.FullName -Recurse -Force -ErrorAction SilentlyContinue
} else {
Write-Host "Folder not found: $($_.FullName)"
}
}
}

Write-Host "Cleanup complete."

¿Fue útil este artículo?

No
¿Tiene más preguntas? Enviar una solicitud