Desinstalación de aplicaciones en Windows usando el GUID del producto (Product Code)

Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero

En sistemas Windows, muchas aplicaciones instaladas mediante archivos .msi quedan registradas en el sistema con un identificador único llamado Product Code GUID. Este identificador permite realizar acciones como la desinstalación silenciosa desde línea de comandos o scripts, sin depender de rutas fijas o interfaces gráficas.

Este artículo técnico detalla cómo identificar el GUID de una aplicación y cómo usarlo para desinstalarla de forma automatizada y controlada.

¿Qué es el Product Code GUID?

El GUID (Globally Unique Identifier) es un identificador único que asigna Windows Installer a cada paquete .msi instalado. Se utiliza para gestionar tareas como:

  • Actualización
  • Reparación
  • Desinstalación

Ejemplo de GUID:

{23170F69-40C1-2702-0920-000001000000}

Paso 1: Identificar el GUID de una aplicación instalada

Opción A: PowerShell con Win32_Product

Get-WmiObject -Class Win32_Product | 
Where-Object { $_.Name -like "*NombreDeLaApp*" } |
Select-Object Name, IdentifyingNumber

IdentifyingNumber es el GUID.

Nota: Win32_Product puede desencadenar una reconfiguración de los paquetes MSI instalados. No es ideal para producción.

Opción B: Consultar el Registro de Windows (recomendado)

Get-ItemProperty "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*" |
Where-Object { $_.DisplayName -like "*NombreDeLaApp*" } |
Select DisplayName, DisplayVersion, UninstallString

Para sistemas de 64 bits que tienen instaladores de 32 bits:

Get-ItemProperty "HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" |
Where-Object { $_.DisplayName -like "*NombreDeLaApp*" }

Busca si el valor UninstallString contiene:

msiexec /x {GUID}

Paso 2: Desinstalar usando el GUID

Una vez identificado el GUID de la aplicación, puedes desinstalarla con el siguiente comando:

msiexec /x {GUID} /qn

Parámetros útiles:

  • /x → desinstalación
  • /qn → modo completamente silencioso (quiet + no UI)
  • /norestart → evita reinicios automáticos

Ejemplo:

msiexec /x {23170F69-40C1-2702-0920-000001000000} /qn /norestart

Automatización por script

Puedes automatizar esta operación para múltiples aplicaciones:

$apps = @(
"{GUID-UNO}",
"{GUID-DOS}",
"{GUID-TRES}"
)

foreach ($guid in $apps) {
Start-Process "msiexec.exe" -ArgumentList "/x $guid /qn /norestart" -Wait
}

Casos de uso

  • Despliegue masivo de desinstalaciones con GPO, Intune, SCCM o scripts de login.
  • Limpieza de versiones obsoletas antes de instalar una nueva.
  • Reparaciones automatizadas eliminando e instalando de nuevo un MSI dañado.
  • Inventario de software y gestión de cumplimiento (compliance) en entornos regulados.

Recomendaciones

  • Siempre verifica el GUID exacto antes de desinstalar (puede variar según la versión del software).
  • Si no tienes acceso a PowerShell, puedes buscar manualmente en el Registro (regedit.exe) en:
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
    • HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall
  • Usa msiexec /x solo para paquetes instalados con .msi. Para .exe, usa su propio desinstalador.

Validación tras la desinstalación

Después de ejecutar el comando, valida que la aplicación ha sido correctamente eliminada:

Get-ItemProperty "HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*" |
Where-Object { $_.DisplayName -like "*NombreDeLaApp*" }

Herramientas complementarias

  • Winget: Para instalar/desinstalar apps modernas (requiere Windows 10 1809+)
  • Wmic: Comando heredado útil:

    wmic product where "name like '%%AppName%%'" call uninstall /nointeractive
  • SCCM, Intune, PDQ Deploy: Para orquestar tareas en entornos empresariales
Binario 0
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.