¿Cómo puedo saber si Windows 10 fue una instalación nueva o una actualización desde 7/8?

¿Cómo puedo saber si Windows 10 fue una instalación nueva o una actualización desde 7/8?

¿Existe una forma confiable de determinar el historial de actualizaciones del sistema operativo que conduce a Windows 10 o si se trató de una instalación nueva?

Respuesta1

Hay un excelente tutorial en Diez Foros relacionado con un tema aparte:

Cómo mover la carpeta de perfil de los usuarios a otra ubicación en Windows 10

Dentro de ese tutorial, el autor dice lo siguiente:

Necesitamos editar el registro de Windows para "engañar" a Windows haciéndole creer que se trata de una instalación limpia en lugar de una actualización. Para hacer esto abra elEditor de registro(WIN + R, escriba regedit, presione Enter), busque la claveHKEY_LOCAL_MACHINE\SYSTEM\Configuración

Eliminar tanto elDWORDActualizar (panel derecho) yLLAVEActualizar (panel izquierdo), ver captura de pantalla.

La siguiente captura de pantalla del autor muestra las entradas apropiadas en el registro:

Eliminar actualización DWORD

La siguiente área dentro del registro parece ser la clave para determinar si una instalación de Windows 10 fue una actualización o no:

HKEY_LOCAL_MACHINE\SYSTEM\Configuración

Para probar esta teoría, primero inicié una instalación limpia de Windows 10 en mi máquina de prueba y examiné la misma área del registro. La Upgradeclave está notablemente ausente:

Configuración del sistema HKLM

A continuación, utilicé otra máquina para una instalación limpia de Windows 7 y luego realicé una actualización in situ a Windows 10. Al mirar la misma área del registro, vi lo siguiente:

Registro - Configuración de actualización

Observe que la Upgradeclave está presente, junto con una Source OSclave pertinente. Si miramos más de cerca la Source OSclave vemos lo siguiente:

Registro: actualizar el sistema operativo de origen

Puedes ver claramenteWindows 7 Empresaaparece como el valor para el ProductNamerelacionado con la Source OSclave.

Los comentarios de la comunidad llevaron a investigaciones adicionales. Al observar otra máquina que se configuró originalmente con una instalación limpia de la línea base RTM de Windows 10 (versión 1507), vemos lo siguiente:

Actualización del registro: SO de origen 1511

Aunque el sistema operativo de esta computadora se configuró mediante una instalación limpia, la Upgradeclave aún está presente. Sin embargo, cuando examinamos cada Source OSclave, podemos ver que las fechas de cada actualización corresponden aproximadamente al mismo período de tiempo que las dos primeras versiones principales de actualización de funciones de Windows 10: versiones 1511 y 1607. Además, el valor de las ProductNamemuestraWindows 10 Pro, incluso en la Source OSclave más antigua. La Source OSclave más nueva presenta una pista adicional:

Actualización del registro: SO de origen 1607

La última actualización muestra un ReleaseIdvalor de1511, que indica la versión precisa de Windows 10 que se estaba utilizando antes de la actualización.

De lo visto podemos sacar las siguientes conclusiones:

  • La HKLM\SYSTEM\Setupclave de registro nos permite determinar si Windows 10 se configuró originalmente con una instalación limpia o una actualización.
  • Si Upgradefalta la clave, definitivamente fue una instalación limpia.
  • Si la Upgradeclave está allí, podría haber sido generada por una actualización tradicional de Windows (desde Windows 7 o Windows 8.x), o puede haber sido creada durante una actualización importante de características de Windows 10 (por ejemplo, versiones 1511 y 1607).
  • Si la Upgradellave está allí, debe inspeccionarlas Source OS.
  • La Source OSclave más antigua revelará el sistema operativo original dentro del ProductNamevalor correspondiente: si es una versión de Windows 7 o Windows 8, fue una actualización. Si es una variante de Windows 10, fue una instalación limpia.

Respuesta2

Según lo publicado por Magicandre1981 en los comentarios:

Busque el valor MediaBootInstall en

HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Setup/OOBE/.

Si MediaBootInstall = 1, Windows se instaló mediante ISO/DVD.

Si MediaBootInstall = 0, Windows era una actualización

Respuesta3

$Products = Get-ItemProperty -Name ProductName -Path "HKLM:\SYSTEM\SETUP\Source OS*" | select Productname -Unique
if ($Products -like '*7*')
{
WRITE-HOST Upgraded
}
ELSE
{
Write-Host Fresh Install
}

información relacionada