Как отключить эффекты анимации в Windows 11: шаги и советы

Эффекты анимации в Windows: Вопросы и ответы

В последних версиях Windows доступна функция настройки эффектов анимации через раздел удобства доступа. Это позволяет пользователям оптимизировать визуальные эффекты своих приложений, однако многим может возникнуть вопрос: как программно переключить эти настройки? В данной статье мы рассмотрим информацию о том, как управлять эффектами анимации в Windows, а также проанализируем подходы к решению этой задачи.

Контекст

При доступе к ms-settings:easeofaccess-visualeffects в среде windows.immersivecontrolpanel_10.0.8.1000 можно заметить опцию «Эффекты анимации». При переключении этой опции, анимация, по крайней мере для приложений WinUI версии 2 и выше, либо отключается, либо включается.

Как отключить эффекты анимации в Windows 11: шаги и советы

Как программно переключить эффекты анимации?

Вопрос о том, как можно программно управлять этой настройкой, появляется конечно не случайно. Используя возможности операционной системы, можно попытаться изменить состояние эффекта анимации через язык программирования, например, PowerShell.

Обоснование

Существует несколько ресурсов, которые поднимают данную тематику. Например,Threads на таких платформах, как KDE Discuss подчеркивают, что возможность предоставления шагов для воспроизведения будет полезной для выявления более глубоких вопросов в данной области. На GitHub также обсуждается отложение системных предпочтений, что связано с аналогичными вопросами.

Диагноз

Недавно было исследовано, что фрагмент кода, такой как приведенный ниже, может помочь:

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)

Код выше предназначен для управления анимацией, однако важно отметить, что, как указывается в комментарии, он не влияет на переключение «Эффектов анимации» в ms-settings:easeofaccess-visualeffects.

Отсутствие дубликатов

Это подчеркивает, что существует различие между настройками, которые доступны программно, и теми, которые управляются через интерфейс пользователя в Windows. Поэтому было принято решение отдельно рассмотреть данный вопрос.

Среда

Приложение

Для получения информации об установленном приложении windows.immersivecontrolpanel можно использовать следующий код:

#!/usr/bin/env pwsh
#Requires -PSEdition Core
#Requires -version 7.6.0

If ([OperatingSystem]::IsWindows() -Eq $True) {
    Get-AppxPackage -Name windows.immersivecontrolpanel | Select-Object -Property @(
        'Name',
        'Version'
    ) | Format-List
}

Вывод информации о версии:

Name    : windows.immersivecontrolpanel
Version : 10.0.8.1000

Операционная система

Чтобы узнать версию операционной системы, можно воспользоваться следующим скриптом на PowerShell:

#!/usr/bin/env pwsh
#Requires -PSEdition Core
#Requires -version 7.6.0

If ([OperatingSystem]::IsWindows() -Eq $True) {
    Get-ComputerInfo | Select-Object -Property @(
        'OsName',
        'OsOperatingSystemSKU',
        'OsVersion',
        'OsBuildNumber'
    ) | Format-List
}

Вывод информации о версии операционной системы может выглядеть следующим образом:

OsName               : Microsoft Windows 11 Pro
OsOperatingSystemSKU : 48
OsVersion            : 10.0.26120
OsBuildNumber        : 26120

Заключение

Управление эффектами анимации в Windows может показаться сложной задачей, особенно при отсутствии четкой документации. Программные методы могут помочь в некоторой степени, однако важно помнить о различиях между настройками и теми эффектами, которые доступны через интерфейс Windows. Следите за обновлениями и испытайте различные подходы для решения этой задачи!

Источник

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *