Browse Source

v4.5.0.1 11.06.2020

## Windows 10 2004 Version

## Updated

- Updated "Remove Windows capabilities" section
  - Moved Notepad from the $CheckedCapabilities variable to the $ExcludedCapabilities
  - To restore uninstalled Notepad execute

    ```powershell
    Get-WindowsCapability -Online -Name Microsoft.Windows.Notepad* | Add-WindowsCapability -Online -Verbose
    ```

- Updated "Turn on hardware-accelerated GPU scheduling" section
  - Added determining whether an OS is not installed on a virtual machine

## Версия для Windows 10 2004

## Обновлено

- Обновлен раздел "Удалить дополнительные компоненты Windows"
  - Компонент "Блокнот" перемещен из переменной $CheckedCapabilities в переменную $ExcludedCapabilities
  - Чтобы восстановить удаленный Блокнот, выполните

    ```powershell
    Get-WindowsCapability -Online -Name Microsoft.Windows.Notepad* | Add-WindowsCapability -Online -Verbose
    ```

- Обновлен раздел "Включить планирование графического процессора с аппаратным ускорением"
  - Добавлена проверка не установлена ли ОС на виртуальной машине
pull/59/head 4.5.0.1
Dmitry Nefedov 5 years ago
committed by GitHub
parent
commit
8bfa86c67f
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 58
      Win 10 2004.ps1

58
Win 10 2004.ps1

