
Me gustaría deshabilitar las animaciones en Windows 10, específicamente las animaciones para maximizar/minimizar ventanas. No parece que cada clave tenga su propia configuración de registro y no la veo en esta lista de valores:https://technet.microsoft.com/en-us/library/cc957204.aspx
¿Es esto posible o es algo que tendría que hacer manualmente?
Sería bueno si pudiera deshabilitar las animaciones en general, pero sería feliz si pudiera escribir un script que deshabilitara solo las animaciones de maximizar/minimizar:
Correresta soluciónNo funciona:
REG ADD "HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics" /v MinAnimate /t REG_SZ /d 0 /f >nul 2>&1
Esta opción requiere cerrar sesión/iniciar sesión o reiniciar, a diferencia del método manual que surte efecto inmediatamente (preferido).
Respuesta1
¡Puedes usar PowerShell! Necesitamos invocarSystemParametersInfo
con una configuración adecuadaANIMATIONINFO
estructura, ya que esa función API de Windows envía el mensaje de ventana que hace que el cambio entre en vigor inmediatamente. Escribí este guión:
Add-Type -TypeDefinition @"
using System;
using System.Runtime.InteropServices;
[StructLayout(LayoutKind.Sequential)] public struct ANIMATIONINFO {
public uint cbSize;
public bool iMinAnimate;
}
public class PInvoke {
[DllImport("user32.dll")] public static extern bool SystemParametersInfoW(uint uiAction, uint uiParam, ref ANIMATIONINFO pvParam, uint fWinIni);
}
"@
$animInfo = New-Object ANIMATIONINFO
$animInfo.cbSize = 8
$animInfo.iMinAnimate = $args[0]
[PInvoke]::SystemParametersInfoW(0x49, 0, [ref]$animInfo, 3)
La parte de C# define la estructura y función que debemos llamar. Luego, el script crea la estructura de configuración de la animación y finalmente llama a la función. 0x49
es el código que indica SystemParametersInfo
establecer la configuración de animación y 3
en el último parámetro especifica que queremos que se actualice el perfil del usuario y se envíe la notificación de cambio de configuración.
Para utilizar el script, guárdelo como un .ps1
archivo, por ejemplo windowanim.ps1
. Siga las instrucciones en la sección Habilitación de scripts dela wiki de etiquetas de PowerShellpara permitir la ejecución del script, puede ejecutar este comando desde un archivo por lotes para deshabilitar las animaciones de la ventana:
powershell -c .\windowanim.ps1 $false
Si desea habilitar las animaciones, proporciónelas $true
al script.
Si la invocación de la función es exitosa, verás las True
animaciones impresas en la consola, sin importar si habilitaste o deshabilitaste.