
Windows 10 のアニメーション、特にウィンドウを最大化/最小化するアニメーションを無効にしたいのですが、各キーに独自のレジストリ設定があるようには見えず、次の値のリストにも表示されません。https://technet.microsoft.com/ja-jp/library/cc957204.aspx
これは可能でしょうか、それとも手動で行う必要があるのでしょうか?
アニメーション全体を無効にできれば良いのですが、最大化/最小化アニメーションだけを無効にするスクリプトを記述できれば嬉しいです。
ランニングこの解決策動作しません:
REG ADD "HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics" /v MinAnimate /t REG_SZ /d 0 /f >nul 2>&1
このオプションではログアウト/ログインまたは再起動が必要ですすぐに有効になる手動の方法とは異なります (推奨)。
答え1
PowerShellが使えます!呼び出す必要がありますSystemParametersInfo
適切に構成されたANIMATIONINFO
この Windows API 関数は、変更を直ちに有効にするウィンドウ メッセージを送信するため、構造化する必要があります。私は次のスクリプトを作成しました。
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)
C# 部分は、呼び出す必要のある構造と関数を定義します。次に、スクリプトはアニメーション構成構造を作成し、最後に関数を呼び出します。は、アニメーション設定を設定するように0x49
指示するコードであり、最後のパラメーターの は、ユーザー プロファイルを更新し、設定変更通知を送信することを指定します。SystemParametersInfo
3
スクリプトを使用するには、.ps1
例えば というファイルとして保存しますwindowanim.ps1
。スクリプトの有効化セクションの指示に従ってください。PowerShell タグ ウィキスクリプトの実行を許可するには、バッチ ファイルから次のコマンドを実行してウィンドウ アニメーションを無効にすることができます。
powershell -c .\windowanim.ps1 $false
アニメーションを有効にする場合は、$true
代わりにスクリプトに指定します。
関数の呼び出しが成功すると、True
アニメーションを有効にしたか無効にしたかに関係なく、コンソールに出力されます。