@ -957,9 +957,6 @@ $CheckedCapabilities = @(
"Media.WindowsMediaPlayer*" "Media.WindowsMediaPlayer*"
# Microsoft Paint # Microsoft Paint
"Microsoft.Windows.MSPaint*" "Microsoft.Windows.MSPaint*"
# Notepad
# Блокнот
"Microsoft.Windows.Notepad*"
# WordPad # WordPad
"Microsoft.Windows.WordPad*" "Microsoft.Windows.WordPad*"
# Integrated faxing and scanning application for Windows # Integrated faxing and scanning application for Windows
@ -975,7 +972,7 @@ if ((Get-CimInstance -ClassName Win32_ComputerSystem).PCSystemType -ne 2)
$CheckedCapabilities += "Hello.Face*" $CheckedCapabilities += "Hello.Face*"
} }
# Windows capabilities that will be shown in the form # Windows capabilities that will be shown in the form
# Дополнительные компоненты Windows, которые будут выводиться в form # Дополнительные компоненты Windows, которые будут выводиться в форме
$ExcludedCapabilities = @( $ExcludedCapabilities = @(
# The DirectX Database to configure and optimize apps when multiple Graphics Adapters are present # The DirectX Database to configure and optimize apps when multiple Graphics Adapters are present
# База данных DirectX для настройки и оптимизации приложений при наличии нескольких графических адаптеров # База данных DirectX для настройки и оптимизации приложений при наличии нескольких графических адаптеров
@ -983,8 +980,11 @@ $ExcludedCapabilities = @(
# Language components # Language components
# Языковые компоненты # Языковые компоненты
"Language\." "Language\."
# Notepad
# Блокнот
"Microsoft.Windows.Notepad*"
# Mail, contacts, and calendar sync component # Mail, contacts, and calendar sync component
# Компонент синхронизации почты, контактов и календаря. # Компонент синхронизации почты, контактов и календаря
"OneCoreUAP\.OneSync" "OneCoreUAP\.OneSync"
# Management of printers, printer drivers, and printer servers # Management of printers, printer drivers, and printer servers
# Управление принтерами, драйверами принтеров и принт-серверами # Управление принтерами, драйверами принтеров и принт-серверами
@ -1261,7 +1261,7 @@ if (Get-WindowsEdition -Online | Where-Object -FilterScript {$_.Edition -eq "Pro
{ {
try try
{ {
# Checking whether a Hyper-V is enabled # Determining whether a Hyper-V is enabled
# Проверка: включен ли Hyper-V # Проверка: включен ли Hyper-V
if ((Get-CimInstance -ClassName CIM_ComputerSystem).HypervisorPresent -eq $true) if ((Get-CimInstance -ClassName CIM_ComputerSystem).HypervisorPresent -eq $true)
{ {
@ -1414,8 +1414,8 @@ function UserShellFolder
"IconFile=%SystemRoot%\system32\shell32.dll","IconIndex=-238" "IconFile=%SystemRoot%\system32\shell32.dll","IconIndex=-238"
} }
# Checking the current user folder path # Determining the current user folder path
# Проверяем текущее значение пути пользовательской папки # Определяем текущее значение пути пользовательской папки
$UserShellFolderRegValue = Get-ItemPropertyValue -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" -Name $UserShellFoldersRegName[$UserFolder] $UserShellFolderRegValue = Get-ItemPropertyValue -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" -Name $UserShellFoldersRegName[$UserFolder]
if ($UserShellFolderRegValue -ne $FolderPath) if ($UserShellFolderRegValue -ne $FolderPath)
{ {
@ -2526,16 +2526,26 @@ if (Get-CimInstance -ClassName Win32_VideoController | Where-Object -FilterScrip
} }
} }
# Turn on hardware-accelerated GPU scheduling. Restart needed <#
# Включить планирование графического процессора с аппаратным ускорением. Необходима перезагрузка Turn on hardware-accelerated GPU scheduling. Restart needed
Determining whether the PC has a dedicated GPU to use this feature
Включить планирование графического процессора с аппаратным ускорением. Необходима перезагрузка
Определяем, имеется ли у ПК внешняя видеокарта для использования данной функции
#>
if ((Get-CimInstance -ClassName CIM_VideoController | Where-Object -FilterScript {$_.AdapterDACType -ne "Internal"})) if ((Get-CimInstance -ClassName CIM_VideoController | Where-Object -FilterScript {$_.AdapterDACType -ne "Internal"}))
{ {
# Checking whether a WDDM verion is 2.7 or higher # Determining whether an OS is not installed on a virtual machine
# Проверка: имеет ли WDDM версию 2.7 или выше # Проверяем, не установлена ли ОС на виртуальной машине
$WddmVersion_Min = Get-ItemPropertyValue -Path HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\FeatureSetUsage -Name WddmVersion_Min if ((Get-CimInstance -ClassName CIM_ComputerSystem).Model -notmatch "Virtual")
if ($WddmVersion_Min -ge 2700)
{ {
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers" -Name HwSchMode -PropertyType DWord -Value 2 -Force # Checking whether a WDDM verion is 2.7 or higher
# Проверка: имеет ли WDDM версию 2.7 или выше
$WddmVersion_Min = Get-ItemPropertyValue -Path HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\FeatureSetUsage -Name WddmVersion_Min
if ($WddmVersion_Min -ge 2700)
{
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers" -Name HwSchMode -PropertyType DWord -Value 2 -Force
}
} }
} }
#endregion Gaming #endregion Gaming
@ -2644,18 +2654,18 @@ $SourceMainWindowHandle = (Get-Process -Name cleanmgr).MainWindowHandle
function MinimizeWindow function MinimizeWindow
{ {
[CmdletBinding()] [CmdletBinding()]
Param param
( (
[Parameter(Mandatory = $true)] [Parameter(Mandatory = $true)]
$Process $Process
) )
$ShowWindowAsync = @{ $ShowWindowAsync = @{
Namespace = "WinAPI" Namespace = "WinAPI"
Name = "Win32ShowWindowAsync" Name = "Win32ShowWindowAsync"
Language = "CSharp" Language = "CSharp"
MemberDefinition = @" MemberDefinition = @"
[DllImport("user32.dll")] [DllImport("user32.dll")]
public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow); public static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
"@ "@
} }
if (-not ("WinAPI.Win32ShowWindowAsync" -as [type])) if (-not ("WinAPI.Win32ShowWindowAsync" -as [type]))

Loading…
Cancel
Save