Cómo solucionar problemas de daños en el registro de actualizaciones de software MSI

En este artículo se proporciona una solución a un problema que repara o desinstala determinados productos después de instalar las actualizaciones de software.

Versión original del producto:   Windows 10: todas las ediciones, Windows Server 2012 R2
Número KB original:   971187

Síntomas

Después de instalar actualizaciones de software, pueden producirse errores en las reparaciones o desinstalaciones de determinados productos. Si tiene habilitado el registro MSI, se encuentran las siguientes líneas en el registro:

No se pudo encontrar la revisión local "". Lo busca en su origen.
...
MainEngineThread devuelve 1612

Cuando busque en el Registro, es posible que encuentre que falta el registro de caché de actualización de software en la siguiente subclave del Registro: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\<SID>\Patches\<SQUID>

Solución

Importante

Esta sección, método o tarea contiene pasos que le indican cómo modificar el Registro. No obstante, pueden producirse problemas graves si modifica el registro de manera incorrecta. En consecuencia, asegúrese de seguir estos pasos cuidadosamente. Para mayor protección, cree una copia de seguridad del registro antes de modificarlo. Después, puede restaurar el registro si se produce un problema.

Para solucionar este problema, siga estos pasos:

  1. Confirma que el producto se ve afectado.

    Para ello, siga estos pasos:

    1. Busque el registro de actualización de software del producto abriendo la siguiente subclave del Registro: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\<SID>\Products\<ProductSQUID>\Patches
      En esta subclave, habrá una subclave para cada actualización de software que se aplicó al producto.

    2. Para cada subclave que tiene el siguiente formato, realice el siguiente paso: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\<SID>\Products\<ProductSQUID>\Patches\<PatchSQUID>

      Compruebe que existe la siguiente subclave:

      HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\<SID>\Patches\<PatchSQUID>

      Si falta la subclave, el producto se verá afectado. Continúe con el paso 2.

      Si la subclave existe, comprueba que el valor de la cadena LocalPackage está establecido correctamente y que el paquete al que hace referencia el valor de cadena LocalPackage también existe.

      1. Si falta el valor de cadena LocalPackage o el paquete al que se hace referencia, el producto se verá afectado. Continúe con el paso 2.
      2. Si el paquete al que se hace referencia existe y no se requiere ninguna acción adicional.
  2. Vuelva a crear los detalles del Registro de caché de actualización de software. Para ello, siga estos pasos:

    1. Busque en %windir%\installer \ *.msp la actualización de software que intentó instalar. Compruebe que la actualización de software tenga el identificador único global (GUID) correcto en la secuencia de información de resumen y tenga como destino los GUID de producto correctos.

      Nota

      Dado que este directorio sirve como caché para instalaciones por usuario e instalaciones por equipo, puedes simular una actualización de software en este directorio mediante una instalación por usuario.

    2. Cree la siguiente subclave: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\<SID>\Patches\<PatchSQUID>

      Nota

      Es un riesgo de seguridad volver a crear el registro de caché de actualización de software. Sin embargo, esta es la única forma de reparar los daños. Puede reducir el riesgo de seguridad asegurándose de que la actualización de software sea la actualización de software correcta. Para ello, compruebe la suma de comprobación de la actualización de software.

    3. Crea un valor de cadena LocalPackage en la subclave del Registro que creaste en el paso 2. Asegúrate de que el valor de la cadena LocalPackage esté establecido en la ruta de acceso de la actualización de software.

  3. Elimine las referencias de actualización de software restantes. Para ello, siga estos pasos:

    1. Abra la siguiente subclave y, a continuación, quite el valor de varios sz de <PatchSQUID> "AllPatches": HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\<SID>\Products\<ProductSQUID>\Patches

    2. Elimine la siguiente subclave del Registro: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\<SID>\Products\<ProductSQUID>\Patches\<PatchSQUID>

    3. Elimine la siguiente subclave del Registro: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\<SID>\Patches\<PatchSQUID>

      Nota

      Si falta esta subclave, omita este paso.

    4. Si el producto se instaló por equipo, sigue estos pasos:

      1. Abra la siguiente subclave: HKEY_LOCAL_MACHINE\Software\Classes\Installer\Products\<ProductSQUID>\Patches

        1. Si el <PatchSQUID> valor de cadena está presente, elimínelo.
        2. Si el valor de cadena está presente en el valor <PatchSQUID> "Patches" Multi-sz, elimine el <PatchSQUID> valor de cadena.
      2. Si está presente la siguiente subclave del Registro, elimínelo: HKEY_LOCAL_MACHINE\Software\Classes\Installer\Patches\<PatchSQUID>

    5. Si el producto se instaló por usuario no administrado:

      1. Abra la siguiente subclave del Registro: HKEY_CURRENT_USER\Software\Microsoft\Installer\Products\<ProductSQUID>\Patches

        1. Si el <PatchSQUID> valor de cadena está presente, elimínelo.
        2. Si el <PatchSQUID> valor de "Patches" Multi-sz está presente, quítalo.
      2. Si está presente la siguiente subclave del Registro, elimínelo: HKEY_CURRENT_USER\Software\Microsoft\Installer\Patches\<PatchSQUID>

    6. Si el producto se instaló por usuario administrado:

      1. Abra la siguiente subclave del Registro: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Managed\<SID>\Installer\Products\<ProductSQUID>\Patches

        1. Si el <PatchSQUID> valor de cadena está presente, elimínelo.
        2. Si el <PatchSQUID> valor de "Patches" Multi-sz está presente, quítalo.
      2. Si la siguiente subclave del Registro está presente, elimínelo: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Managed\<SID>\Installer\Patches\<PatchSQUID>

Referencias

Este artículo no es específico para los problemas producidos por Windows Update o Microsoft Update.