westlife
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Может сделать что-то из этого. Либо найти способ, если возможно, на подобии, что вам предложил LevT Чтобы было универсально. А в тот параметр реестра у меня диспетчер не сохраняет состояние окна, только сами настройки его, что удобно использовать. Код: powershell start-process taskmgr function Set-WindowStyle { param( [Parameter()] [ValidateSet('FORCEMINIMIZE', 'HIDE', 'MAXIMIZE', 'MINIMIZE', 'RESTORE', 'SHOW', 'SHOWDEFAULT', 'SHOWMAXIMIZED', 'SHOWMINIMIZED', 'SHOWMINNOACTIVE', 'SHOWNA', 'SHOWNOACTIVATE', 'SHOWNORMAL')] $Style = 'SHOW', [Parameter()] $MainWindowHandle = (Get-Process -Id $pid).MainWindowHandle ) $WindowStates = @{ FORCEMINIMIZE = 11; HIDE = 0 MAXIMIZE = 3; MINIMIZE = 6 RESTORE = 9; SHOW = 5 SHOWDEFAULT = 10; SHOWMAXIMIZED = 3 SHOWMINIMIZED = 2; SHOWMINNOACTIVE = 7 SHOWNA = 8; SHOWNOACTIVATE = 4 SHOWNORMAL = 1 } Write-Verbose ("Set Window Style {1} on handle {0}" -f $MainWindowHandle, $($WindowStates[$style])) $Win32ShowWindowAsync = Add-Type –memberDefinition @” [DllImport("user32.dll")] public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); “@ -name “Win32ShowWindowAsync” -namespace Win32Functions –passThru $Win32ShowWindowAsync::ShowWindowAsync($MainWindowHandle, $WindowStates[$Style]) | Out-Null } (Get-Process -Name taskmgr).MainWindowHandle | foreach { Set-WindowStyle MAXIMIZE $_ } | Тут можно задать любое состояние окна для любого процесса. Это не моя функция. Мне просто было интересно, почему так с диспетчером происходит. |