diff --git a/W10_11StoreApps.bat b/W10_11StoreApps.bat
deleted file mode 100644
index 71574267..00000000
--- a/W10_11StoreApps.bat
+++ /dev/null
@@ -1,2 +0,0 @@
-@echo off
-powershell -noprofile -executionpolicy bypass -file W10_11StoreApps.ps1
diff --git a/W10_11StoreApps.ps1 b/W10_11StoreApps.ps1
deleted file mode 100644
index ce247919..00000000
--- a/W10_11StoreApps.ps1
+++ /dev/null
@@ -1,448 +0,0 @@
-$PackageList = ConvertFrom-Csv @'
- Identity, Family
- Clipchamp.Clipchamp, Clipchamp.Clipchamp_yxz26nhyzhsrt
- Microsoft.AV1VideoExtension, Microsoft.AV1VideoExtension_8wekyb3d8bbwe
- Microsoft.BingNews, Microsoft.BingNews_8wekyb3d8bbwe
- Microsoft.BingWeather, Microsoft.BingWeather_8wekyb3d8bbwe
- Microsoft.Cortana, Microsoft.549981C3F5F10_8wekyb3d8bbwe
- Microsoft.DesktopAppInstaller, Microsoft.DesktopAppInstaller_8wekyb3d8bbwe
- Microsoft.GamingApp, Microsoft.GamingApp_8wekyb3d8bbwe
- Microsoft.GamingServices, Microsoft.GamingServices_8wekyb3d8bbwe
- Microsoft.GetHelp, Microsoft.GetHelp_8wekyb3d8bbwe
- Microsoft.Getstarted, Microsoft.Getstarted_8wekyb3d8bbwe
- Microsoft.HEIFImageExtension, Microsoft.HEIFImageExtension_8wekyb3d8bbwe
- Microsoft.HEVCVideoExtension, Microsoft.HEVCVideoExtension_8wekyb3d8bbwe
- Microsoft.Microsoft3DViewer, Microsoft.Microsoft3DViewer_8wekyb3d8bbwe
- Microsoft.MicrosoftFamily, MicrosoftCorporationII.MicrosoftFamily_8wekyb3d8bbwe
- Microsoft.MicrosoftHoloLens, Microsoft.MicrosoftHoloLens_8wekyb3d8bbwe
- Microsoft.MicrosoftJournal, Microsoft.MicrosoftJournal_8wekyb3d8bbwe
- Microsoft.MicrosoftOfficeHub, Microsoft.MicrosoftOfficeHub_8wekyb3d8bbwe
- Microsoft.MicrosoftOneDrive, Microsoft.MicrosoftSkyDrive_8wekyb3d8bbwe
- Microsoft.MicrosoftSolitaireCollection, Microsoft.MicrosoftSolitaireCollection_8wekyb3d8bbwe
- Microsoft.MicrosoftStickyNotes, Microsoft.MicrosoftStickyNotes_8wekyb3d8bbwe
- Microsoft.MixedReality.Portal, Microsoft.MixedReality.Portal_8wekyb3d8bbwe
- Microsoft.MPEG2VideoExtension, Microsoft.MPEG2VideoExtension_8wekyb3d8bbwe
- Microsoft.MSPaint, Microsoft.MSPaint_8wekyb3d8bbwe
- Microsoft.Office.Excel, Microsoft.Office.Excel_8wekyb3d8bbwe
- Microsoft.Office.OneNote, Microsoft.Office.OneNote_8wekyb3d8bbwe
- Microsoft.Office.PowerPoint, Microsoft.Office.PowerPoint_8wekyb3d8bbwe
- Microsoft.Office.Word, Microsoft.Office.Word_8wekyb3d8bbwe
- Microsoft.Paint, Microsoft.Paint_8wekyb3d8bbwe
- Microsoft.People, Microsoft.People_8wekyb3d8bbwe
- Microsoft.PowerAutomateDesktop, Microsoft.PowerAutomateDesktop_8wekyb3d8bbwe
- Microsoft.PowerShell, Microsoft.PowerShell_8wekyb3d8bbwe
- Microsoft.QuickAssist, MicrosoftCorporationII.QuickAssist_8wekyb3d8bbwe
- Microsoft.RawImageExtension, Microsoft.RawImageExtension_8wekyb3d8bbwe
- Microsoft.RemoteDesktop, Microsoft.RemoteDesktop_8wekyb3d8bbwe
- Microsoft.ScreenSketch, Microsoft.ScreenSketch_8wekyb3d8bbwe
- Microsoft.Services.Store.Engagement, Microsoft.Services.Store.Engagement_8wekyb3d8bbwe
- Microsoft.SkypeApp, Microsoft.SkypeApp_kzf8qxf38zg5c
- Microsoft.StorePurchaseApp, Microsoft.StorePurchaseApp_8wekyb3d8bbwe
- Microsoft.SysinternalsSuite, Microsoft.SysinternalsSuite_8wekyb3d8bbwe
- Microsoft.Todos, Microsoft.Todos_8wekyb3d8bbwe
- Microsoft.VP9VideoExtensions, Microsoft.VP9VideoExtensions_8wekyb3d8bbwe
- Microsoft.WebMediaExtensions, Microsoft.WebMediaExtensions_8wekyb3d8bbwe
- Microsoft.WebpImageExtension, Microsoft.WebpImageExtension_8wekyb3d8bbwe
- Microsoft.Whiteboard, Microsoft.Whiteboard_8wekyb3d8bbwe
- Microsoft.WindowsAlarms, Microsoft.WindowsAlarms_8wekyb3d8bbwe
- Microsoft.WindowsCalculator, Microsoft.WindowsCalculator_8wekyb3d8bbwe
- Microsoft.WindowsCamera, Microsoft.WindowsCamera_8wekyb3d8bbwe
- MicrosoftWindows.Client.WebExperience, MicrosoftWindows.Client.WebExperience_cw5n1h2txyewy
- Microsoft.WindowsCommunicationsApps, Microsoft.WindowsCommunicationsApps_8wekyb3d8bbwe
- Microsoft.WindowsDefenderApplicationGuard, Microsoft.WindowsDefenderApplicationGuard_8wekyb3d8bbwe
- Microsoft.WindowsFeedbackHub, Microsoft.WindowsFeedbackHub_8wekyb3d8bbwe
- Microsoft.WindowsMaps, Microsoft.WindowsMaps_8wekyb3d8bbwe
- Microsoft.WindowsNotepad, Microsoft.WindowsNotepad_8wekyb3d8bbwe
- Microsoft.Windows.Photos, Microsoft.Windows.Photos_8wekyb3d8bbwe
- Microsoft.WindowsScan, Microsoft.WindowsScan_8wekyb3d8bbwe
- Microsoft.WindowsSoundRecorder, Microsoft.WindowsSoundRecorder_8wekyb3d8bbwe
- Microsoft.WindowsStore, Microsoft.WindowsStore_8wekyb3d8bbwe
- Microsoft.WindowsSubsystemForAndroid, MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe
- Microsoft.WindowsSubsystemforLinux, MicrosoftCorporationII.WindowsSubsystemforLinux_8wekyb3d8bbwe
- Microsoft.WindowsTerminal, Microsoft.WindowsTerminal_8wekyb3d8bbwe
- Microsoft.XboxApp, Microsoft.XboxApp_8wekyb3d8bbwe
- Microsoft.XboxDevices, Microsoft.XboxDevices_8wekyb3d8bbwe
- Microsoft.XboxGameOverlay, Microsoft.XboxGameOverlay_8wekyb3d8bbwe
- Microsoft.XboxGamingOverlay, Microsoft.XboxGamingOverlay_8wekyb3d8bbwe
- Microsoft.XboxIdentityProvider, Microsoft.XboxIdentityProvider_8wekyb3d8bbwe
- Microsoft.XboxSpeechToTextOverlay, Microsoft.XboxSpeechToTextOverlay_8wekyb3d8bbwe
- Microsoft.Xbox.TCUI, Microsoft.Xbox.TCUI_8wekyb3d8bbwe
- Microsoft.YourPhone, Microsoft.YourPhone_8wekyb3d8bbwe
- Microsoft.ZuneMusic, Microsoft.ZuneMusic_8wekyb3d8bbwe
- Microsoft.ZuneVideo, Microsoft.ZuneVideo_8wekyb3d8bbwe
- Amazon.AmazonAppstore, Amazon.comServicesLLC.AmazonAppstore_bvztej1py64t8
- AMD.AMDRadeonSoftware, AdvancedMicroDevicesInc-2.AMDRadeonSoftware_0a9344xs7nr4m
- Apple.iCloud, AppleInc.iCloud_nzyj5cx40ttqa
- Apple.iTunes, AppleInc.iTunes_nzyj5cx40ttqa
- Canonical.Ubuntu, CanonicalGroupLimited.Ubuntu_79rhkp1fndgsc
- Canonical.Ubuntu18.04, CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc
- Canonical.Ubuntu20.04LTS, CanonicalGroupLimited.Ubuntu20.04LTS_79rhkp1fndgsc
- Debian.DebianGNULinux, TheDebianProject.DebianGNULinux_76v4gfsz19hv4
- Intel.IntelGraphicsExperience, AppUp.IntelGraphicsExperience_8j3eq9eme6ctt
- Mozilla.Firefox, Mozilla.Firefox_n80bbvh6b1yt2
- NVIDIA.NVIDIAControlPanel, NVIDIACorp.NVIDIAControlPanel_56jybvy8sckqj
-'@
-
-$DependencyList = [ordered]@{
- 'Microsoft.Advertising.Xaml' = $null
- 'Microsoft.NET.Native.Framework' = $null
- 'Microsoft.NET.Native.Runtime' = $null
- 'Microsoft.Services.Store.Engagement' = $null
- 'Microsoft.UI.Xaml' = $null
- 'UWPDesktop'= $null
- 'Microsoft.VCLibs' = $null
- 'Microsoft.WinJS' = $null
-}
-
-$RingList = ConvertFrom-Csv @'
- Name, Value
- Fast, WIF
- Slow, WIS
- Preview, RP
- Retail, Retail
-'@
-
-############
-
-$CurrentUser = New-Object Security.Principal.WindowsPrincipal ([Security.Principal.WindowsIdentity]::GetCurrent())
-$Elevated = $CurrentUser.IsInRole([Security.Principal.WindowsBuiltinRole]::Administrator)
-
-$CheckListBox= {
- if (($Package_ListBox.SelectedIndex -gt -1 -or $ProductID_TextBox.Text -ne $null) -and $Arch_ListBox.SelectedIndex -gt -1 -and $Ring_ListBox.SelectedIndex -gt -1) {
- $OKButton.Enabled = $true
- }
-}
-
-[void][System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
-[void][System.Reflection.Assembly]::LoadWithPartialName("System.Drawing")
-
-$objForm = New-Object System.Windows.Forms.Form
-$objForm.Text = 'Microsoft Store Apps v1.02'
-$objForm.Size = New-Object System.Drawing.Size(600,465)
-$objForm.StartPosition = 'CenterScreen'
-
-$Package_Label = New-Object System.Windows.Forms.Label
-$Package_Label.Location = New-Object System.Drawing.Point(25,10)
-$Package_Label.Size = New-Object System.Drawing.Size(365,20)
-$Package_Label.Font = [System.Drawing.Font]::new($Package_Label.Font.Name, $Package_Label.Font.Size, [System.Drawing.FontStyle]::Bold)
-$Package_Label.Text = 'Package'
-
-$objForm.Controls.Add($Package_Label)
-
-$Package_ListBox = New-Object System.Windows.Forms.ListBox
-$Package_ListBox.Location = New-Object System.Drawing.Point(25,35)
-$Package_ListBox.Size = New-Object System.Drawing.Size(365,20)
-$Package_ListBox.Height = 220
-$Package_ListBox.add_SelectedIndexChanged({$ProductID_TextBox.Clear(); $CheckListBox})
-
-Foreach ($item in $PackageList.Identity) {
- [void]$Package_ListBox.Items.Add($item)
-}
-$objForm.Controls.Add($Package_ListBox)
-
-$ProductID_Label = New-Object System.Windows.Forms.Label
-$ProductID_Label.Location = New-Object System.Drawing.Point(25,255)
-$ProductID_Label.Size = New-Object System.Drawing.Size(125,20)
-$ProductID_Label.Font = [System.Drawing.Font]::new($ProductID_Label.Font.Name, $ProductID_Label.Font.Size, [System.Drawing.FontStyle]::Bold)
-$ProductID_Label.Text = 'App Product ID'
-
-$objForm.Controls.Add($ProductID_Label)
-
-$ProductID_TextBox = New-Object System.Windows.Forms.TextBox
-$ProductID_TextBox.Location = New-Object System.Drawing.Point(160,251)
-$ProductID_TextBox.Size = New-Object System.Drawing.Size(155,20)
-$ProductID_TextBox.Add_TextChanged({$Package_ListBox.ClearSelected()})
-
-$objForm.Controls.Add($ProductID_TextBox)
-
-$Arch_Label = New-Object System.Windows.Forms.Label
-$Arch_Label.Location = New-Object System.Drawing.Point(410,10)
-$Arch_Label.Size = New-Object System.Drawing.Size(65,20)
-$Arch_Label.Font = [System.Drawing.Font]::new($Arch_Label.Font.Name, $Arch_Label.Font.Size, [System.Drawing.FontStyle]::Bold)
-$Arch_Label.Text = 'Arch'
-
-$objForm.Controls.Add($Arch_Label)
-
-$Arch_ListBox = New-Object System.Windows.Forms.ListBox
-$Arch_ListBox.Location = New-Object System.Drawing.Point(410,35)
-$Arch_ListBox.Size = New-Object System.Drawing.Size(65,20)
-$Arch_ListBox.Height = 90
-$Arch_ListBox.add_SelectedIndexChanged($CheckListBox)
-
-[void]$Arch_ListBox.Items.AddRange(@('x64','x86','arm64','arm'))
-$objForm.Controls.Add($Arch_ListBox)
-
-$Ring_Label = New-Object System.Windows.Forms.Label
-$Ring_Label.Location = New-Object System.Drawing.Point(495,10)
-$Ring_Label.Size = New-Object System.Drawing.Size(70,20)
-$Ring_Label.Font = [System.Drawing.Font]::new($Ring_Label.Font.Name, $Ring_Label.Font.Size, [System.Drawing.FontStyle]::Bold)
-$Ring_Label.Text = 'Ring'
-
-$objForm.Controls.Add($Ring_Label)
-
-$Ring_ListBox = New-Object System.Windows.Forms.ListBox
-$Ring_ListBox.Location = New-Object System.Drawing.Point(495,35)
-$Ring_ListBox.Size = New-Object System.Drawing.Size(70,20)
-$Ring_ListBox.Height = 90
-$Ring_ListBox.add_SelectedIndexChanged($CheckListBox)
-
-Foreach ($item in $RingList.Name) {
- [void]$Ring_ListBox.Items.Add($item)
-}
-$Ring_ListBox.SetSelected(3,$true)
-
-$objForm.Controls.Add($Ring_ListBox)
-
-$PreReq_Checkbox = New-Object System.Windows.Forms.Checkbox
-$PreReq_Checkbox.Location = New-Object System.Drawing.Point(25,295)
-$PreReq_Checkbox.Size = New-Object System.Drawing.Size(215,25)
-$PreReq_Checkbox.Text = 'Download Dependencies'
-$PreReq_Checkbox.Checked = $true
-
-$objForm.Controls.Add($PreReq_Checkbox)
-
-$ShowAll_Checkbox = New-Object System.Windows.Forms.Checkbox
-$ShowAll_Checkbox.Location = New-Object System.Drawing.Point(25,325)
-$ShowAll_Checkbox.Size = New-Object System.Drawing.Size(215,25)
-$ShowAll_Checkbox.Text = 'Show All Versions'
-$ShowAll_Checkbox.Checked = $false
-
-$objForm.Controls.Add($ShowAll_Checkbox)
-
-if ($Elevated -eq $true) {
- $Sideload_Checkbox = New-Object System.Windows.Forms.Checkbox
- $Sideload_Checkbox.Location = New-Object System.Drawing.Point(305,295)
- $Sideload_Checkbox.Size = New-Object System.Drawing.Size(365,25)
- $Sideload_Checkbox.Text = 'Install Packages'
- $Sideload_Checkbox.Checked = $false
-
- $objForm.Controls.Add($Sideload_Checkbox)
-}
-
-$FormGraphics = $objForm.CreateGraphics()
-$Pen = New-Object Drawing.Pen Black
-#$objForm.Add_Paint({$FormGraphics.DrawLine($Pen,300,0,300,465)})
-#$objForm.Add_Paint({$FormGraphics.DrawLine($Pen,301,0,301,465)})
-
-$OKButton = New-Object System.Windows.Forms.Button
-$OKButton.Location = New-Object System.Drawing.Point(222,367)
-$OKButton.Size = New-Object System.Drawing.Size(75,30)
-$OKButton.Text = 'OK'
-$OKButton.Add_Click({$OKButton.Enabled = $false})
-$OKButton.DialogResult = [System.Windows.Forms.DialogResult]::OK
-
-$objForm.Controls.Add($OKButton)
-
-$CancelButton = New-Object System.Windows.Forms.Button
-$CancelButton.Location = New-Object System.Drawing.Point(305,367)
-$CancelButton.Size = New-Object System.Drawing.Size(75,30)
-$CancelButton.Text = 'Cancel'
-$CancelButton.Add_Click({$objForm.Close()})
-
-$objForm.Controls.Add($CancelButton)
-
-$objForm.Topmost = $true
-$objForm.Add_Shown({$objForm.Activate()})
-
-$OKButton.Enabled = $false
-$Result = $objForm.ShowDialog()
-
-if ($Result -ne [System.Windows.Forms.DialogResult]::OK) {
- Exit
-}
-
-############
-
-$PackageFamily = $($PackageList | Where {$_.Identity -eq $Package_ListBox.SelectedItem}).Family
-$Arch = $Arch_ListBox.SelectedItem
-$Ring = $($RingList | Where {$_.Name -eq $Ring_ListBox.SelectedItem}).Value
-
-$ProgressPreference = 'SilentlyContinue'
-
-if ($ProductID_TextBox.Text -eq '') {
- try {
- $Response = Invoke-WebRequest -UseBasicParsing -Method 'POST' -Uri 'https://store.rg-adguard.net/api/GetFiles' `
- -Body "type=PackageFamilyName&url=$PackageFamily&ring=$Ring&lang=en-US"
- }
- catch {
- $_.Exception
- Exit 1
- }
-}
-else {
- $ProductID = $ProductID_TextBox.Text
-
- try {
- $Response = Invoke-WebRequest -UseBasicParsing -Method 'POST' -Uri 'https://store.rg-adguard.net/api/GetFiles' `
- -Body "type=ProductId&url=$ProductID&ring=$Ring&lang=en-US"
- }
- catch {
- $_.Exception
- Exit 1
- }
-}
-
-$Links = $Response.Links.outerHTML | Where-Object {$_ -notmatch 'BlockMap' -and $_ -notmatch '\.eappx' `
- -and $_ -notmatch '\.emsix' -and ($_ -match "$Arch" -or $_ -match '_neutral_')}
-
-$FileList = New-Object System.Collections.ArrayList
-
-Foreach ($File in $Links) {
- $Package = $File.Split('>')[1].Split('<')[0]
- $Family = $Package.Split('_')[0]
- $Version = $Package.Split('_')[1]
-
- $null = $FileList.Add([PSCustomObject]@{'Package' = $Package; 'Family' = $Family; 'Version' = [Version]$Version})
-}
-
-$AppsOnlyList = New-Object System.Collections.ArrayList
-
-Foreach ($File in ($FileList | Sort-Object -Property Family,Version)) {
- $match = $false
-
- Foreach ($PreReq in ($DependencyList.GetEnumerator()).Name) {
- if ($File.Family -match $PreReq) {
- $DependencyList[$PreReq] = $File.Package
- $match = $true
- break
- }
- }
-
- if ($match -eq $false) {
- $URL = ($Links | Where-Object {$_-match $File.Package}).Split('"')[1]
-
- try {
- $Response = Invoke-WebRequest -UseBasicParsing -Method 'HEAD' -Uri $URL
- }
- catch {
- $_.Exception
- Exit 1
- }
-
- $LastModified = ([DateTime][string]$Response.Headers['Last-Modified']).ToString('yyyy-MM-dd HH:mm tt')
- $Length = [uint32][string]$Response.Headers['Content-Length']
-
- if ($Length -ge 1GB) {
- $Size = '{0:N2} GB' -f [float]($Length/1GB)
- }
- elseif ($Length -ge 1MB) {
- $Size = '{0:N2} MB' -f [float]($Length/1MB)
- }
- else {
- $Size = '{0:N2} KB' -f [float]($Length/1KB)
- }
-
- $null = $AppsOnlyList.Add([PSCustomObject]@{'Package' = $File.Package; 'Family' = $File.Family; 'Version' = [Version]$File.Version; `
- 'Major' = $File.Version.Major; 'Last-Modified' = $LastModified; 'Size' = $Size})
- }
-}
-
-if ($AppsOnlyList.Count -eq 0) {
- $null = $AppsOnlyList.Add([PSCustomObject]@{'Package' = 'No packages listed.'})
- $AppsOnlyList | Out-GridView -Title 'Select Packages for Download' -PassThru | Out-Null
- Exit
-}
-
-if ($ShowAll_Checkbox.Checked -eq $false) {
- $UserSelected = ($AppsOnlyList | Group-Object -Property Major | Foreach { $_.Group | Sort Last-Modified | Select -Last 1 } | `
- Select-Object Family,Version,Package,Last-Modified,Size | Sort-Object -Property Last-Modified | `
- Out-GridView -Title 'Select Packages for Download' -PassThru).Package
-}
-else {
- $UserSelected = ($AppsOnlyList | Select-Object Family,Version,Package,Last-Modified,Size | Sort-Object -Property Last-Modified | `
- Out-GridView -Title 'Select Packages for Download' -PassThru).Package
-}
-
-if (($UserSelected).Count -eq 0) {
- Exit
-}
-
-$DependencyPath = @()
-Set-Location $PSScriptRoot
-
-if ($PreReq_Checkbox.Checked -eq $true) {
- $CurrentFiles = Get-ChildItem -Name | where {$_ -match '\.msix' -or $_ -match '\.appx'}
-
- Foreach ($File in $CurrentFiles) {
- Foreach ($PreReq in ($DependencyList.GetEnumerator()).Name) {
- if ($PreReq -eq 'Microsoft.VCLibs' -and $File -match 'UWPDesktop') {
- break
- }
-
- if ($File -match $PreReq -and $DependencyList[$PreReq] -ne $null) {
- $FileVersion = [version]$File.Split('_')[1]
- $DependencyVersion = [version]$DependencyList[$PreReq].Split('_')[1]
-
- $DependencyPath += $File
-
- if ($FileVersion -ge $DependencyVersion) {
- 'skipping "{0}"' -f ($File.Split('_')[0..2] -join '_')
- $DependencyList[$PreReq] = $null
- }
- else {
- 'Deleting "{0}"' -f ($File.Split('_')[0..2] -join '_')
-
- try {
- Remove-Item $File
- }
- catch {
- $_.Exception
- Exit 1
- }
- }
- }
- }
- }
-
- $MergedList = ([array]$UserSelected + [array]($DependencyList.Values | Where-Object {$_ -ne $null})) | sort
-}
-else {
- $MergedList = $UserSelected
-}
-
-############
-
-Foreach ($Filename in $MergedList) {
- $URL = ($Links | Where-Object {$_ -match $Filename}).Split('"')[1]
-
- if (-not (Test-Path -Path $Filename -PathType Leaf)) {
- 'Downloading "{0}"' -f $Filename
-
- try {
- $Response = Invoke-WebRequest -UseBasicParsing -Uri $URL -OutFile $Filename -PassThru
-
- $ChildItem = Get-ChildItem $Filename
- $ChildItem.CreationTime = $ChildItem.LastWriteTime = $Response.BaseResponse.LastModified
- }
- catch {
- $_.Exception
- Exit 1
- }
- }
- else {
- 'Duplicate file "{0}"' -f $Filename
- }
-}
-
-if ($Sideload_Checkbox.Checked -eq $true) {
- foreach ($Package in ($UserSelected | Sort-Object)) {
- 'Installing "{0}"' -f $Package
-
- try {
- if ($DependencyPath -ne '') {
- Add-AppPackage -Path $Package -DependencyPath $DependencyPath
- }
- else {
- Add-AppxPackage -Path $Package
- }
- }
- catch {
- $error[0].InvocationInfo
- }
- }
-}
-
-if (([Environment]::GetCommandLineArgs() | Where-Object {$_ -like '-Command'}).Count -gt 0) {
- Write-Host -NoNewline 'Press any key to close window.'
- $null = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown')
-}
\ No newline at end of file
diff --git a/applications.json b/applications.json
deleted file mode 100644
index a281fe44..00000000
--- a/applications.json
+++ /dev/null
@@ -1,262 +0,0 @@
-{
- "install": {
- "Installlibreoffice": {
- "winget": "TheDocumentFoundation.LibreOffice"
- },
- "Installadobe": {
- "winget": "Adobe.Acrobat.Reader.64-bit"
- },
- "Installadvancedip": {
- "winget": "Famatech.AdvancedIPScanner"
- },
- "Installalacritty": {
- "winget": "Alacritty.Alacritty"
- },
- "Installanydesk": {
- "winget": "AnyDeskSoftwareGmbH.AnyDesk"
- },
- "Installatom": {
- "winget": "GitHub.Atom"
- },
- "Installaudacity": {
- "winget": "Audacity.Audacity"
- },
- "Installautohotkey": {
- "winget": "Lexikos.AutoHotkey"
- },
- "Installbitwarden": {
- "winget": "Bitwarden.Bitwarden"
- },
- "Installblender": {
- "winget": "BlenderFoundation.Blender"
- },
- "Installbrave": {
- "winget": "BraveSoftware.BraveBrowser"
- },
- "Installchrome": {
- "winget": "Google.Chrome"
- },
- "Installtor": {
- "winget": "TorProject.TorBrowser"
- },
- "Installchromium": {
- "winget": "eloston.ungoogled-chromium"
- },
- "Installcpuz": {
- "winget": "CPUID.CPU-Z"
- },
- "Installdiscord": {
- "winget": "Discord.Discord"
- },
- "Installeartrumpet": {
- "winget": "File-New-Project.EarTrumpet"
- },
- "Installepicgames": {
- "winget": "EpicGames.EpicGamesLauncher"
- },
- "Installesearch": {
- "winget": "voidtools.Everything --source winget"
- },
- "Installetcher": {
- "winget": "Balena.Etcher"
- },
- "Installfirefox": {
- "winget": "Mozilla.Firefox"
- },
- "Installflameshot": {
- "winget": "Flameshot.Flameshot"
- },
- "Installfoobar": {
- "winget": "PeterPawlowski.foobar2000"
- },
- "Installgimp": {
- "winget": "GIMP.GIMP"
- },
- "Installgithubdesktop": {
- "winget": "Git.Git;GitHub.GitHubDesktop"
- },
- "Installgog": {
- "winget": "GOG.Galaxy"
- },
- "Installgpuz": {
- "winget": "TechPowerUp.GPU-Z"
- },
- "Installglaryutilities": {
- "winget": "Glarysoft.GlaryUtilities"
- },
- "Installgreenshot": {
- "winget": "Greenshot.Greenshot"
- },
- "Installhandbrake": {
- "winget": "HandBrake.HandBrake"
- },
- "Installhexchat": {
- "winget": "HexChat.HexChat"
- },
- "Installhwinfo": {
- "winget": "REALiX.HWiNFO"
- },
- "Installimageglass": {
- "winget": "DuongDieuPhap.ImageGlass"
- },
- "Installinkscape": {
- "winget": "Inkscape.Inkscape"
- },
- "Installjava16": {
- "winget": "AdoptOpenJDK.OpenJDK.16"
- },
- "Installjava18": {
- "winget": "Oracle.JDK.18"
- },
- "Installjava8": {
- "winget": "AdoptOpenJDK.OpenJDK.8"
- },
- "Installjetbrains": {
- "winget": "JetBrains.Toolbox"
- },
- "Installkeepass": {
- "winget": "KeePassXCTeam.KeePassXC"
- },
- "Installlibrewolf": {
- "winget": "LibreWolf.LibreWolf"
- },
- "Installmalwarebytes": {
- "winget": "Malwarebytes.Malwarebytes"
- },
- "Installmatrix": {
- "winget": "Element.Element"
- },
- "Installmpc": {
- "winget": "clsid2.mpc-hc"
- },
- "Installmremoteng": {
- "winget": "mRemoteNG.mRemoteNG"
- },
- "Installnodejs": {
- "winget": "OpenJS.NodeJS"
- },
- "Installnodejslts": {
- "winget": "OpenJS.NodeJS.LTS"
- },
- "Installnotepadplus": {
- "winget": "Notepad++.Notepad++"
- },
- "Installnvclean": {
- "winget": "TechPowerUp.NVCleanstall"
- },
- "Installobs": {
- "winget": "OBSProject.OBSStudio"
- },
- "Installobsidian": {
- "winget": "Obsidian.Obsidian"
- },
- "Installpowertoys": {
- "winget": "Microsoft.PowerToys"
- },
- "Installputty": {
- "winget": "PuTTY.PuTTY"
- },
- "Installpython3": {
- "winget": "Python.Python.3"
- },
- "Installrevo": {
- "winget": "RevoUninstaller.RevoUninstaller"
- },
- "Installrufus": {
- "winget": "Rufus.Rufus"
- },
- "Installrustlang": {
- "winget": "Rustlang.Rust.MSVC"
- },
- "Installsevenzip": {
- "winget": "7zip.7zip"
- },
- "Installsharex": {
- "winget": "ShareX.ShareX"
- },
- "Installsignal": {
- "winget": "OpenWhisperSystems.Signal"
- },
- "Installskype": {
- "winget": "Microsoft.Skype"
- },
- "Installslack": {
- "winget": "SlackTechnologies.Slack"
- },
- "Installspotify": {
- "winget": "Spotify.Spotify"
- },
- "Installsteam": {
- "winget": "Valve.Steam"
- },
- "Installsublime": {
- "winget": "SublimeHQ.SublimeText.4"
- },
- "Installsumatra": {
- "winget": "SumatraPDF.SumatraPDF"
- },
- "Installteams": {
- "winget": "Microsoft.Teams"
- },
- "Installteamviewer": {
- "winget": "TeamViewer.TeamViewer"
- },
- "Installterminal": {
- "winget": "Microsoft.WindowsTerminal"
- },
- "Installidm": {
- "winget": "Tonec.InternetDownloadManager"
- },
- "Installtreesize": {
- "winget": "JAMSoftware.TreeSize.Free"
- },
- "Installttaskbar": {
- "winget": "TranslucentTB.TranslucentTB"
- },
- "Installvisualstudio": {
- "winget": "Microsoft.VisualStudio.2022.Community"
- },
- "Installvivaldi": {
- "winget": "VivaldiTechnologies.Vivaldi"
- },
- "Installvlc": {
- "winget": "VideoLAN.VLC"
- },
- "Installkdenlive": {
- "winget": "KDE.Kdenlive"
- },
- "Installvoicemeeter": {
- "winget": "VB-Audio.Voicemeeter"
- },
- "Installvscode": {
- "winget": "Git.Git;Microsoft.VisualStudioCode --source winget"
- },
- "Installvscodium": {
- "winget": "Git.Git;VSCodium.VSCodium"
- },
- "Installwindirstat": {
- "winget": "WinDirStat.WinDirStat"
- },
- "Installwiztree": {
- "winget": "AntibodySoftware.WizTree"
- },
- "Installwinscp": {
- "winget": "WinSCP.WinSCP"
- },
- "Installwireshark": {
- "winget": "WiresharkFoundation.Wireshark"
- },
- "Installsimplewall": {
- "winget": "Henry++.simplewall"
- },
- "Installzoom": {
- "winget": "Zoom.Zoom"
- },
- "Installviber": {
- "winget": "Viber.Viber"
- },
- "Installtwinkletray": {
- "winget": "xanderfrangos.twinkletray"
- }
- }
-}
diff --git a/old/MainWindow.xaml b/old/MainWindow.xaml
deleted file mode 100644
index a6706154..00000000
--- a/old/MainWindow.xaml
+++ /dev/null
@@ -1,303 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Note: Hover over items to get a better description. Please be careful as many of these tweaks will heavily modify your system.
- Recommended selections are for normal users and if you are unsure do NOT check anything else!
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- This is the default settings that come with Windows. No modifications are made and will remove any custom windows update settings.Note: If you still encounter update errors, reset all updates in the config tab. That will restore ALL Microsoft Update Services from their servers and reinstall them to default settings.
-
-
-
- This is my recommended setting I use on all computers. It will delay feature updates by 2 years and will install security updates 4 days after release.Feature Updates: Adds features and often bugs to systems when they are released. You want to delay these as long as possible.Security Updates: Typically these are pressing security flaws that need to be patched quickly. You only want to delay these a couple of days just to see if they are safe and don't break other systems. You don't want to go without these for ANY extended periods of time.
-
-
-
- This completely disables ALL Windows Updates and is NOT RECOMMENDED. However, it can be suitable if you use your system for a select purpose and do not actively browse the internet. Note: Your system will be easier to hack and infect without security updates.
-
-
-
-
-
-
-
-
-
-
-
diff --git a/old/winutil.ps1 b/old/winutil.ps1
deleted file mode 100644
index 58c83a5f..00000000
--- a/old/winutil.ps1
+++ /dev/null
@@ -1,1858 +0,0 @@
-<#
-.NOTES
- Author : Chris Titus @christitustech
- GitHub : https://github.com/ChrisTitusTech
- Version 0.0.1
-#>
-
-#$inputXML = Get-Content "MainWindow.xaml" #uncomment for development
-$inputXML = (new-object Net.WebClient).DownloadString("https://raw.githubusercontent.com/ChrisTitusTech/winutil/main/MainWindow.xaml") #uncomment for Production
-
-$inputXML = $inputXML -replace 'mc:Ignorable="d"', '' -replace "x:N", 'N' -replace '^
- Write-Host "Unable to load Windows.Markup.XamlReader. Double-check syntax and ensure .net is installed."
-}
-
-#===========================================================================
-# Store Form Objects In PowerShell
-#===========================================================================
-
-$xaml.SelectNodes("//*[@Name]") | ForEach-Object { Set-Variable -Name "WPF$($_.Name)" -Value $Form.FindName($_.Name) }
-
-Function Get-FormVariables {
- #If ($global:ReadmeDisplay -ne $true) { Write-host "If you need to reference this display again, run Get-FormVariables" -ForegroundColor Yellow; $global:ReadmeDisplay = $true }
-
-
- write-host ""
- write-host " CCCCCCCCCCCCCTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT "
- write-host " CCC::::::::::::CT:::::::::::::::::::::TT:::::::::::::::::::::T "
- write-host "CC:::::::::::::::CT:::::::::::::::::::::TT:::::::::::::::::::::T "
- write-host "C:::::CCCCCCCC::::CT:::::TT:::::::TT:::::TT:::::TT:::::::TT:::::T "
- write-host "C:::::C CCCCCCTTTTTT T:::::T TTTTTTTTTTTT T:::::T TTTTTT"
- write-host "C:::::C T:::::T T:::::T "
- write-host "C:::::C T:::::T T:::::T "
- write-host "C:::::C T:::::T T:::::T "
- write-host "C:::::C T:::::T T:::::T "
- write-host "C:::::C T:::::T T:::::T "
- write-host "C:::::C T:::::T T:::::T "
- write-host "C:::::C CCCCCC T:::::T T:::::T "
- write-host "C:::::CCCCCCCC::::C TT:::::::TT TT:::::::TT "
- write-host "CC:::::::::::::::C T:::::::::T T:::::::::T "
- write-host "CCC::::::::::::C T:::::::::T T:::::::::T "
- write-host " CCCCCCCCCCCCC TTTTTTTTTTT TTTTTTTTTTT "
- write-host ""
- write-host "====Chris Titus Tech====="
- write-host "=====Windows Toolbox====="
-
-
- #====DEBUG GUI Elements====
-
- #write-host "Found the following interactable elements from our form" -ForegroundColor Cyan
- #get-variable WPF*
-}
-
-Get-FormVariables
-
-#===========================================================================
-# Global Variables
-#===========================================================================
-$AppTitle = "Chris Titus Tech's Windows Utility"
-
-
-#===========================================================================
-# Navigation Controls
-#===========================================================================
-
-$WPFTab1BT.Add_Click({
- $WPFTabNav.Items[0].IsSelected = $true
- $WPFTabNav.Items[1].IsSelected = $false
- $WPFTabNav.Items[2].IsSelected = $false
- $WPFTabNav.Items[3].IsSelected = $false
- })
-$WPFTab2BT.Add_Click({
- $WPFTabNav.Items[0].IsSelected = $false
- $WPFTabNav.Items[1].IsSelected = $true
- $WPFTabNav.Items[2].IsSelected = $false
- $WPFTabNav.Items[3].IsSelected = $false
- })
-$WPFTab3BT.Add_Click({
- $WPFTabNav.Items[0].IsSelected = $false
- $WPFTabNav.Items[1].IsSelected = $false
- $WPFTabNav.Items[2].IsSelected = $true
- $WPFTabNav.Items[3].IsSelected = $false
- })
-$WPFTab4BT.Add_Click({
- $WPFTabNav.Items[0].IsSelected = $false
- $WPFTabNav.Items[1].IsSelected = $false
- $WPFTabNav.Items[2].IsSelected = $false
- $WPFTabNav.Items[3].IsSelected = $true
- })
-
-#===========================================================================
-# Tab 1 - Install
-#===========================================================================
-$WPFinstall.Add_Click({
- $wingetinstall = New-Object System.Collections.Generic.List[System.Object]
- If ( $WPFInstalllibreoffice.IsChecked -eq $true ) {
- $wingetinstall.Add("TheDocumentFoundation.LibreOffice")
- $WPFInstalllibreoffice.IsChecked = $false
- }
- If ( $WPFInstalladobe.IsChecked -eq $true ) {
- $wingetinstall.Add("Adobe.Acrobat.Reader.64-bit")
- $WPFInstalladobe.IsChecked = $false
- }
- If ( $WPFInstalladvancedip.IsChecked -eq $true ) {
- $wingetinstall.Add("Famatech.AdvancedIPScanner")
- $WPFInstalladvancedip.IsChecked = $false
- }
- If ( $WPFInstallatom.IsChecked -eq $true ) {
- $wingetinstall.Add("GitHub.Atom")
- $WPFInstallatom.IsChecked = $false
- }
- If ( $WPFInstallaudacity.IsChecked -eq $true ) {
- $wingetinstall.Add("Audacity.Audacity")
- $WPFInstallaudacity.IsChecked = $false
- }
- If ( $WPFInstallautohotkey.IsChecked -eq $true ) {
- $wingetinstall.Add("Lexikos.AutoHotkey")
- $WPFInstallautohotkey.IsChecked = $false
- }
- If ( $WPFInstallbrave.IsChecked -eq $true ) {
- $wingetinstall.Add("BraveSoftware.BraveBrowser")
- $WPFInstallbrave.IsChecked = $false
- }
- If ( $WPFInstallchrome.IsChecked -eq $true ) {
- $wingetinstall.Add("Google.Chrome")
- $WPFInstallchrome.IsChecked = $false
- }
- If ( $WPFInstalltor.IsChecked -eq $true ) {
- $wingetinstall.Add("TorProject.TorBrowser")
- $WPFInstalltor.IsChecked = $false
- }
- If ( $WPFInstalldiscord.IsChecked -eq $true ) {
- $wingetinstall.Add("Discord.Discord")
- $WPFInstalldiscord.IsChecked = $false
- }
- If ( $WPFInstallesearch.IsChecked -eq $true ) {
- $wingetinstall.Add("voidtools.Everything --source winget")
- $WPFInstallesearch.IsChecked = $false
- }
- If ( $WPFInstalletcher.IsChecked -eq $true ) {
- $wingetinstall.Add("Balena.Etcher")
- $WPFInstalletcher.IsChecked = $false
- }
- If ( $WPFInstallfirefox.IsChecked -eq $true ) {
- $wingetinstall.Add("Mozilla.Firefox")
- $WPFInstallfirefox.IsChecked = $false
- }
- If ( $WPFInstallgimp.IsChecked -eq $true ) {
- $wingetinstall.Add("GIMP.GIMP")
- $WPFInstallgimp.IsChecked = $false
- }
- If ( $WPFInstallgit.IsChecked -eq $true ) {
- $wingetinstall.Add("Git.Git")
- $WPFInstallgithubdesktop.IsChecked = $false
- }
- If ( $WPFInstallgithubdesktop.IsChecked -eq $true ) {
- $wingetinstall.Add("GitHub.GitHubDesktop")
- $WPFInstallgithubdesktop.IsChecked = $false
- }
- If ( $WPFInstallimageglass.IsChecked -eq $true ) {
- $wingetinstall.Add("DuongDieuPhap.ImageGlass")
- $WPFInstallimageglass.IsChecked = $false
- }
- If ( $WPFInstalljava8.IsChecked -eq $true ) {
- $wingetinstall.Add("AdoptOpenJDK.OpenJDK.8")
- $WPFInstalljava8.IsChecked = $false
- }
- If ( $WPFInstalljava16.IsChecked -eq $true ) {
- $wingetinstall.Add("AdoptOpenJDK.OpenJDK.16")
- $WPFInstalljava16.IsChecked = $false
- }
- If ( $WPFInstalljava18.IsChecked -eq $true ) {
- $wingetinstall.Add("Oracle.JDK.18")
- $WPFInstalljava18.IsChecked = $false
- }
- If ( $WPFInstalljetbrains.IsChecked -eq $true ) {
- $wingetinstall.Add("JetBrains.Toolbox")
- $WPFInstalljetbrains.IsChecked = $false
- }
- If ( $WPFInstallmpc.IsChecked -eq $true ) {
- $wingetinstall.Add("clsid2.mpc-hc")
- $WPFInstallmpc.IsChecked = $false
- }
- If ( $WPFInstallnodejs.IsChecked -eq $true ) {
- $wingetinstall.Add("OpenJS.NodeJS")
- $WPFInstallnodejs.IsChecked = $false
- }
- If ( $WPFInstallnodejslts.IsChecked -eq $true ) {
- $wingetinstall.Add("OpenJS.NodeJS.LTS")
- $WPFInstallnodejslts.IsChecked = $false
- }
- If ( $WPFInstallnotepadplus.IsChecked -eq $true ) {
- $wingetinstall.Add("Notepad++.Notepad++")
- $WPFInstallnotepadplus.IsChecked = $false
- }
- If ( $WPFInstallpowertoys.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.PowerToys")
- $WPFInstallpowertoys.IsChecked = $false
- }
- If ( $WPFInstallputty.IsChecked -eq $true ) {
- $wingetinstall.Add("PuTTY.PuTTY")
- $WPFInstallputty.IsChecked = $false
- }
- If ( $WPFInstallpython3.IsChecked -eq $true ) {
- $wingetinstall.Add("Python.Python.3")
- $WPFInstallpython3.IsChecked = $false
- }
- If ( $WPFInstallrustlang.IsChecked -eq $true ) {
- $wingetinstall.Add("Rustlang.Rust.MSVC")
- $WPFInstallrustlang.IsChecked = $false
- }
- If ( $WPFInstallsevenzip.IsChecked -eq $true ) {
- $wingetinstall.Add("7zip.7zip")
- $WPFInstallsevenzip.IsChecked = $false
- }
- If ( $WPFInstallsharex.IsChecked -eq $true ) {
- $wingetinstall.Add("ShareX.ShareX")
- $WPFInstallsharex.IsChecked = $false
- }
- If ( $WPFInstallsublime.IsChecked -eq $true ) {
- $wingetinstall.Add("SublimeHQ.SublimeText.4")
- $WPFInstallsublime.IsChecked = $false
- }
- If ( $WPFInstallsumatra.IsChecked -eq $true ) {
- $wingetinstall.Add("SumatraPDF.SumatraPDF")
- $WPFInstallsumatra.IsChecked = $false
- }
- If ( $WPFInstallterminal.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.WindowsTerminal")
- $WPFInstallterminal.IsChecked = $false
- }
- If ( $WPFInstallidm.IsChecked -eq $true ) {
- $wingetinstall.Add("Tonec.InternetDownloadManager")
- $WPFInstallidm.IsChecked = $false
- }
- If ( $WPFInstallalacritty.IsChecked -eq $true ) {
- $wingetinstall.Add("Alacritty.Alacritty")
- $WPFInstallalacritty.IsChecked = $false
- }
- If ( $WPFInstallttaskbar.IsChecked -eq $true ) {
- $wingetinstall.Add("9PF4KZ2VN4W9")
- $WPFInstallttaskbar.IsChecked = $false
- }
- If ( $WPFInstallvlc.IsChecked -eq $true ) {
- $wingetinstall.Add("VideoLAN.VLC")
- $WPFInstallvlc.IsChecked = $false
- }
- If ( $WPFInstallkdenlive.IsChecked -eq $true ) {
- $wingetinstall.Add("KDE.Kdenlive")
- $WPFInstallkdenlive.IsChecked = $false
- }
- If ( $WPFInstallvscode.IsChecked -eq $true ) {
- $wingetinstall.Add("Git.Git")
- $wingetinstall.Add("Microsoft.VisualStudioCode --source winget")
- $WPFInstallvscode.IsChecked = $false
- }
- If ( $WPFInstallvscodium.IsChecked -eq $true ) {
- $wingetinstall.Add("Git.Git")
- $wingetinstall.Add("VSCodium.VSCodium")
- $WPFInstallvscodium.IsChecked = $false
- }
- If ( $WPFInstallwinscp.IsChecked -eq $true ) {
- $wingetinstall.Add("WinSCP.WinSCP")
- $WPFInstallputty.IsChecked = $false
- }
- If ( $WPFInstallanydesk.IsChecked -eq $true ) {
- $wingetinstall.Add("AnyDeskSoftwareGmbH.AnyDesk")
- $WPFInstallanydesk.IsChecked = $false
- }
- If ( $WPFInstallbitwarden.IsChecked -eq $true ) {
- $wingetinstall.Add("Bitwarden.Bitwarden")
- $WPFInstallbitwarden.IsChecked = $false
- }
- If ( $WPFInstallblender.IsChecked -eq $true ) {
- $wingetinstall.Add("BlenderFoundation.Blender")
- $WPFInstallblender.IsChecked = $false
- }
- If ( $WPFInstallchromium.IsChecked -eq $true ) {
- $wingetinstall.Add("eloston.ungoogled-chromium")
- $WPFInstallchromium.IsChecked = $false
- }
- If ( $WPFInstallcpuz.IsChecked -eq $true ) {
- $wingetinstall.Add("CPUID.CPU-Z")
- $WPFInstallcpuz.IsChecked = $false
- }
- If ( $WPFInstalleartrumpet.IsChecked -eq $true ) {
- $wingetinstall.Add("File-New-Project.EarTrumpet")
- $WPFInstalleartrumpet.IsChecked = $false
- }
- If ( $WPFInstallepicgames.IsChecked -eq $true ) {
- $wingetinstall.Add("EpicGames.EpicGamesLauncher")
- $WPFInstallepicgames.IsChecked = $false
- }
- If ( $WPFInstallflameshot.IsChecked -eq $true ) {
- $wingetinstall.Add("Flameshot.Flameshot")
- $WPFInstallflameshot.IsChecked = $false
- }
- If ( $WPFInstallfoobar.IsChecked -eq $true ) {
- $wingetinstall.Add("PeterPawlowski.foobar2000")
- $WPFInstallfoobar.IsChecked = $false
- }
- If ( $WPFInstallgog.IsChecked -eq $true ) {
- $wingetinstall.Add("GOG.Galaxy")
- $WPFInstallgog.IsChecked = $false
- }
- If ( $WPFInstallgpuz.IsChecked -eq $true ) {
- $wingetinstall.Add("TechPowerUp.GPU-Z")
- $WPFInstallgpuz.IsChecked = $false
- }
- If ( $WPFInstallglaryutilities.IsChecked -eq $true ) {
- $wingetinstall.Add("Glarysoft.GlaryUtilities")
- $WPFInstallglaryutilities.IsChecked = $false
- }
- If ( $WPFInstallgreenshot.IsChecked -eq $true ) {
- $wingetinstall.Add("Greenshot.Greenshot")
- $WPFInstallgreenshot.IsChecked = $false
- }
- If ( $WPFInstallhandbrake.IsChecked -eq $true ) {
- $wingetinstall.Add("HandBrake.HandBrake")
- $WPFInstallhandbrake.IsChecked = $false
- }
- If ( $WPFInstallhexchat.IsChecked -eq $true ) {
- $wingetinstall.Add("HexChat.HexChat")
- $WPFInstallhexchat.IsChecked = $false
- }
- If ( $WPFInstallhwinfo.IsChecked -eq $true ) {
- $wingetinstall.Add("REALiX.HWiNFO")
- $WPFInstallhwinfo.IsChecked = $false
- }
- If ( $WPFInstallinkscape.IsChecked -eq $true ) {
- $wingetinstall.Add("Inkscape.Inkscape")
- $WPFInstallinkscape.IsChecked = $false
- }
- If ( $WPFInstallkeepass.IsChecked -eq $true ) {
- $wingetinstall.Add("KeePassXCTeam.KeePassXC")
- $WPFInstallkeepass.IsChecked = $false
- }
- If ( $WPFInstalllibrewolf.IsChecked -eq $true ) {
- $wingetinstall.Add("LibreWolf.LibreWolf")
- $WPFInstalllibrewolf.IsChecked = $false
- }
- If ( $WPFInstallmalwarebytes.IsChecked -eq $true ) {
- $wingetinstall.Add("Malwarebytes.Malwarebytes")
- $WPFInstallmalwarebytes.IsChecked = $false
- }
- If ( $WPFInstallmatrix.IsChecked -eq $true ) {
- $wingetinstall.Add("Element.Element")
- $WPFInstallmatrix.IsChecked = $false
- }
- If ( $WPFInstallmremoteng.IsChecked -eq $true ) {
- $wingetinstall.Add("mRemoteNG.mRemoteNG")
- $WPFInstallmremoteng.IsChecked = $false
- }
- If ( $WPFInstallnvclean.IsChecked -eq $true ) {
- $wingetinstall.Add("TechPowerUp.NVCleanstall")
- $WPFInstallnvclean.IsChecked = $false
- }
- If ( $WPFInstallobs.IsChecked -eq $true ) {
- $wingetinstall.Add("OBSProject.OBSStudio")
- $WPFInstallobs.IsChecked = $false
- }
- If ( $WPFInstallobsidian.IsChecked -eq $true ) {
- $wingetinstall.Add("Obsidian.Obsidian")
- $WPFInstallobsidian.IsChecked = $false
- }
- If ( $WPFInstallrevo.IsChecked -eq $true ) {
- $wingetinstall.Add("RevoUninstaller.RevoUninstaller")
- $WPFInstallrevo.IsChecked = $false
- }
- If ( $WPFInstallrufus.IsChecked -eq $true ) {
- $wingetinstall.Add("Rufus.Rufus")
- $WPFInstallrufus.IsChecked = $false
- }
- If ( $WPFInstallsignal.IsChecked -eq $true ) {
- $wingetinstall.Add("OpenWhisperSystems.Signal")
- $WPFInstallsignal.IsChecked = $false
- }
- If ( $WPFInstallskype.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.Skype")
- $WPFInstallskype.IsChecked = $false
- }
- If ( $WPFInstallslack.IsChecked -eq $true ) {
- $wingetinstall.Add("SlackTechnologies.Slack")
- $WPFInstallslack.IsChecked = $false
- }
- If ( $WPFInstallspotify.IsChecked -eq $true ) {
- $wingetinstall.Add("Spotify.Spotify")
- $WPFInstallspotify.IsChecked = $false
- }
- If ( $WPFInstallsteam.IsChecked -eq $true ) {
- $wingetinstall.Add("Valve.Steam")
- $WPFInstallsteam.IsChecked = $false
- }
- If ( $WPFInstallteamviewer.IsChecked -eq $true ) {
- $wingetinstall.Add("TeamViewer.TeamViewer")
- $WPFInstallteamviewer.IsChecked = $false
- }
- If ( $WPFInstallteams.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.Teams")
- $WPFInstallteams.IsChecked = $false
- }
- If ( $WPFInstalltreesize.IsChecked -eq $true ) {
- $wingetinstall.Add("JAMSoftware.TreeSize.Free")
- $WPFInstalltreesize.IsChecked = $false
- }
- If ( $WPFInstallvisualstudio.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.VisualStudio.2022.Community")
- $WPFInstallvisualstudio.IsChecked = $false
- }
- If ( $WPFInstallvivaldi.IsChecked -eq $true ) {
- $wingetinstall.Add("VivaldiTechnologies.Vivaldi")
- $WPFInstallvivaldi.IsChecked = $false
- }
- If ( $WPFInstallvoicemeeter.IsChecked -eq $true ) {
- $wingetinstall.Add("VB-Audio.Voicemeeter")
- $WPFInstallvoicemeeter.IsChecked = $false
- }
- If ( $WPFInstallwindirstat.IsChecked -eq $true ) {
- $wingetinstall.Add("WinDirStat.WinDirStat")
- $WPFInstallwindirstat.IsChecked = $false
- }
- If ( $WPFInstallwiztree.IsChecked -eq $true ) {
- $wingetinstall.Add("AntibodySoftware.WizTree")
- $WPFInstallwiztree.IsChecked = $false
- }
- If ( $WPFInstallwireshark.IsChecked -eq $true ) {
- $wingetinstall.Add("WiresharkFoundation.Wireshark")
- $WPFInstallwireshark.IsChecked = $false
- }
- If ( $WPFInstallsimplewall.IsChecked -eq $true ) {
- $wingetinstall.Add("Henry++.simplewall")
- $WPFInstallsimplewall.IsChecked = $false
- }
- If ( $WPFInstallzoom.IsChecked -eq $true ) {
- $wingetinstall.Add("Zoom.Zoom")
- $WPFInstallzoom.IsChecked = $false
- }
- If ( $WPFInstallviber.IsChecked -eq $true ) {
- $wingetinstall.Add("Viber.Viber")
- $WPFInstallviber.IsChecked = $false
- }
- If ( $WPFInstalltwinkletray.IsChecked -eq $true ) {
- $wingetinstall.Add("xanderfrangos.twinkletray")
- $WPFInstalltwinkletray.IsChecked = $false
- }
- # Fall 2022 Additions
- If ( $WPFInstallshell.IsChecked -eq $true ) {
- $wingetinstall.Add("Nilesoft.Shell")
- $WPFInstallshell.IsChecked = $false
- }
- If ( $WPFInstallklite.IsChecked -eq $true ) {
- $wingetinstall.Add("CodecGuide.K-LiteCodecPack.Standard")
- $WPFInstallklite.IsChecked = $false
- }
- If ( $WPFInstallsandboxie.IsChecked -eq $true ) {
- $wingetinstall.Add("Sandboxie.Plus")
- $WPFInstallsandboxie.IsChecked = $false
- }
- If ( $WPFInstallprocesslasso.IsChecked -eq $true ) {
- $wingetinstall.Add("BitSum.ProcessLasso")
- $WPFInstallprocesslasso.IsChecked = $false
- }
- If ( $WPFInstallwinmerge.IsChecked -eq $true ) {
- $wingetinstall.Add("WinMerge.WinMerge")
- $WPFInstallwinmerge.IsChecked = $false
- }
- If ( $WPFInstalldotnet3.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.DotNet.DesktopRuntime.3_1")
- $WPFInstalldotnet3.IsChecked = $false
- }
- If ( $WPFInstalldotnet5.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.DotNet.DesktopRuntime.5")
- $WPFInstalldotnet5.IsChecked = $false
- }
- If ( $WPFInstalldotnet6.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.DotNet.DesktopRuntime.6")
- $WPFInstalldotnet6.IsChecked = $false
- }
- If ( $WPFInstallvc2015_64.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.VC++2015-2022Redist-x64")
- $WPFInstallvc2015_64.IsChecked = $false
- }
- If ( $WPFInstallvc2015_32.IsChecked -eq $true ) {
- $wingetinstall.Add("Microsoft.VC++2015-2022Redist-x86")
- $WPFInstallvc2015_32.IsChecked = $false
- }
- If ( $WPFInstallfoxpdf.IsChecked -eq $true ) {
- $wingetinstall.Add("Foxit.PhantomPDF")
- $WPFInstallfoxpdf.IsChecked = $false
- }
- If ( $WPFInstallonlyoffice.IsChecked -eq $true ) {
- $wingetinstall.Add("ONLYOFFICE.DesktopEditors")
- $WPFInstallonlyoffice.IsChecked = $false
- }
- If ( $WPFInstallflux.IsChecked -eq $true ) {
- $wingetinstall.Add("flux.flux")
- $WPFInstallflux.IsChecked = $false
- }
- If ( $WPFInstallitunes.IsChecked -eq $true ) {
- $wingetinstall.Add("Apple.iTunes")
- $WPFInstallitunes.IsChecked = $false
- }
- If ( $WPFInstallcider.IsChecked -eq $true ) {
- $wingetinstall.Add("CiderCollective.Cider")
- $WPFInstallcider.IsChecked = $false
- }
- If ( $WPFInstalljoplin.IsChecked -eq $true ) {
- $wingetinstall.Add("Joplin.Joplin")
- $WPFInstalljoplin.IsChecked = $false
- }
- If ( $WPFInstallopenoffice.IsChecked -eq $true ) {
- $wingetinstall.Add("Apache.OpenOffice")
- $WPFInstallopenoffice.IsChecked = $false
- }
- If ( $WPFInstallruskdesk.IsChecked -eq $true ) {
- $wingetinstall.Add("RustDesk.RustDesk")
- $WPFInstallruskdesk.IsChecked = $false
- }
- If ( $WPFInstalljami.IsChecked -eq $true ) {
- $wingetinstall.Add("SFLinux.Jami")
- $WPFInstalljami.IsChecked = $false
- }
- If ( $WPFInstalljdownloader.IsChecked -eq $true ) {
- $wingetinstall.Add("AppWork.JDownloader")
- $WPFInstalljdownloader.IsChecked = $false
- }
- # Check if winget is installed
- Write-Host "Checking if Winget is Installed..."
- if (Test-Path ~\AppData\Local\Microsoft\WindowsApps\winget.exe) {
- #Checks if winget executable exists and if the Windows Version is 1809 or higher
- Write-Host "Winget Already Installed"
- }
- else {
- if (((((Get-ComputerInfo).OSName.IndexOf("LTSC")) -ne -1) -or ((Get-ComputerInfo).OSName.IndexOf("Server") -ne -1)) -and (((Get-ComputerInfo).WindowsVersion) -ge "1809")) {
- #Checks if Windows edition is LTSC/Server 2019+
- #Manually Installing Winget
- Write-Host "Running Alternative Installer for LTSC/Server Editions"
-
- #Download Needed Files
- Write-Host "Downloading Needed Files..."
- Start-BitsTransfer -Source "https://aka.ms/Microsoft.VCLibs.x64.14.00.Desktop.appx" -Destination "$env:TEMP\Microsoft.VCLibs.x64.14.00.Desktop.appx"
- Start-BitsTransfer -Source "https://github.com/microsoft/winget-cli/releases/download/v1.2.10271/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle" -Destination "$env:TEMP\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle"
- Start-BitsTransfer -Source "https://github.com/microsoft/winget-cli/releases/download/v1.2.10271/b0a0692da1034339b76dce1c298a1e42_License1.xml" -Destination "$env:TEMP\b0a0692da1034339b76dce1c298a1e42_License1.xml"
-
- #Installing Packages
- Write-Host "Installing Packages..."
- Add-AppxProvisionedPackage -Online -PackagePath "$env:TEMP\Microsoft.VCLibs.x64.14.00.Desktop.appx" -SkipLicense
- Add-AppxProvisionedPackage -Online -PackagePath "$env:TEMP\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle" -LicensePath "$env:TEMP\b0a0692da1034339b76dce1c298a1e42_License1.xml"
- Write-Host "winget Installed (Reboot might be required before winget will work)"
-
- #Sleep for 5 seconds to maximize chance that winget will work without reboot
- Write-Host "Pausing for 5 seconds to maximize chance that winget will work without reboot"
- Start-Sleep -s 5
-
- #Removing no longer needed Files
- Write-Host "Removing no longer needed Files..."
- Remove-Item -Path "$env:TEMP\Microsoft.VCLibs.x64.14.00.Desktop.appx" -Force
- Remove-Item -Path "$env:TEMP\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle" -Force
- Remove-Item -Path "$env:TEMP\b0a0692da1034339b76dce1c298a1e42_License1.xml" -Force
- Write-Host "Removed Files that are no longer needed"
- }
- elseif (((Get-ComputerInfo).WindowsVersion) -lt "1809") {
- #Checks if Windows Version is too old for winget
- Write-Host "Winget is not supported on this version of Windows (Pre-1809)"
- }
- else {
- #Installing Winget from the Microsoft Store
- Write-Host "Winget not found, installing it now."
- Start-Process "ms-appinstaller:?source=https://aka.ms/getwinget"
- $nid = (Get-Process AppInstaller).Id
- Wait-Process -Id $nid
- Write-Host "Winget Installed"
- }
- }
-
- if ($wingetinstall.Count -eq 0) {
- $WarningMsg = "Please select the program(s) to install"
- [System.Windows.MessageBox]::Show($WarningMsg, $AppTitle, [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
- return
- }
-
- # Install all winget programs in new window
- $wingetinstall.ToArray()
- # Define Output variable
- $wingetResult = New-Object System.Collections.Generic.List[System.Object]
- foreach ( $node in $wingetinstall ) {
- try {
- Start-Process powershell.exe -Verb RunAs -ArgumentList "-command winget install -e --accept-source-agreements --accept-package-agreements --silent $node | Out-Host" -WindowStyle Normal
- $wingetResult.Add("$node`n")
- Start-Sleep -s 3
- Wait-Process winget -Timeout 90 -ErrorAction SilentlyContinue
- }
- catch [System.InvalidOperationException] {
- Write-Warning "Allow Yes on User Access Control to Install"
- }
- catch {
- Write-Error $_.Exception
- }
- }
- $wingetResult.ToArray()
- $wingetResult | ForEach-Object { $_ } | Out-Host
-
- # Popup after finished
- $ButtonType = [System.Windows.MessageBoxButton]::OK
- if ($wingetResult -ne "") {
- $Messageboxbody = "Installed Programs `n$($wingetResult)"
- }
- else {
- $Messageboxbody = "No Program(s) are installed"
- }
- $MessageIcon = [System.Windows.MessageBoxImage]::Information
-
- [System.Windows.MessageBox]::Show($Messageboxbody, $AppTitle, $ButtonType, $MessageIcon)
-
- Write-Host "================================="
- Write-Host "--- Installs are Finished ---"
- Write-Host "================================="
-
- })
-
-$WPFInstallUpgrade.Add_Click({
- $isUpgradeSuccess = $false
- try {
- Start-Process powershell.exe -Verb RunAs -ArgumentList "-command winget upgrade --all | Out-Host" -Wait -WindowStyle Normal
- $isUpgradeSuccess = $true
- }
- catch [System.InvalidOperationException] {
- Write-Warning "Allow Yes on User Access Control to Upgrade"
- }
- catch {
- Write-Error $_.Exception
- }
- $ButtonType = [System.Windows.MessageBoxButton]::OK
- $Messageboxbody = if ($isUpgradeSuccess) { "Upgrade Done" } else { "Upgrade was not succesful" }
- $MessageIcon = [System.Windows.MessageBoxImage]::Information
-
- [System.Windows.MessageBox]::Show($Messageboxbody, $AppTitle, $ButtonType, $MessageIcon)
- })
-
-#===========================================================================
-# Tab 2 - Tweak Buttons
-#===========================================================================
-$WPFdesktop.Add_Click({
-
- $WPFEssTweaksAH.IsChecked = $true
- $WPFEssTweaksDeleteTempFiles.IsChecked = $true
- $WPFEssTweaksDeBloat.IsChecked = $false
- $WPFEssTweaksRemoveCortana.IsChecked = $false
- $WPFEssTweaksRemoveEdge.IsChecked = $false
- $WPFEssTweaksDiskCleanup.IsChecked = $false
- $WPFEssTweaksDVR.IsChecked = $true
- $WPFEssTweaksHiber.IsChecked = $true
- $WPFEssTweaksHome.IsChecked = $true
- $WPFEssTweaksLoc.IsChecked = $true
- $WPFEssTweaksOO.IsChecked = $true
- $WPFEssTweaksRP.IsChecked = $true
- $WPFEssTweaksServices.IsChecked = $true
- $WPFEssTweaksStorage.IsChecked = $true
- $WPFEssTweaksTele.IsChecked = $true
- $WPFEssTweaksWifi.IsChecked = $true
- $WPFMiscTweaksDisableUAC.IsChecked = $false
- $WPFMiscTweaksDisableNotifications.IsChecked = $false
- $WPFMiscTweaksRightClickMenu.IsChecked = $false
- $WPFMiscTweaksPower.IsChecked = $true
- $WPFMiscTweaksNum.IsChecked = $true
- $WPFMiscTweaksLapPower.IsChecked = $false
- $WPFMiscTweaksLapNum.IsChecked = $false
- })
-
-$WPFlaptop.Add_Click({
-
- $WPFEssTweaksAH.IsChecked = $true
- $WPFEssTweaksDeleteTempFiles.IsChecked = $true
- $WPFEssTweaksDeBloat.IsChecked = $false
- $WPFEssTweaksRemoveCortana.IsChecked = $false
- $WPFEssTweaksRemoveEdge.IsChecked = $false
- $WPFEssTweaksDiskCleanup.IsChecked = $false
- $WPFEssTweaksDVR.IsChecked = $true
- $WPFEssTweaksHiber.IsChecked = $false
- $WPFEssTweaksHome.IsChecked = $true
- $WPFEssTweaksLoc.IsChecked = $true
- $WPFEssTweaksOO.IsChecked = $true
- $WPFEssTweaksRP.IsChecked = $true
- $WPFEssTweaksServices.IsChecked = $true
- $WPFEssTweaksStorage.IsChecked = $true
- $WPFEssTweaksTele.IsChecked = $true
- $WPFEssTweaksWifi.IsChecked = $true
- $WPFMiscTweaksDisableUAC.IsChecked = $false
- $WPFMiscTweaksDisableNotifications.IsChecked = $false
- $WPFMiscTweaksRightClickMenu.IsChecked = $false
- $WPFMiscTweaksLapPower.IsChecked = $true
- $WPFMiscTweaksLapNum.IsChecked = $true
- $WPFMiscTweaksPower.IsChecked = $false
- $WPFMiscTweaksNum.IsChecked = $false
- })
-
-$WPFminimal.Add_Click({
-
- $WPFEssTweaksAH.IsChecked = $false
- $WPFEssTweaksDeleteTempFiles.IsChecked = $false
- $WPFEssTweaksDeBloat.IsChecked = $false
- $WPFEssTweaksRemoveCortana.IsChecked = $false
- $WPFEssTweaksRemoveEdge.IsChecked = $false
- $WPFEssTweaksDiskCleanup.IsChecked = $false
- $WPFEssTweaksDVR.IsChecked = $false
- $WPFEssTweaksHiber.IsChecked = $false
- $WPFEssTweaksHome.IsChecked = $true
- $WPFEssTweaksLoc.IsChecked = $false
- $WPFEssTweaksOO.IsChecked = $true
- $WPFEssTweaksRP.IsChecked = $true
- $WPFEssTweaksServices.IsChecked = $true
- $WPFEssTweaksStorage.IsChecked = $false
- $WPFEssTweaksTele.IsChecked = $true
- $WPFEssTweaksWifi.IsChecked = $false
- $WPFMiscTweaksDisableUAC.IsChecked = $false
- $WPFMiscTweaksDisableNotifications.IsChecked = $false
- $WPFMiscTweaksRightClickMenu.IsChecked = $false
- $WPFMiscTweaksPower.IsChecked = $false
- $WPFMiscTweaksNum.IsChecked = $false
- $WPFMiscTweaksLapPower.IsChecked = $false
- $WPFMiscTweaksLapNum.IsChecked = $false
- })
-
-$WPFtweaksbutton.Add_Click({
-
- If ( $WPFEssTweaksDVR.IsChecked -eq $true ) {
- #Installing PowerRun to edit some restricted registry keys (Need this to disable Gamebar Presence Writer)
- curl.exe -s "https://www.sordum.org/files/download/power-run/PowerRun.zip" -o ".\PowerRun.zip"
- Expand-Archive -Path ".\PowerRun.zip" -DestinationPath ".\" -Force
- Copy-Item -Path ".\PowerRun\PowerRun.exe" -Destination "$env:windir" -Force
- Remove-Item -Path ".\PowerRun\", ".\PowerRun.zip" -Recurse
- }
-
- If ( $WPFEssTweaksAH.IsChecked -eq $true ) {
- Write-Host "Disabling Activity History..."
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "EnableActivityFeed" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "PublishUserActivities" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "UploadUserActivities" -Type DWord -Value 0
- $WPFEssTweaksAH.IsChecked = $false
- }
-
- If ( $WPFEssTweaksDeleteTempFiles.IsChecked -eq $true ) {
- Write-Host "Delete Temp Files"
- Get-ChildItem -Path "C:\Windows\Temp" *.* -Recurse | Remove-Item -Force -Recurse
- Get-ChildItem -Path $env:TEMP *.* -Recurse | Remove-Item -Force -Recurse
- $WPFEssTweaksDeleteTempFiles.IsChecked = $false
- Write-Host "================================="
- Write-Host "--- !!!!ERRORS ARE NORMAL!!!! ---"
- Write-Host "--- Cleaned following folders:---"
- Write-Host "--- C:\Windows\Temp ---"
- Write-Host "---"$env:TEMP"---"
- Write-Host "================================="
- }
-
- If ( $WPFEssTweaksDVR.IsChecked -eq $true ) {
- If (!(Test-Path "HKCU:\System\GameConfigStore")) {
- New-Item -Path "HKCU:\System\GameConfigStore" -Force
- }
- Set-ItemProperty -Path "HKCU:\System\GameConfigStore" -Name "GameDVR_DXGIHonorFSEWindowsCompatible" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\System\GameConfigStore" -Name "GameDVR_HonorUserFSEBehaviorMode" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\System\GameConfigStore" -Name "GameDVR_EFSEFeatureFlags" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\System\GameConfigStore" -Name "GameDVR_Enabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\System\GameConfigStore" -Name "GameDVR_FSEBehavior" -Type DWord -Value 2
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\GameDVR" -Name "AllowGameDVR" -Type DWord -Value 0
-
- #Disabling Gamebar Presence Writer, which causes stutter in games
- PowerRun.exe /SW:0 Powershell.exe -command { Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.GameBar.PresenceServer.Internal.PresenceWriter" -Name "ActivationType" -Type DWord -Value 0 }
-
- $WPFEssTweaksDVR.IsChecked = $false
- }
- If ( $WPFEssTweaksHiber.IsChecked -eq $true ) {
- Write-Host "Disabling Hibernation..."
- Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Session Manager\Power" -Name "HibernateEnabled" -Type Dword -Value 0
- If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings")) {
- New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings" | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings" -Name "ShowHibernateOption" -Type Dword -Value 0
- $WPFEssTweaksHiber.IsChecked = $false
- }
- If ( $WPFEssTweaksHome.IsChecked -eq $true ) {
- $WPFEssTweaksHome.IsChecked = $false
- }
- If ( $WPFEssTweaksLoc.IsChecked -eq $true ) {
- Write-Host "Disabling Location Tracking..."
- If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location")) {
- New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Name "Value" -Type String -Value "Deny"
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}" -Name "SensorPermissionState" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration" -Name "Status" -Type DWord -Value 0
- Write-Host "Disabling automatic Maps updates..."
- Set-ItemProperty -Path "HKLM:\SYSTEM\Maps" -Name "AutoUpdateEnabled" -Type DWord -Value 0
- $WPFEssTweaksLoc.IsChecked = $false
- }
- If ( $WPFMiscTweaksDisableTPMCheck.IsChecked -eq $true ) {
- Write-Host "Disabling TPM Check..."
- If (!(Test-Path "HKLM:\SYSTEM\Setup\MoSetup")) {
- New-Item -Path "HKLM:\SYSTEM\Setup\MoSetup" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SYSTEM\Setup\MoSetup" -Name "AllowUpgradesWithUnsupportedTPM" -Type DWord -Value 1
- $WPFMiscTweaksDisableTPMCheck.IsChecked = $false
- }
- If ( $WPFEssTweaksDiskCleanup.IsChecked -eq $true ) {
- Write-Host "Running Disk Cleanup on Drive C:..."
- cmd /c cleanmgr.exe /d C: /VERYLOWDISK
- $WPFEssTweaksDiskCleanup.IsChecked = $false
- }
- If ( $WPFMiscTweaksDisableUAC.IsChecked -eq $true) {
- Write-Host "Disabling UAC..."
- # This below is the pussy mode which can break some apps. Please. Leave this on 1.
- # below i will show a way to do it without breaking some Apps that check UAC. U need to be admin tho.
- # Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "EnableLUA" -Type DWord -Value 0
- Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System -Name ConsentPromptBehaviorAdmin -Type DWord -Value 0 # Default is 5
- # This will set the GPO Entry in Security so that Admin users elevate without any prompt while normal users still elevate and u can even leave it ennabled.
- # It will just not bother u anymore
- $WPFMiscTweaksDisableUAC.IsChecked = $false
- }
-
- If ( $WPFMiscTweaksDisableNotifications.IsChecked -eq $true ) {
- Write-Host "Disabling Notifications and Action Center..."
- New-Item -Path "HKCU:\Software\Policies\Microsoft\Windows" -Name "Explorer" -force
- New-ItemProperty -Path "HKCU:\Software\Policies\Microsoft\Windows\Explorer" -Name "DisableNotificationCenter" -PropertyType "DWord" -Value 1
- New-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\PushNotifications" -Name "ToastEnabled" -PropertyType "DWord" -Value 0 -force
- $WPFMiscTweaksDisableNotifications.IsChecked = $false
- }
-
- If ( $WPFMiscTweaksRightClickMenu.IsChecked -eq $true ) {
- Write-Host "Setting Classic Right-Click Menu..."
- New-Item -Path "HKCU:\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" -Name "InprocServer32" -force -value ""
- $WPFMiscTweaksRightClickMenu.IsChecked = $false
- }
- If ( $WPFEssTweaksOO.IsChecked -eq $true ) {
- Write-Host "Running O&O Shutup with Recommended Settings"
- curl.exe -ss "https://raw.githubusercontent.com/ChrisTitusTech/win10script/master/ooshutup10.cfg" -o ooshutup10.cfg
- curl.exe -ss "https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe" -o OOSU10.exe
- ./OOSU10.exe ooshutup10.cfg /quiet
- $WPFEssTweaksOO.IsChecked = $false
- }
- If ( $WPFEssTweaksRP.IsChecked -eq $true ) {
- Write-Host "Creating Restore Point in case something bad happens"
- Enable-ComputerRestore -Drive "$env:SystemDrive"
- Checkpoint-Computer -Description "RestorePoint1" -RestorePointType "MODIFY_SETTINGS"
- $WPFEssTweaksRP.IsChecked = $false
- }
- If ( $WPFEssTweaksServices.IsChecked -eq $true ) {
- # Set Services to Manual
-
- $services = @(
- "ALG" # Application Layer Gateway Service(Provides support for 3rd party protocol plug-ins for Internet Connection Sharing)
- "AJRouter" # Needed for AllJoyn Router Service
- "BcastDVRUserService_48486de" # GameDVR and Broadcast is used for Game Recordings and Live Broadcasts
- #"BDESVC" # Bitlocker Drive Encryption Service
- #"BFE" # Base Filtering Engine (Manages Firewall and Internet Protocol security)
- #"BluetoothUserService_48486de" # Bluetooth user service supports proper functionality of Bluetooth features relevant to each user session.
- #"BrokerInfrastructure" # Windows Infrastructure Service (Controls which background tasks can run on the system)
- "Browser" # Let users browse and locate shared resources in neighboring computers
- "BthAvctpSvc" # AVCTP service (needed for Bluetooth Audio Devices or Wireless Headphones)
- "CaptureService_48486de" # Optional screen capture functionality for applications that call the Windows.Graphics.Capture API.
- "cbdhsvc_48486de" # Clipboard Service
- "diagnosticshub.standardcollector.service" # Microsoft (R) Diagnostics Hub Standard Collector Service
- "DiagTrack" # Diagnostics Tracking Service
- "dmwappushservice" # WAP Push Message Routing Service
- "DPS" # Diagnostic Policy Service (Detects and Troubleshoots Potential Problems)
- "edgeupdate" # Edge Update Service
- "edgeupdatem" # Another Update Service
- #"EntAppSvc" # Enterprise Application Management.
- "Fax" # Fax Service
- "fhsvc" # Fax History
- "FontCache" # Windows font cache
- #"FrameServer" # Windows Camera Frame Server (Allows multiple clients to access video frames from camera devices)
- "gupdate" # Google Update
- "gupdatem" # Another Google Update Service
- #"iphlpsvc" # ipv6(Most websites use ipv4 instead) - Needed for Xbox Live
- "lfsvc" # Geolocation Service
- #"LicenseManager" # Disable LicenseManager (Windows Store may not work properly)
- "lmhosts" # TCP/IP NetBIOS Helper
- "MapsBroker" # Downloaded Maps Manager
- "MicrosoftEdgeElevationService" # Another Edge Update Service
- "MSDTC" # Distributed Transaction Coordinator
- "NahimicService" # Nahimic Service
- #"ndu" # Windows Network Data Usage Monitor (Disabling Breaks Task Manager Per-Process Network Monitoring)
- "NetTcpPortSharing" # Net.Tcp Port Sharing Service
- "PcaSvc" # Program Compatibility Assistant Service
- "PerfHost" # Remote users and 64-bit processes to query performance.
- "PhoneSvc" # Phone Service(Manages the telephony state on the device)
- #"PNRPsvc" # Peer Name Resolution Protocol (Some peer-to-peer and collaborative applications, such as Remote Assistance, may not function, Discord will still work)
- #"p2psvc" # Peer Name Resolution Protocol(Enables multi-party communication using Peer-to-Peer Grouping. If disabled, some applications, such as HomeGroup, may not function. Discord will still work)iscord will still work)
- #"p2pimsvc" # Peer Networking Identity Manager (Peer-to-Peer Grouping services may not function, and some applications, such as HomeGroup and Remote Assistance, may not function correctly. Discord will still work)
- "PrintNotify" # Windows printer notifications and extentions
- "QWAVE" # Quality Windows Audio Video Experience (audio and video might sound worse)
- "RemoteAccess" # Routing and Remote Access
- "RemoteRegistry" # Remote Registry
- "RetailDemo" # Demo Mode for Store Display
- "RtkBtManServ" # Realtek Bluetooth Device Manager Service
- "SCardSvr" # Windows Smart Card Service
- "seclogon" # Secondary Logon (Disables other credentials only password will work)
- "SEMgrSvc" # Payments and NFC/SE Manager (Manages payments and Near Field Communication (NFC) based secure elements)
- "SharedAccess" # Internet Connection Sharing (ICS)
- #"Spooler" # Printing
- "stisvc" # Windows Image Acquisition (WIA)
- #"StorSvc" # StorSvc (usb external hard drive will not be reconized by windows)
- "SysMain" # Analyses System Usage and Improves Performance
- "TrkWks" # Distributed Link Tracking Client
- #"WbioSrvc" # Windows Biometric Service (required for Fingerprint reader / facial detection)
- "WerSvc" # Windows error reporting
- "wisvc" # Windows Insider program(Windows Insider will not work if Disabled)
- #"WlanSvc" # WLAN AutoConfig
- "WMPNetworkSvc" # Windows Media Player Network Sharing Service
- "WpcMonSvc" # Parental Controls
- "WPDBusEnum" # Portable Device Enumerator Service
- "WpnService" # WpnService (Push Notifications may not work)
- #"wscsvc" # Windows Security Center Service
- "WSearch" # Windows Search
- "XblAuthManager" # Xbox Live Auth Manager (Disabling Breaks Xbox Live Games)
- "XblGameSave" # Xbox Live Game Save Service (Disabling Breaks Xbox Live Games)
- "XboxNetApiSvc" # Xbox Live Networking Service (Disabling Breaks Xbox Live Games)
- "XboxGipSvc" # Xbox Accessory Management Service
- # Hp services
- "HPAppHelperCap"
- "HPDiagsCap"
- "HPNetworkCap"
- "HPSysInfoCap"
- "HpTouchpointAnalyticsService"
- # Hyper-V services
- "HvHost"
- "vmicguestinterface"
- "vmicheartbeat"
- "vmickvpexchange"
- "vmicrdv"
- "vmicshutdown"
- "vmictimesync"
- "vmicvmsession"
- # Services that cannot be disabled
- #"WdNisSvc"
- )
-
- foreach ($service in $services) {
- # -ErrorAction SilentlyContinue is so it doesn't write an error to stdout if a service doesn't exist
-
- Write-Host "Setting $service StartupType to Manual"
- Get-Service -Name $service -ErrorAction SilentlyContinue | Set-Service -StartupType Manual
- }
- $WPFEssTweaksServices.IsChecked = $false
- }
- If ( $WPFEssTweaksStorage.IsChecked -eq $true ) {
- Write-Host "Disabling Storage Sense..."
- Remove-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy" -Recurse -ErrorAction SilentlyContinue
- $WPFEssTweaksStorage.IsChecked = $false
- }
- If ( $WPFEssTweaksTele.IsChecked -eq $true ) {
- Write-Host "Disabling Telemetry..."
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 0
- Disable-ScheduledTask -TaskName "Microsoft\Windows\Application Experience\Microsoft Compatibility Appraiser" | Out-Null
- Disable-ScheduledTask -TaskName "Microsoft\Windows\Application Experience\ProgramDataUpdater" | Out-Null
- Disable-ScheduledTask -TaskName "Microsoft\Windows\Autochk\Proxy" | Out-Null
- Disable-ScheduledTask -TaskName "Microsoft\Windows\Customer Experience Improvement Program\Consolidator" | Out-Null
- Disable-ScheduledTask -TaskName "Microsoft\Windows\Customer Experience Improvement Program\UsbCeip" | Out-Null
- Disable-ScheduledTask -TaskName "Microsoft\Windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector" | Out-Null
- Write-Host "Disabling Application suggestions..."
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "ContentDeliveryAllowed" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "OemPreInstalledAppsEnabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "PreInstalledAppsEnabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "PreInstalledAppsEverEnabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SilentInstalledAppsEnabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338387Enabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338388Enabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338389Enabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-353698Enabled" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SystemPaneSuggestionsEnabled" -Type DWord -Value 0
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableWindowsConsumerFeatures" -Type DWord -Value 1
- Write-Host "Disabling Feedback..."
- If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules")) {
- New-Item -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Name "NumberOfSIUFInPeriod" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "DoNotShowFeedbackNotifications" -Type DWord -Value 1
- Disable-ScheduledTask -TaskName "Microsoft\Windows\Feedback\Siuf\DmClient" -ErrorAction SilentlyContinue | Out-Null
- Disable-ScheduledTask -TaskName "Microsoft\Windows\Feedback\Siuf\DmClientOnScenarioDownload" -ErrorAction SilentlyContinue | Out-Null
- Write-Host "Disabling Tailored Experiences..."
- If (!(Test-Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent")) {
- New-Item -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableTailoredExperiencesWithDiagnosticData" -Type DWord -Value 1
- Write-Host "Disabling Advertising ID..."
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" -Name "DisabledByGroupPolicy" -Type DWord -Value 1
- Write-Host "Disabling Error reporting..."
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting" -Name "Disabled" -Type DWord -Value 1
- Disable-ScheduledTask -TaskName "Microsoft\Windows\Windows Error Reporting\QueueReporting" | Out-Null
- Write-Host "Restricting Windows Update P2P only to local network..."
- If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config")) {
- New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" -Name "DODownloadMode" -Type DWord -Value 1
- Write-Host "Stopping and disabling Diagnostics Tracking Service..."
- Stop-Service "DiagTrack" -WarningAction SilentlyContinue
- Set-Service "DiagTrack" -StartupType Disabled
- Write-Host "Stopping and disabling WAP Push Service..."
- Stop-Service "dmwappushservice" -WarningAction SilentlyContinue
- Set-Service "dmwappushservice" -StartupType Disabled
- Write-Host "Enabling F8 boot menu options..."
- bcdedit /set `{current`} bootmenupolicy Legacy | Out-Null
- Write-Host "Disabling Remote Assistance..."
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Remote Assistance" -Name "fAllowToGetHelp" -Type DWord -Value 0
- Write-Host "Stopping and disabling Superfetch service..."
- Stop-Service "SysMain" -WarningAction SilentlyContinue
- Set-Service "SysMain" -StartupType Disabled
-
- # Task Manager Details
- If ((get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name CurrentBuild).CurrentBuild -lt 22557) {
- Write-Host "Showing task manager details..."
- $taskmgr = Start-Process -WindowStyle Hidden -FilePath taskmgr.exe -PassThru
- Do {
- Start-Sleep -Milliseconds 100
- $preferences = Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager" -Name "Preferences" -ErrorAction SilentlyContinue
- } Until ($preferences)
- Stop-Process $taskmgr
- $preferences.Preferences[28] = 0
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\TaskManager" -Name "Preferences" -Type Binary -Value $preferences.Preferences
- }
- else { Write-Host "Task Manager patch not run in builds 22557+ due to bug" }
-
- Write-Host "Showing file operations details..."
- If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager")) {
- New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager" | Out-Null
- }
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager" -Name "EnthusiastMode" -Type DWord -Value 1
- Write-Host "Hiding Task View button..."
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ShowTaskViewButton" -Type DWord -Value 0
- Write-Host "Hiding People icon..."
- If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People")) {
- New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" | Out-Null
- }
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" -Name "PeopleBand" -Type DWord -Value 0
-
- Write-Host "Changing default Explorer view to This PC..."
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "LaunchTo" -Type DWord -Value 1
-
- ## Enable Long Paths
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" -Name "LongPathsEnabled" -Type DWORD -Value 1
-
- Write-Host "Hiding 3D Objects icon from This PC..."
- Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}" -Recurse -ErrorAction SilentlyContinue
-
- ## Performance Tweaks and More Telemetry
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching" -Name "SearchOrderConfig" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile" -Name "SystemResponsiveness" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control" -Name "WaitToKillServiceTimeout" -Type DWord -Value 2000
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "MenuShowDelay" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "WaitToKillAppTimeout" -Type DWord -Value 5000
- Remove-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "HungAppTimeout" -ErrorAction SilentlyContinue
- # Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "HungAppTimeout" -Type DWord -Value 4000 # Note: This caused flickering
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "AutoEndTasks" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "LowLevelHooksTimeout" -Type DWord -Value 1000
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "WaitToKillServiceTimeout" -Type DWord -Value 2000
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "ClearPageFileAtShutdown" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\Control Panel\Mouse" -Name "MouseHoverTime" -Type DWord -Value 10
-
-
- # Network Tweaks
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" -Name "IRPStackSize" -Type DWord -Value 20
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile" -Name "NetworkThrottlingIndex" -Type DWord -Value 4294967295
-
- # Gaming Tweaks
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games" -Name "GPU Priority" -Type DWord -Value 8
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games" -Name "Priority" -Type DWord -Value 6
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games" -Name "Scheduling Category" -Type String -Value "High"
-
- # Group svchost.exe processes
- $ram = (Get-CimInstance -ClassName Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum / 1kb
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control" -Name "SvcHostSplitThresholdInKB" -Type DWord -Value $ram -Force
-
- Write-Host "Disable News and Interests"
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" -Name "EnableFeeds" -Type DWord -Value 0
- # Remove "News and Interest" from taskbar
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Feeds" -Name "ShellFeedsTaskbarViewMode" -Type DWord -Value 2
-
- # remove "Meet Now" button from taskbar
-
- If (!(Test-Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer")) {
- New-Item -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Force | Out-Null
- }
-
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" -Name "HideSCAMeetNow" -Type DWord -Value 1
-
- Write-Host "Removing AutoLogger file and restricting directory..."
- $autoLoggerDir = "$env:PROGRAMDATA\Microsoft\Diagnosis\ETLLogs\AutoLogger"
- If (Test-Path "$autoLoggerDir\AutoLogger-Diagtrack-Listener.etl") {
- Remove-Item "$autoLoggerDir\AutoLogger-Diagtrack-Listener.etl"
- }
- icacls $autoLoggerDir /deny SYSTEM:`(OI`)`(CI`)F | Out-Null
-
- Write-Host "Stopping and disabling Diagnostics Tracking Service..."
- Stop-Service "DiagTrack"
- Set-Service "DiagTrack" -StartupType Disabled
- Write-Host "Doing Security checks for Administrator Account and Group Policy"
- if (($(Get-WMIObject -class Win32_ComputerSystem | Select-Object username).username).IndexOf('Administrator') -eq -1) {
- net user administrator /active:no
- }
-
- $WPFEssTweaksTele.IsChecked = $false
- }
- If ( $WPFEssTweaksWifi.IsChecked -eq $true ) {
- Write-Host "Disabling Wi-Fi Sense..."
- If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting")) {
- New-Item -Path "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting" -Name "Value" -Type DWord -Value 0
- If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots")) {
- New-Item -Path "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots" -Name "Value" -Type DWord -Value 0
- $WPFEssTweaksWifi.IsChecked = $false
- }
- If ( $WPFMiscTweaksLapPower.IsChecked -eq $true ) {
- If (Test-Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling") {
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling" -Name "PowerThrottlingOff" -Type DWord -Value 00000000
- }
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power" -Name "HiberbootEnabled" -Type DWord -Value 0000001
- $WPFMiscTweaksLapPower.IsChecked = $false
- }
- If ( $WPFMiscTweaksLapNum.IsChecked -eq $true ) {
- Write-Host "Disabling NumLock after startup..."
- If (!(Test-Path "HKU:")) {
- New-PSDrive -Name HKU -PSProvider Registry -Root HKEY_USERS | Out-Null
- }
- Set-ItemProperty -Path "HKU:\.DEFAULT\Control Panel\Keyboard" -Name "InitialKeyboardIndicators" -Type DWord -Value 0
- $WPFMiscTweaksLapNum.IsChecked = $false
- }
- If ( $WPFMiscTweaksPower.IsChecked -eq $true ) {
- If (Test-Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling") {
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling" -Name "PowerThrottlingOff" -Type DWord -Value 00000001
- }
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power" -Name "HiberbootEnabled" -Type DWord -Value 0000000
- $WPFMiscTweaksPower.IsChecked = $false
- }
- If ( $WPFMiscTweaksNum.IsChecked -eq $true ) {
- Write-Host "Enabling NumLock after startup..."
- If (!(Test-Path "HKU:")) {
- New-PSDrive -Name HKU -PSProvider Registry -Root HKEY_USERS | Out-Null
- }
- Set-ItemProperty -Path "HKU:\.DEFAULT\Control Panel\Keyboard" -Name "InitialKeyboardIndicators" -Type DWord -Value 2
- $WPFMiscTweaksNum.IsChecked = $false
- }
- If ( $WPFMiscTweaksExt.IsChecked -eq $true ) {
- Write-Host "Showing known file extensions..."
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "HideFileExt" -Type DWord -Value 0
- $WPFMiscTweaksExt.IsChecked = $false
- }
- If ( $WPFMiscTweaksUTC.IsChecked -eq $true ) {
- Write-Host "Setting BIOS time to UTC..."
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\TimeZoneInformation" -Name "RealTimeIsUniversal" -Type DWord -Value 1
- $WPFMiscTweaksUTC.IsChecked = $false
- }
- If ( $WPFMiscTweaksDisplay.IsChecked -eq $true ) {
- Write-Host "Adjusting visual effects for performance..."
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "DragFullWindows" -Type String -Value 0
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "MenuShowDelay" -Type String -Value 200
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "UserPreferencesMask" -Type Binary -Value ([byte[]](144, 18, 3, 128, 16, 0, 0, 0))
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop\WindowMetrics" -Name "MinAnimate" -Type String -Value 0
- Set-ItemProperty -Path "HKCU:\Control Panel\Keyboard" -Name "KeyboardDelay" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewAlphaSelect" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewShadow" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarAnimations" -Type DWord -Value 0
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects" -Name "VisualFXSetting" -Type DWord -Value 3
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\DWM" -Name "EnableAeroPeek" -Type DWord -Value 0
- Write-Host "Adjusted visual effects for performance"
- $WPFMiscTweaksDisplay.IsChecked = $false
- }
- If ( $WPFEssTweaksRemoveCortana.IsChecked -eq $true ) {
- Write-Host "Removing Cortana..."
- Get-AppxPackage -allusers Microsoft.549981C3F5F10 | Remove-AppxPackage
- $WPFEssTweaksRemoveCortana.IsChecked = $false
- }
- If ( $WPFEssTweaksRemoveEdge.IsChecked -eq $true ) {
- Write-Host "Removing Microsoft Edge..."
- Invoke-WebRequest -useb https://raw.githubusercontent.com/ChrisTitusTech/winutil/main/Edge_Removal.bat | Invoke-Expression
- $WPFEssTweaksRemoveEdge.IsChecked = $false
- }
- If ( $WPFEssTweaksDeBloat.IsChecked -eq $true ) {
- $Bloatware = @(
- #Unnecessary Windows 10 AppX Apps
- "3DBuilder"
- "Microsoft3DViewer"
- "AppConnector"
- "BingFinance"
- "BingNews"
- "BingSports"
- "BingTranslator"
- "BingWeather"
- "BingFoodAndDrink"
- "BingHealthAndFitness"
- "BingTravel"
- "MinecraftUWP"
- "GamingServices"
- # "WindowsReadingList"
- "GetHelp"
- "Getstarted"
- "Messaging"
- "Microsoft3DViewer"
- "MicrosoftSolitaireCollection"
- "NetworkSpeedTest"
- "News"
- "Lens"
- "Sway"
- "OneNote"
- "OneConnect"
- "People"
- "Print3D"
- "SkypeApp"
- "Todos"
- "Wallet"
- "Whiteboard"
- "WindowsAlarms"
- "windowscommunicationsapps"
- "WindowsFeedbackHub"
- "WindowsMaps"
- "WindowsPhone"
- "WindowsSoundRecorder"
- "XboxApp"
- "ConnectivityStore"
- "CommsPhone"
- "ScreenSketch"
- "TCUI"
- "XboxGameOverlay"
- "XboxGameCallableUI"
- "XboxSpeechToTextOverlay"
- "MixedReality.Portal"
- "ZuneMusic"
- "ZuneVideo"
- #"YourPhone"
- "Getstarted"
- "MicrosoftOfficeHub"
-
- #Sponsored Windows 10 AppX Apps
- #Add sponsored/featured apps to remove in the "*AppName*" format
- "EclipseManager"
- "ActiproSoftwareLLC"
- "AdobeSystemsIncorporated.AdobePhotoshopExpress"
- "Duolingo-LearnLanguagesforFree"
- "PandoraMediaInc"
- "CandyCrush"
- "BubbleWitch3Saga"
- "Wunderlist"
- "Flipboard"
- "Twitter"
- "Facebook"
- "Royal Revolt"
- "Sway"
- "Speed Test"
- "Dolby"
- "Viber"
- "ACGMediaPlayer"
- "Netflix"
- "OneCalendar"
- "LinkedInforWindows"
- "HiddenCityMysteryofShadows"
- "Hulu"
- "HiddenCity"
- "AdobePhotoshopExpress"
- "HotspotShieldFreeVPN"
-
- #Optional: Typically not removed but you can if you need to
- "Advertising"
- #"MSPaint"
- #"MicrosoftStickyNotes"
- #"Windows.Photos"
- #"WindowsCalculator"
- #"WindowsStore"
-
- # HPBloatware Packages
- "HPJumpStarts"
- "HPPCHardwareDiagnosticsWindows"
- "HPPowerManager"
- "HPPrivacySettings"
- "HPSupportAssistant"
- "HPSureShieldAI"
- "HPSystemInformation"
- "HPQuickDrop"
- "HPWorkWell"
- "myHP"
- "HPDesktopSupportUtilities"
- "HPQuickTouch"
- "HPEasyClean"
- "HPSystemInformation"
- )
-
- ## Teams Removal
- # Remove Teams Machine-Wide Installer
- Write-Host "Removing Teams Machine-wide Installer" -ForegroundColor Yellow
- $MachineWide = Get-WmiObject -Class Win32_Product | Where-Object { $_.Name -eq "Teams Machine-Wide Installer" }
- $MachineWide.Uninstall()
- # Remove Teams for Current Users
- $localAppData = "$($env:LOCALAPPDATA)\Microsoft\Teams"
- $programData = "$($env:ProgramData)\$($env:USERNAME)\Microsoft\Teams"
- If (Test-Path "$($localAppData)\Current\Teams.exe") {
- unInstallTeams($localAppData)
- }
- elseif (Test-Path "$($programData)\Current\Teams.exe") {
- unInstallTeams($programData)
- }
- else {
- Write-Warning "Teams installation not found"
- }
- # Get all Users
- $Users = Get-ChildItem -Path "$($ENV:SystemDrive)\Users"
- # Process all the Users
- $Users | ForEach-Object {
- Write-Host "Process user: $($_.Name)" -ForegroundColor Yellow
- #Locate installation folder
- $localAppData = "$($ENV:SystemDrive)\Users\$($_.Name)\AppData\Local\Microsoft\Teams"
- $programData = "$($env:ProgramData)\$($_.Name)\Microsoft\Teams"
- If (Test-Path "$($localAppData)\Current\Teams.exe") {
- unInstallTeams($localAppData)
- }
- elseif (Test-Path "$($programData)\Current\Teams.exe") {
- unInstallTeams($programData)
- }
- else {
- Write-Warning "Teams installation not found for user $($_.Name)"
- }
- }
- cmd /c winget uninstall -h "Microsoft Teams"
-
- Write-Host "Removing Bloatware"
-
- foreach ($Bloat in $Bloatware) {
- Get-AppxPackage "*$Bloat*" | Remove-AppxPackage
- Get-AppxProvisionedPackage -Online | Where-Object DisplayName -like "*$Bloat*" | Remove-AppxProvisionedPackage -Online
- Write-Host "Trying to remove $Bloat."
- }
-
- Write-Host "Finished Removing Bloatware Apps"
- Write-Host "Removing Bloatware Programs"
- # Remove installed programs
- $InstalledPrograms = Get-Package | Where-Object { $UninstallPrograms -contains $_.Name }
- $InstalledPrograms | ForEach-Object {
-
- Write-Host -Object "Attempting to uninstall: [$($_.Name)]..."
-
- Try {
- $Null = $_ | Uninstall-Package -AllVersions -Force -ErrorAction Stop
- Write-Host -Object "Successfully uninstalled: [$($_.Name)]"
- }
- Catch {
- Write-Warning -Message "Failed to uninstall: [$($_.Name)]"
- }
- }
- Write-Host "Finished Removing Bloatware Programs"
- $WPFEssTweaksDeBloat.IsChecked = $false
- }
-
- Write-Host "================================="
- Write-Host "-- Tweaks are Finished ---"
- Write-Host "================================="
-
- $ButtonType = [System.Windows.MessageBoxButton]::OK
- $MessageboxTitle = "Tweaks are Finished "
- $Messageboxbody = ("Done")
- $MessageIcon = [System.Windows.MessageBoxImage]::Information
-
- [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
- })
-
-$WPFEnableDarkMode.Add_Click({
- Write-Host "Enabling Dark Mode"
- $Theme = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize"
- Set-ItemProperty $Theme AppsUseLightTheme -Value 0
- Write-Host "Enabled"
- }
-)
-
-$WPFDisableDarkMode.Add_Click({
- Write-Host "Disabling Dark Mode"
- $Theme = "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize"
- Set-ItemProperty $Theme AppsUseLightTheme -Value 1
- Write-Host "Disabled"
- }
-)
-#===========================================================================
-# Undo All
-#===========================================================================
-$WPFundoall.Add_Click({
- Write-Host "Creating Restore Point in case something bad happens"
- Enable-ComputerRestore -Drive "$env:SystemDrive"
- Checkpoint-Computer -Description "RestorePoint1" -RestorePointType "MODIFY_SETTINGS"
-
- Write-Host "Enabling Telemetry..."
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 1
- Write-Host "Enabling Wi-Fi Sense"
- Set-ItemProperty -Path "HKLM:\Software\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting" -Name "Value" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\Software\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots" -Name "Value" -Type DWord -Value 1
- Write-Host "Enabling Application suggestions..."
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "ContentDeliveryAllowed" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "OemPreInstalledAppsEnabled" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "PreInstalledAppsEnabled" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "PreInstalledAppsEverEnabled" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SilentInstalledAppsEnabled" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338387Enabled" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338388Enabled" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338389Enabled" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-353698Enabled" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SystemPaneSuggestionsEnabled" -Type DWord -Value 1
- If (Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent") {
- Remove-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Recurse -ErrorAction SilentlyContinue
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableWindowsConsumerFeatures" -Type DWord -Value 0
- Write-Host "Enabling Activity History..."
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "EnableActivityFeed" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "PublishUserActivities" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "UploadUserActivities" -Type DWord -Value 1
- Write-Host "Enable Location Tracking..."
- If (Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location") {
- Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Recurse -ErrorAction SilentlyContinue
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Name "Value" -Type String -Value "Allow"
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}" -Name "SensorPermissionState" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration" -Name "Status" -Type DWord -Value 1
- Write-Host "Enabling automatic Maps updates..."
- Set-ItemProperty -Path "HKLM:\SYSTEM\Maps" -Name "AutoUpdateEnabled" -Type DWord -Value 1
- Write-Host "Enabling Feedback..."
- If (Test-Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules") {
- Remove-Item -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Recurse -ErrorAction SilentlyContinue
- }
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Name "NumberOfSIUFInPeriod" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "DoNotShowFeedbackNotifications" -Type DWord -Value 0
- Write-Host "Enabling Tailored Experiences..."
- If (Test-Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent") {
- Remove-Item -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Recurse -ErrorAction SilentlyContinue
- }
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableTailoredExperiencesWithDiagnosticData" -Type DWord -Value 0
- Write-Host "Disabling Advertising ID..."
- If (Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo") {
- Remove-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" -Recurse -ErrorAction SilentlyContinue
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" -Name "DisabledByGroupPolicy" -Type DWord -Value 0
- Write-Host "Allow Error reporting..."
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting" -Name "Disabled" -Type DWord -Value 0
- Write-Host "Allowing Diagnostics Tracking Service..."
- Stop-Service "DiagTrack" -WarningAction SilentlyContinue
- Set-Service "DiagTrack" -StartupType Manual
- Write-Host "Allowing WAP Push Service..."
- Stop-Service "dmwappushservice" -WarningAction SilentlyContinue
- Set-Service "dmwappushservice" -StartupType Manual
- Write-Host "Allowing Home Groups services..."
- Stop-Service "HomeGroupListener" -WarningAction SilentlyContinue
- Set-Service "HomeGroupListener" -StartupType Manual
- Stop-Service "HomeGroupProvider" -WarningAction SilentlyContinue
- Set-Service "HomeGroupProvider" -StartupType Manual
- Write-Host "Enabling Storage Sense..."
- New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy" | Out-Null
- Write-Host "Allowing Superfetch service..."
- Stop-Service "SysMain" -WarningAction SilentlyContinue
- Set-Service "SysMain" -StartupType Manual
- Write-Host "Setting BIOS time to Local Time instead of UTC..."
- Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\TimeZoneInformation" -Name "RealTimeIsUniversal" -Type DWord -Value 0
- Write-Host "Enabling Hibernation..."
- Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Session Manager\Power" -Name "HibernteEnabled" -Type Dword -Value 1
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings" -Name "ShowHibernateOption" -Type Dword -Value 1
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization" -Name "NoLockScreen" -ErrorAction SilentlyContinue
-
- Write-Host "Hiding file operations details..."
- If (Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager") {
- Remove-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager" -Recurse -ErrorAction SilentlyContinue
- }
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager" -Name "EnthusiastMode" -Type DWord -Value 0
- Write-Host "Showing Task View button..."
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ShowTaskViewButton" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" -Name "PeopleBand" -Type DWord -Value 1
-
- Write-Host "Changing default Explorer view to Quick Access..."
- Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "LaunchTo" -Type DWord -Value 1
-
- Write-Host "Unrestricting AutoLogger directory"
- $autoLoggerDir = "$env:PROGRAMDATA\Microsoft\Diagnosis\ETLLogs\AutoLogger"
- icacls $autoLoggerDir /grant:r SYSTEM:`(OI`)`(CI`)F | Out-Null
-
- Write-Host "Enabling and starting Diagnostics Tracking Service"
- Set-Service "DiagTrack" -StartupType Automatic
- Start-Service "DiagTrack"
-
- Write-Host "Hiding known file extensions"
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "HideFileExt" -Type DWord -Value 1
-
- Write-Host "Reset Local Group Policies to Stock Defaults"
- # cmd /c secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
- cmd /c RD /S /Q "%WinDir%\System32\GroupPolicyUsers"
- cmd /c RD /S /Q "%WinDir%\System32\GroupPolicy"
- cmd /c gpupdate /force
- # Considered using Invoke-GPUpdate but requires module most people won't have installed
-
- Write-Output "Adjusting visual effects for appearance..."
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "DragFullWindows" -Type String -Value 1
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "MenuShowDelay" -Type String -Value 400
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "UserPreferencesMask" -Type Binary -Value ([byte[]](158, 30, 7, 128, 18, 0, 0, 0))
- Set-ItemProperty -Path "HKCU:\Control Panel\Desktop\WindowMetrics" -Name "MinAnimate" -Type String -Value 1
- Set-ItemProperty -Path "HKCU:\Control Panel\Keyboard" -Name "KeyboardDelay" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewAlphaSelect" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewShadow" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarAnimations" -Type DWord -Value 1
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects" -Name "VisualFXSetting" -Type DWord -Value 3
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\DWM" -Name "EnableAeroPeek" -Type DWord -Value 1
- Remove-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "HungAppTimeout" -ErrorAction SilentlyContinue
- Write-Host "Restoring Clipboard History..."
- Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Clipboard" -Name "EnableClipboardHistory" -ErrorAction SilentlyContinue
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "AllowClipboardHistory" -ErrorAction SilentlyContinue
- Write-Host "Enabling Notifications and Action Center"
- Remove-Item -Path HKCU:\SOFTWARE\Policies\Microsoft\Windows\Explorer -Force
- Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\PushNotifications" -Name "ToastEnabled"
- Write-Host "Restoring Default Right Click Menu Layout"
- Remove-Item -Path "HKCU:\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" -Recurse -Confirm:$false -Force
-
- Write-Host "Reset News and Interests"
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" -Name "EnableFeeds" -Type DWord -Value 1
- # Remove "News and Interest" from taskbar
- Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Feeds" -Name "ShellFeedsTaskbarViewMode" -Type DWord -Value 0
- Write-Host "Done - Reverted to Stock Settings"
-
- #Enable Gamebar Presence Writer
- PowerRun.exe /SW:0 Powershell.exe -command { Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsRuntime\ActivatableClassId\Windows.Gaming.GameBar.PresenceServer.Internal.PresenceWriter" -Name "ActivationType" -Type DWord -Value 1 }
-
- Write-Host "Essential Undo Completed"
-
- $ButtonType = [System.Windows.MessageBoxButton]::OK
- $MessageboxTitle = "Undo All"
- $Messageboxbody = ("Done")
- $MessageIcon = [System.Windows.MessageBoxImage]::Information
-
- [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
-
- Write-Host "================================="
- Write-Host "--- Undo All is Finished ---"
- Write-Host "================================="
- })
-#===========================================================================
-# Tab 3 - Config Buttons
-#===========================================================================
-$WPFFeatureInstall.Add_Click({
-
- If ( $WPFFeaturesdotnet.IsChecked -eq $true ) {
- Enable-WindowsOptionalFeature -Online -FeatureName "NetFx4-AdvSrvs" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "NetFx3" -All -NoRestart
- }
- If ( $WPFFeatureshyperv.IsChecked -eq $true ) {
- Enable-WindowsOptionalFeature -Online -FeatureName "HypervisorPlatform" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Hyper-V-All" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Hyper-V" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Hyper-V-Tools-All" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Hyper-V-Management-PowerShell" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Hyper-V-Hypervisor" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Hyper-V-Services" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Hyper-V-Management-Clients" -All -NoRestart
- cmd /c bcdedit /set hypervisorschedulertype classic
- Write-Host "HyperV is now installed and configured. Please Reboot before using."
- }
- If ( $WPFFeatureslegacymedia.IsChecked -eq $true ) {
- Enable-WindowsOptionalFeature -Online -FeatureName "WindowsMediaPlayer" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "MediaPlayback" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "DirectPlay" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "LegacyComponents" -All -NoRestart
- }
- If ( $WPFFeaturewsl.IsChecked -eq $true ) {
- Enable-WindowsOptionalFeature -Online -FeatureName "VirtualMachinePlatform" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "Microsoft-Windows-Subsystem-Linux" -All -NoRestart
- Write-Host "WSL is now installed and configured. Please Reboot before using."
- }
- If ( $WPFFeaturenfs.IsChecked -eq $true ) {
- Enable-WindowsOptionalFeature -Online -FeatureName "ServicesForNFS-ClientOnly" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "ClientForNFS-Infrastructure" -All -NoRestart
- Enable-WindowsOptionalFeature -Online -FeatureName "NFS-Administration" -All -NoRestart
- nfsadmin client stop
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" -Name "AnonymousUID" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default" -Name "AnonymousGID" -Type DWord -Value 0
- nfsadmin client start
- nfsadmin client localhost config fileaccess=755 SecFlavors=+sys -krb5 -krb5i
- Write-Host "NFS is now setup for user based NFS mounts"
- }
- $ButtonType = [System.Windows.MessageBoxButton]::OK
- $MessageboxTitle = "All features are now installed "
- $Messageboxbody = ("Done")
- $MessageIcon = [System.Windows.MessageBoxImage]::Information
-
- [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
-
- Write-Host "================================="
- Write-Host "--- Features are Installed ---"
- Write-Host "================================="
- })
-
-$WPFPanelDISM.Add_Click({
- Start-Process PowerShell -ArgumentList "Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan;
- Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow;
- Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth;
- Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow;
- Read-Host '`nPress Enter to Continue'" -verb runas
- })
-$WPFPanelAutologin.Add_Click({
- curl.exe -ss "https://live.sysinternals.com/Autologon.exe" -o autologin.exe # Official Microsoft recommendation https://learn.microsoft.com/en-us/sysinternals/downloads/autologon
- cmd /c autologin.exe
- })
-$WPFPanelcontrol.Add_Click({
- cmd /c control
- })
-$WPFPanelnetwork.Add_Click({
- cmd /c ncpa.cpl
- })
-$WPFPanelpower.Add_Click({
- cmd /c powercfg.cpl
- })
-$WPFPanelsound.Add_Click({
- cmd /c mmsys.cpl
- })
-$WPFPanelsystem.Add_Click({
- cmd /c sysdm.cpl
- })
-$WPFPaneluser.Add_Click({
- cmd /c "control userpasswords2"
- })
-#===========================================================================
-# Tab 4 - Updates Buttons
-#===========================================================================
-
-$WPFUpdatesdefault.Add_Click({
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "NoAutoUpdate" -Type DWord -Value 0
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "AUOptions" -Type DWord -Value 3
- If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config")) {
- New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" -Name "DODownloadMode" -Type DWord -Value 1
-
- $services = @(
- "BITS"
- "wuauserv"
- )
-
- foreach ($service in $services) {
- # -ErrorAction SilentlyContinue is so it doesn't write an error to stdout if a service doesn't exist
-
- Write-Host "Setting $service StartupType to Automatic"
- Get-Service -Name $service -ErrorAction SilentlyContinue | Set-Service -StartupType Automatic
- }
- Write-Host "Enabling driver offering through Windows Update..."
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata" -Name "PreventDeviceMetadataFromNetwork" -ErrorAction SilentlyContinue
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DontPromptForWindowsUpdate" -ErrorAction SilentlyContinue
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DontSearchWindowsUpdate" -ErrorAction SilentlyContinue
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DriverUpdateWizardWuSearchEnabled" -ErrorAction SilentlyContinue
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" -Name "ExcludeWUDriversInQualityUpdate" -ErrorAction SilentlyContinue
- Write-Host "Enabling Windows Update automatic restart..."
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "NoAutoRebootWithLoggedOnUsers" -ErrorAction SilentlyContinue
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "AUPowerManagement" -ErrorAction SilentlyContinue
- Write-Host "Enabled driver offering through Windows Update"
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "BranchReadinessLevel" -ErrorAction SilentlyContinue
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "DeferFeatureUpdatesPeriodInDays" -ErrorAction SilentlyContinue
- Remove-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "DeferQualityUpdatesPeriodInDays " -ErrorAction SilentlyContinue
- Write-Host "================================="
- Write-Host "--- Updates Set to Default ---"
- Write-Host "================================="
- })
-
-$WPFFixesUpdate.Add_Click({
- ### Reset Windows Update Script - reregister dlls, services, and remove registry entires.
- Write-Host "1. Stopping Windows Update Services..."
- Stop-Service -Name BITS
- Stop-Service -Name wuauserv
- Stop-Service -Name appidsvc
- Stop-Service -Name cryptsvc
-
- Write-Host "2. Remove QMGR Data file..."
- Remove-Item "$env:allusersprofile\Application Data\Microsoft\Network\Downloader\qmgr*.dat" -ErrorAction SilentlyContinue
-
- Write-Host "3. Renaming the Software Distribution and CatRoot Folder..."
- Rename-Item $env:systemroot\SoftwareDistribution SoftwareDistribution.bak -ErrorAction SilentlyContinue
- Rename-Item $env:systemroot\System32\Catroot2 catroot2.bak -ErrorAction SilentlyContinue
-
- Write-Host "4. Removing old Windows Update log..."
- Remove-Item $env:systemroot\WindowsUpdate.log -ErrorAction SilentlyContinue
-
- Write-Host "5. Resetting the Windows Update Services to defualt settings..."
- "sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)"
- "sc.exe sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)"
- Set-Location $env:systemroot\system32
-
- Write-Host "6. Registering some DLLs..."
- regsvr32.exe /s atl.dll
- regsvr32.exe /s urlmon.dll
- regsvr32.exe /s mshtml.dll
- regsvr32.exe /s shdocvw.dll
- regsvr32.exe /s browseui.dll
- regsvr32.exe /s jscript.dll
- regsvr32.exe /s vbscript.dll
- regsvr32.exe /s scrrun.dll
- regsvr32.exe /s msxml.dll
- regsvr32.exe /s msxml3.dll
- regsvr32.exe /s msxml6.dll
- regsvr32.exe /s actxprxy.dll
- regsvr32.exe /s softpub.dll
- regsvr32.exe /s wintrust.dll
- regsvr32.exe /s dssenh.dll
- regsvr32.exe /s rsaenh.dll
- regsvr32.exe /s gpkcsp.dll
- regsvr32.exe /s sccbase.dll
- regsvr32.exe /s slbcsp.dll
- regsvr32.exe /s cryptdlg.dll
- regsvr32.exe /s oleaut32.dll
- regsvr32.exe /s ole32.dll
- regsvr32.exe /s shell32.dll
- regsvr32.exe /s initpki.dll
- regsvr32.exe /s wuapi.dll
- regsvr32.exe /s wuaueng.dll
- regsvr32.exe /s wuaueng1.dll
- regsvr32.exe /s wucltui.dll
- regsvr32.exe /s wups.dll
- regsvr32.exe /s wups2.dll
- regsvr32.exe /s wuweb.dll
- regsvr32.exe /s qmgr.dll
- regsvr32.exe /s qmgrprxy.dll
- regsvr32.exe /s wucltux.dll
- regsvr32.exe /s muweb.dll
- regsvr32.exe /s wuwebv.dll
-
- Write-Host "7) Removing WSUS client settings..."
- REG DELETE "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v AccountDomainSid /f
- REG DELETE "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v PingID /f
- REG DELETE "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v SusClientId /f
-
- Write-Host "8) Resetting the WinSock..."
- netsh winsock reset
- netsh winhttp reset proxy
- netsh int ip reset
-
- Write-Host "9) Delete all BITS jobs..."
- Get-BitsTransfer | Remove-BitsTransfer
-
- Write-Host "10) Attempting to install the Windows Update Agent..."
- If (!((wmic OS get OSArchitecture | Out-String).IndexOf("64") -eq -1)) {
- wusa Windows8-RT-KB2937636-x64 /quiet
- }
- else {
- wusa Windows8-RT-KB2937636-x86 /quiet
- }
-
- Write-Host "11) Starting Windows Update Services..."
- Start-Service -Name BITS
- Start-Service -Name wuauserv
- Start-Service -Name appidsvc
- Start-Service -Name cryptsvc
-
- Write-Host "12) Forcing discovery..."
- wuauclt /resetauthorization /detectnow
-
- Write-Host "Process complete. Please reboot your computer."
-
- $ButtonType = [System.Windows.MessageBoxButton]::OK
- $MessageboxTitle = "Reset Windows Update "
- $Messageboxbody = ("Stock settings loaded.`n Please reboot your computer")
- $MessageIcon = [System.Windows.MessageBoxImage]::Information
-
- [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
- Write-Host "================================="
- Write-Host "-- Reset ALL Updates to Factory -"
- Write-Host "================================="
- })
-
-$WPFUpdatesdisable.Add_Click({
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "NoAutoUpdate" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "AUOptions" -Type DWord -Value 1
- If (!(Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config")) {
- New-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" -Name "DODownloadMode" -Type DWord -Value 0
-
- $services = @(
- "BITS"
- "wuauserv"
- )
-
- foreach ($service in $services) {
- # -ErrorAction SilentlyContinue is so it doesn't write an error to stdout if a service doesn't exist
-
- Write-Host "Setting $service StartupType to Disabled"
- Get-Service -Name $service -ErrorAction SilentlyContinue | Set-Service -StartupType Disabled
- }
- Write-Host "================================="
- Write-Host "--- Updates ARE DISABLED ---"
- Write-Host "================================="
- })
-$WPFUpdatessecurity.Add_Click({
- Write-Host "Disabling driver offering through Windows Update..."
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Device Metadata" -Name "PreventDeviceMetadataFromNetwork" -Type DWord -Value 1
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DontPromptForWindowsUpdate" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DontSearchWindowsUpdate" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching" -Name "DriverUpdateWizardWuSearchEnabled" -Type DWord -Value 0
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" -Name "ExcludeWUDriversInQualityUpdate" -Type DWord -Value 1
- Write-Host "Disabling Windows Update automatic restart..."
- If (!(Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU")) {
- New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Force | Out-Null
- }
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "NoAutoRebootWithLoggedOnUsers" -Type DWord -Value 1
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU" -Name "AUPowerManagement" -Type DWord -Value 0
- Write-Host "Disabled driver offering through Windows Update"
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "BranchReadinessLevel" -Type DWord -Value 20
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "DeferFeatureUpdatesPeriodInDays" -Type DWord -Value 365
- Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings" -Name "DeferQualityUpdatesPeriodInDays " -Type DWord -Value 4
-
- $ButtonType = [System.Windows.MessageBoxButton]::OK
- $MessageboxTitle = "Set Security Updates"
- $Messageboxbody = ("Recommended Update settings loaded")
- $MessageIcon = [System.Windows.MessageBoxImage]::Information
-
- [System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
- Write-Host "================================="
- Write-Host "-- Updates Set to Recommended ---"
- Write-Host "================================="
- })
-
-#===========================================================================
-# Shows the form
-#===========================================================================
-$Form.ShowDialog() | out-null