{"id":208624,"date":"2024-01-31T14:34:08","date_gmt":"2024-01-31T14:34:08","guid":{"rendered":"https:\/\/www.ninjaone.com\/script-hub\/actualizacion-automatica-de-windows-11\/"},"modified":"2024-03-04T18:24:18","modified_gmt":"2024-03-04T18:24:18","slug":"actualizacion-automatica-de-windows-11","status":"publish","type":"script_hub","link":"https:\/\/www.ninjaone.com\/es\/script-hub\/actualizacion-automatica-de-windows-11\/","title":{"rendered":"C\u00f3mo desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11 [PowerShell Script]"},"content":{"rendered":"<p>Mientras las empresas de todo el mundo se preparan para adaptarse a la \u00faltima iteraci\u00f3n del sistema operativo de Microsoft, muchos profesionales de TI y proveedores de servicios gestionados (MSP) buscan formas de controlar la transici\u00f3n. Si tu empresa a\u00fan no est\u00e1 preparada para dar el salto y est\u00e1s buscando un m\u00e9todo para desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11, est\u00e1s en el lugar indicado. En este post analizaremos un valioso <strong>script de PowerShell que desactiva la actualizaci\u00f3n autom\u00e1tica de Windows 11<\/strong> de forma eficaz.<\/p>\n<h2>La necesidad de control<\/h2>\n<p>Antes de entrar de lleno en el script, vale la pena considerar por qu\u00e9 alguien podr\u00eda querer desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11. Windows 11 viene con un mont\u00f3n de nuevas funciones y actualizaciones de seguridad, pero todos los profesionales de TI saben que nuevo no siempre significa mejor, al menos no de inmediato. Las nuevas versiones pueden estropear la compatibilidad con el software existente o crear problemas imprevistos que s\u00f3lo son manejables una vez conocidos. Por lo tanto, tener la posibilidad de controlar cu\u00e1ndo actualizar puede ahorrarte dolores de cabeza inesperados.<\/p>\n<h2>El script para desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11<\/h2>\n<p>Este script PowerShell sirve como mecanismo de control. Concretamente, deshabilita la actualizaci\u00f3n autom\u00e1tica de Windows 11 bloqueando TargetReleaseVersion y TargetReleaseVersionInfo a la versi\u00f3n actualmente instalada de tu sistema operativo Windows. Para un equipo de profesionales de TI o MSP, esto es como encontrar oro; ofrece una forma perfecta de gestionar cientos o miles de m\u00e1quinas.<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"powershell\">&lt;#\r\n.SYNOPSIS\r\n    Disables Windows 11 upgrade.\r\n.DESCRIPTION\r\n    Disables Windows 11 upgrade by locking the TargetReleaseVersion and TargetReleaseVersionInfo to the currently installed version.\r\n.EXAMPLE\r\n    No parameters needed\r\n    Disables Windows 11 upgrade.\r\n.OUTPUTS\r\n    None\r\n.NOTES\r\n    Minimum OS Architecture Supported: Windows 10\r\n    Release Notes:\r\n    Disallows the upgrade offer to Windows 11 to appear to users\r\n    (c) 2023 NinjaOne\r\n    By using this script, you indicate your acceptance of the following legal terms as well as our Terms of Use at https:\/\/www.ninjaone.com\/terms-of-use.\r\n    Ownership Rights: NinjaOne owns and will continue to own all right, title, and interest in and to the script (including the copyright). NinjaOne is giving you a limited license to use the script in accordance with these legal terms. \r\n    Use Limitation: You may only use the script for your legitimate personal or internal business purposes, and you may not share the script with another party. \r\n    Republication Prohibition: Under no circumstances are you permitted to re-publish the script in any script library or website belonging to or under the control of any other software provider. \r\n    Warranty Disclaimer: The script is provided \u201cas is\u201d and \u201cas available\u201d, without warranty of any kind. NinjaOne makes no promise or guarantee that the script will be free from defects or that it will meet your specific needs or expectations. \r\n    Assumption of Risk: Your use of the script is at your own risk. You acknowledge that there are certain inherent risks in using the script, and you understand and assume each of those risks. \r\n    Waiver and Release: You will not hold NinjaOne responsible for any adverse or unintended consequences resulting from your use of the script, and you waive any legal or equitable rights or remedies you may have against NinjaOne relating to your use of the script. \r\n    EULA: If you are a NinjaOne customer, your use of the script is subject to the End User License Agreement applicable to you (EULA).\r\n#&gt;\r\n[CmdletBinding()]\r\nparam ()\r\n\r\nbegin {\r\n    function Test-IsElevated {\r\n        $id = [System.Security.Principal.WindowsIdentity]::GetCurrent()\r\n        $p = New-Object System.Security.Principal.WindowsPrincipal($id)\r\n        $p.IsInRole([System.Security.Principal.WindowsBuiltInRole]::Administrator)\r\n    }\r\n    function Set-ItemProp {\r\n        param (\r\n            $Path,\r\n            $Name,\r\n            $Value,\r\n            [ValidateSet(\"DWord\", \"QWord\", \"String\", \"ExpandedString\", \"Binary\", \"MultiString\", \"Unknown\")]\r\n            $PropertyType = \"DWord\"\r\n        )\r\n        # Do not output errors and continue\r\n        $ErrorActionPreference = [System.Management.Automation.ActionPreference]::SilentlyContinue\r\n        if (-not $(Test-Path -Path $Path)) {\r\n            # Check if path does not exist and create the path\r\n            New-Item -Path $Path -Force | Out-Null\r\n        }\r\n        if ((Get-ItemProperty -Path $Path -Name $Name)) {\r\n            # Update property and print out what it was changed from and changed to\r\n            $CurrentValue = Get-ItemProperty -Path $Path -Name $Name\r\n            try {\r\n                Set-ItemProperty -Path $Path -Name $Name -Value $Value -Force -Confirm:$false -ErrorAction Stop | Out-Null\r\n            }\r\n            catch {\r\n                Write-Error $_\r\n            }\r\n            Write-Host \"$Path$Name changed from $CurrentValue to $(Get-ItemProperty -Path $Path -Name $Name)\"\r\n        }\r\n        else {\r\n            # Create property with value\r\n            try {\r\n                New-ItemProperty -Path $Path -Name $Name -Value $Value -PropertyType $PropertyType -Force -Confirm:$false -ErrorAction Stop | Out-Null\r\n            }\r\n            catch {\r\n                Write-Error $_\r\n            }\r\n            Write-Host \"Set $Path$Name to $(Get-ItemProperty -Path $Path -Name $Name)\"\r\n        }\r\n        $ErrorActionPreference = [System.Management.Automation.ActionPreference]::Continue\r\n    }\r\n}\r\nprocess {\r\n    if (-not (Test-IsElevated)) {\r\n        Write-Error -Message \"Access Denied. Please run with Administrator privileges.\"\r\n        exit 1\r\n    }\r\n\r\n    # Get Current Version\r\n    $release = (Get-ItemProperty -Path \"HKLM:SOFTWAREMicrosoftWindows NTCurrentVersion\" -Name ReleaseId).ReleaseId\r\n    $ver = (Get-ItemProperty -Path \"HKLM:SOFTWAREMicrosoftWindows NTCurrentVersion\" -Name DisplayVersion).DisplayVersion\r\n    $TargetReleaseVersion = if ($release -eq '2009') { $ver } Else { $release }\r\n\r\n    # Block Windows 11 Upgrade by changing the target release version to the current version\r\n    try {\r\n        Set-ItemProp -Path \"HKLM:SOFTWAREPoliciesMicrosoftWindowsWindowsUpdate\" -Name \"TargetReleaseVersion\" -Value 1 -PropertyType DWord\r\n        Set-ItemProp -Path \"HKLM:SOFTWAREPoliciesMicrosoftWindowsWindowsUpdate\" -Name \"TargetReleaseVersionInfo\" -Value \"$TargetReleaseVersion\" -PropertyType String\r\n        Set-ItemProp -Path \"HKLM:SOFTWAREMicrosoftWindowsUpdateUXSettings\" -Name \"SvOfferDeclined\" -Value 1646085160366 -PropertyType QWord\r\n    }\r\n    catch {\r\n        Write-Error $_\r\n        Write-Host \"Failed to block Windows 11 Upgrade.\"\r\n        exit 1\r\n    }\r\n    exit 0\r\n}\r\nend {}\r\n<\/pre>\n<p>&nbsp;<\/p>\n\n<div class=\"in-context-cta\"><p>Accede a m\u00e1s de 300 scripts en el Dojo de NinjaOne<\/p>\n<p><a href=\"https:\/\/www.ninjaone.com\/es\/prueba-gratuita-formulario\/\">Obt\u00e9n acceso<\/a><\/p>\n<\/div>\n<h2>Funciones principales del script<\/h2>\n<ol>\n<li><strong>Derechos de administrador<\/strong>: el script incluye una funci\u00f3n para comprobar si se ejecuta con privilegios de administrador, algo fundamental para modificar la configuraci\u00f3n del sistema.<\/li>\n<li><strong>Cambios en el registro<\/strong>: el script modifica la configuraci\u00f3n de <a href=\"https:\/\/www.ninjaone.com\/es\/blog\/exportar-una-clave-de-registro-de-windows\/\">las claves del registro<\/a>, asegurando que las m\u00e1quinas se adhieren a la pol\u00edtica para permanecer en su versi\u00f3n actual.<\/li>\n<li><strong>Escalabilidad<\/strong>: este script puede desplegarse en varios equipos, lo que lo convierte en una herramienta inestimable para los MSP.<\/li>\n<li><strong>No se necesitan par\u00e1metros<\/strong>: con el objetivo de simplificar la experiencia del usuario, el script no requiere ning\u00fan par\u00e1metro para ejecutarse.<\/li>\n<\/ol>\n<h2>C\u00f3mo utilizar el script para desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11<\/h2>\n<ol>\n<li><strong>Guarda el script<\/strong>: guarda el script en un archivo con extensi\u00f3n .ps1, por ejemplo DisableWin11Upgrade.ps1.<\/li>\n<li><strong>Ejecuta como administrador<\/strong>: abre PowerShell como administrador y navega hasta donde est\u00e1 guardado tu script.<\/li>\n<li><strong>Ejecuta<\/strong>: ejecuta DisableWin11Upgrade.ps1.<\/li>\n<\/ol>\n<p>Si el script se ejecuta correctamente, modificar\u00e1 las entradas del registro necesarias para desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11.<\/p>\n<h2>Integraci\u00f3n del script con NinjaOne<\/h2>\n<p>La integraci\u00f3n entre este script PowerShell para desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11 y NinjaOne puede agilizar a\u00fan m\u00e1s el proceso de gesti\u00f3n de actualizaciones.<\/p>\n<h2>Pasos para la integraci\u00f3n:<\/h2>\n<ol>\n<li><strong>Carga del script<\/strong>: utiliza el repositorio de scripts de NinjaOne para cargar el script PowerShell.<\/li>\n<li><strong>Asignaci\u00f3n de pol\u00edticas<\/strong>: una vez cargado, el script puede asignarse a varias pol\u00edticas que controlan un grupo de sistemas o entornos de clientes espec\u00edficos.<\/li>\n<li><strong>Planificaci\u00f3n de la ejecuci\u00f3n<\/strong>: con el programador de NinjaOne, puedes configurar el script para que se ejecute a intervalos espec\u00edficos o durante las ventanas de mantenimiento.<\/li>\n<li><strong>Supervisi\u00f3n y alertas<\/strong>: configura NinjaOne para supervisar las claves de registro espec\u00edficas que modifica el script. De este modo, se te avisar\u00e1 inmediatamente si se produce alg\u00fan cambio.<\/li>\n<li><strong>Reporting<\/strong>: utiliza las herramientas de elaboraci\u00f3n informes de NinjaOne para verificar el \u00e9xito del script en los sistemas gestionados.<\/li>\n<\/ol>\n<p>Al combinar este script de PowerShell con las s\u00f3lidas capacidades de NinjaOne, no s\u00f3lo obtendr\u00e1s un m\u00e9todo para desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11, sino tambi\u00e9n un sistema para gestionar, supervisar e informar sobre esta actividad a gran escala. A\u00f1ade otra capa de eficacia y seguridad a tu entorno de TI.<\/p>\n<h2>Reflexiones finales<\/h2>\n<p>Para los profesionales de TI y los MSP que trabajan con un n\u00famero significativo de sistemas, este script de PowerShell ofrece una forma fiable y eficaz de desactivar la actualizaci\u00f3n autom\u00e1tica de Windows 11 de manera generalizada. No se trata s\u00f3lo de resistirse al cambio, sino de controlarlo para que se adapte mejor a las necesidades de tu organizaci\u00f3n. Ya no estar\u00e1s sujeto a la impredictibilidad de las actualizaciones autom\u00e1ticas que podr\u00edan interrumpir tu entorno de TI cuidadosamente orquestado.<\/p>\n<p>Tal vez te interese tambi\u00e9n este post sobre <a href=\"https:\/\/www.ninjaone.com\/blog\/enable-windows-11-upgrade-powershell\/\">c\u00f3mo activar la actualizaci\u00f3n autom\u00e1tica de Windows 11 con PowerShell<\/a>.<\/p>\n","protected":false},"author":35,"featured_media":207039,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"","_relevanssi_noindex_reason":"","_lmt_disableupdate":"no","_lmt_disable":""},"operating_system":[4212],"use_cases":[4265],"class_list":["post-208624","script_hub","type-script_hub","status-publish","has-post-thumbnail","hentry","script_hub_category-windows","use_cases-configuracion-del-sistema"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/script_hub\/208624","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/script_hub"}],"about":[{"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/types\/script_hub"}],"author":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/users\/35"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/comments?post=208624"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/media\/207039"}],"wp:attachment":[{"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/media?parent=208624"}],"wp:term":[{"taxonomy":"script_hub_category","embeddable":true,"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/operating_system?post=208624"},{"taxonomy":"use_cases","embeddable":true,"href":"https:\/\/www.ninjaone.com\/es\/wp-json\/wp\/v2\/use_cases?post=208624"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}