├── .gitignore ├── 1_ Making Custom ISO ├── 1_add Run as admin for PS1 Script to context │ └── 1_add_Run_as_administrator_to_PS1_context_menu.reg ├── 2_Installs useful Apps via Winget │ ├── Import AppX.ps1 │ └── packages.json ├── 3_NTLite Configs │ └── Windows11Ultimate.xml └── 4_Put this in Windows 11 iso Source folder │ └── appraiserres.dll ├── 2_Post Install ├── 1_add Run as admin for PS1 Script to context │ └── 1_add_Run_as_administrator_to_PS1_context_menu.reg ├── 2_Import Winget Apps │ ├── Import AppX.ps1 │ └── packages.json ├── 3_Run Scripts as Admin │ ├── Driver-GPU-Mem optimizations.ps1 │ ├── Optional_Remove Edge │ │ └── edgeremoval.bat │ ├── SvcHost Split Threshold.cmd │ └── TelemetryOff and PerfTweaks.bat ├── 4_Merge to Registry │ ├── DisableTelemetry&UnnecessaryTasks.reg │ ├── Graphics-Driver-Priority-Perf.reg │ ├── Optional_Disable Auto Microsoft Updates │ │ └── Disable Updates.reg │ └── Optional_Force GPU Max Freq_READ_NOTE │ │ ├── DisableDynamicPstates.reg │ │ └── WARNING READ THIS FIRST.txt ├── 5_Timer Optimization │ ├── 1. Put this in %WinDir% │ │ └── SetTimerResolution.exe │ ├── 2. Run .bat │ │ └── Windows 11 Timer optimization.bat │ └── 3. Run .ps1 │ │ └── SetResolutionTimer.ps1 ├── 6_ooShutup10 config │ └── ooshutup10.cfg ├── 7_Nvidia GPU Config │ └── Profile Inspector Config │ │ ├── Import Profiles and Settings to Profile Inspector │ │ ├── BaseProfile+Extras.nip │ │ ├── LatestWOpredefined.nip │ │ └── LatestWpredefined.nip │ │ └── Put this in Profile Inspectors folder │ │ └── CustomSettingNames.xml ├── Disable most of defender.bat └── Problem Solving │ ├── Run to fix any permissions issues │ ├── Appx Re-register.ps1 │ └── Register Appx.md │ └── Run to scan and fix corruption │ └── SFC-Dism-Chkdisk.ps1 ├── LICENSE ├── Optional_Changing OS Appearance ├── ExplorerPatcher Config │ ├── ExplorerPatcher_22621.2861.62.1.reg │ └── ExplorerPatcher_22621.3007.63.2.reg ├── Nilesoft Shell Config │ ├── imports │ │ ├── Environment.nss │ │ ├── Powertoys.nss │ │ ├── Snippets │ │ │ ├── 4gb_patch.nss │ │ │ ├── Compatibility.nss │ │ │ ├── all.autorename.nss │ │ │ ├── all.copy.list.cp.nss │ │ │ ├── all.copy.path.all.nss │ │ │ ├── all.copy.path.env.nss │ │ │ ├── all.copy.path.lnk.nss │ │ │ ├── all.copy.path.ps.nss │ │ │ ├── all.keyboard.shortcuts.nss │ │ │ ├── all.openwith.simple.ml.nss │ │ │ ├── all.power.nss │ │ │ ├── all.security.env.nss │ │ │ ├── app.NanaZip.nss │ │ │ ├── app.NanaZup.nss │ │ │ ├── app.sandbox.nss │ │ │ ├── commands.renamer.nss │ │ │ ├── dgVoodoo2.nss │ │ │ ├── nss.about.nss │ │ │ ├── nss.icons.segoe.nss │ │ │ ├── nss.icons.win.nss │ │ │ └── nss.paths.nss │ │ ├── all.security.env.nss │ │ ├── all.terminal.nss │ │ ├── app.FolderPainter1.nss │ │ ├── app.WinRAR.nss │ │ ├── bar.scroll.nss │ │ ├── develop.nss │ │ ├── file-manage.nss │ │ ├── goto.v2.nss │ │ ├── images.nss │ │ ├── media.nss │ │ ├── modify.nss │ │ ├── notepad.nss │ │ ├── taskbar.nss │ │ ├── theme.nss │ │ └── tools.nss │ └── shell.nss └── Winpaletter Theme │ └── theme.wpth ├── README.md └── Useful Shortcut to Restart to Bios └── RestartToBios.bat /.gitignore: -------------------------------------------------------------------------------- 1 | 2 | 2_Post Install/5_Timer Optimization/Windows 11 Timer optimization - Copy.bat 3 | 2_Post Install/New Reg to test.reg 4 | 2_Post Install/Problem Solving/Run to scan and fix corruption/TDK.log 5 | Optional_Changing OS Appearance/Nilesoft Shell Config/shell.nss.backup 6 | *.backup 7 | -------------------------------------------------------------------------------- /1_ Making Custom ISO/1_add Run as admin for PS1 Script to context/1_add_Run_as_administrator_to_PS1_context_menu.reg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gex581990/Ultimate-Windows-ISO-and-Optimizations/5a3444b4bcc8d2f505b18b5d8ed1a38c2a305fb2/1_ Making Custom ISO/1_add Run as admin for PS1 Script to context/1_add_Run_as_administrator_to_PS1_context_menu.reg -------------------------------------------------------------------------------- /1_ Making Custom ISO/2_Installs useful Apps via Winget/Import AppX.ps1: -------------------------------------------------------------------------------- 1 | Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass 2 | winget import -i $PSScriptRoot\packages.json 3 | Read-Host -Prompt "Press Enter to exit" -------------------------------------------------------------------------------- /1_ Making Custom ISO/2_Installs useful Apps via Winget/packages.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema" : "https://aka.ms/winget-packages.schema.2.0.json", 3 | "CreationDate" : "2025-04-10T15:55:24.105-00:00", 4 | "Sources" : 5 | [ 6 | { 7 | "Packages" : 8 | [ 9 | 10 | { 11 | "PackageIdentifier" : "Resplendence.LatencyMon" 12 | }, 13 | { 14 | "PackageIdentifier" : "Nlitesoft.NTLite" 15 | }, 16 | { 17 | "PackageIdentifier" : "Notepad++.Notepad++" 18 | }, 19 | { 20 | "PackageIdentifier" : "WinMerge.WinMerge" 21 | }, 22 | { 23 | "PackageIdentifier" : "RARLab.WinRAR" 24 | }, 25 | { 26 | "PackageIdentifier" : "winaero.tweaker" 27 | }, 28 | { 29 | "PackageIdentifier" : "DupeGuru.DupeGuru" 30 | }, 31 | { 32 | "PackageIdentifier" : "AdrienAllard.FileConverter" 33 | }, 34 | { 35 | "PackageIdentifier" : "Microsoft.VCRedist.2010.x64" 36 | }, 37 | { 38 | "PackageIdentifier" : "Nilesoft.Shell" 39 | }, 40 | { 41 | "PackageIdentifier" : "Microsoft.VCRedist.2008.x64" 42 | }, 43 | { 44 | "PackageIdentifier" : "TheDocumentFoundation.LibreOffice" 45 | }, 46 | { 47 | "PackageIdentifier" : "joncampbell123.DOSBox-X" 48 | }, 49 | { 50 | "PackageIdentifier" : "Nvidia.PhysX" 51 | }, 52 | { 53 | "PackageIdentifier" : "TechPowerUp.NVCleanstall" 54 | }, 55 | { 56 | "PackageIdentifier" : "Microsoft.PowerShell" 57 | }, 58 | { 59 | "PackageIdentifier" : "valinet.ExplorerPatcher" 60 | }, 61 | { 62 | "PackageIdentifier" : "Microsoft.VisualStudioCode" 63 | }, 64 | { 65 | "PackageIdentifier" : "SpecialK.SpecialK" 66 | }, 67 | { 68 | "PackageIdentifier" : "Wagnardsoft.DisplayDriverUninstaller" 69 | }, 70 | { 71 | "PackageIdentifier" : "CodecGuide.K-LiteCodecPack.Mega" 72 | }, 73 | { 74 | "PackageIdentifier" : "ZeusSoftware.nGlide" 75 | }, 76 | { 77 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.9" 78 | }, 79 | { 80 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.6" 81 | }, 82 | { 83 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.3_1" 84 | }, 85 | { 86 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.7" 87 | }, 88 | { 89 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.5" 90 | }, 91 | { 92 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.7" 93 | }, 94 | { 95 | "PackageIdentifier" : "Microsoft.VCRedist.2015+.x86" 96 | }, 97 | { 98 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.3_1" 99 | }, 100 | { 101 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.9" 102 | }, 103 | { 104 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.8" 105 | }, 106 | { 107 | "PackageIdentifier" : "Microsoft.VCRedist.2015+.x64" 108 | }, 109 | { 110 | "PackageIdentifier" : "Microsoft.VCRedist.2005.x86" 111 | }, 112 | { 113 | "PackageIdentifier" : "Microsoft.DotNet.SDK.9" 114 | }, 115 | { 116 | "PackageIdentifier" : "Microsoft.VCRedist.2008.x86" 117 | }, 118 | { 119 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.6" 120 | }, 121 | { 122 | "PackageIdentifier" : "Microsoft.XNARedist" 123 | }, 124 | { 125 | "PackageIdentifier" : "Microsoft.VCRedist.2010.x86" 126 | }, 127 | { 128 | "PackageIdentifier" : "Nvidia.PhysXLegacy" 129 | }, 130 | { 131 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.5" 132 | }, 133 | { 134 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.8" 135 | }, 136 | { 137 | "PackageIdentifier" : "beeradmoore.dlss-swapper" 138 | }, 139 | { 140 | "PackageIdentifier" : "Opera.OperaGX" 141 | }, 142 | { 143 | "PackageIdentifier" : "Abdelrhman-AK.WinPaletter" 144 | }, 145 | { 146 | "PackageIdentifier" : "M2Team.NanaZip.Preview" 147 | }, 148 | { 149 | "PackageIdentifier" : "Microsoft.AppInstaller" 150 | }, 151 | { 152 | "PackageIdentifier" : "Microsoft.UI.Xaml.2.7" 153 | }, 154 | { 155 | "PackageIdentifier" : "Microsoft.UI.Xaml.2.8" 156 | }, 157 | { 158 | "PackageIdentifier" : "Microsoft.VCLibs.Desktop.14" 159 | }, 160 | { 161 | "PackageIdentifier" : "Microsoft.WindowsTerminal.Preview" 162 | } 163 | ], 164 | "SourceDetails" : 165 | { 166 | "Argument" : "https://cdn.winget.microsoft.com/cache", 167 | "Identifier" : "Microsoft.Winget.Source_8wekyb3d8bbwe", 168 | "Name" : "winget", 169 | "Type" : "Microsoft.PreIndexed.Package" 170 | } 171 | }, 172 | { 173 | "Packages" : 174 | [ 175 | { 176 | "PackageIdentifier" : "XP89DCGQ3K6VLD" 177 | } 178 | ], 179 | "SourceDetails" : 180 | { 181 | "Argument" : "https://storeedgefd.dsx.mp.microsoft.com/v9.0", 182 | "Identifier" : "StoreEdgeFD", 183 | "Name" : "msstore", 184 | "Type" : "Microsoft.Rest" 185 | } 186 | } 187 | ], 188 | "WinGetVersion" : "1.11.200-preview" 189 | } -------------------------------------------------------------------------------- /1_ Making Custom ISO/4_Put this in Windows 11 iso Source folder/appraiserres.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gex581990/Ultimate-Windows-ISO-and-Optimizations/5a3444b4bcc8d2f505b18b5d8ed1a38c2a305fb2/1_ Making Custom ISO/4_Put this in Windows 11 iso Source folder/appraiserres.dll -------------------------------------------------------------------------------- /2_Post Install/1_add Run as admin for PS1 Script to context/1_add_Run_as_administrator_to_PS1_context_menu.reg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gex581990/Ultimate-Windows-ISO-and-Optimizations/5a3444b4bcc8d2f505b18b5d8ed1a38c2a305fb2/2_Post Install/1_add Run as admin for PS1 Script to context/1_add_Run_as_administrator_to_PS1_context_menu.reg -------------------------------------------------------------------------------- /2_Post Install/2_Import Winget Apps/Import AppX.ps1: -------------------------------------------------------------------------------- 1 | Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass 2 | winget import -i $PSScriptRoot\packages.json 3 | Read-Host -Prompt "Press Enter to exit" -------------------------------------------------------------------------------- /2_Post Install/2_Import Winget Apps/packages.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema" : "https://aka.ms/winget-packages.schema.2.0.json", 3 | "CreationDate" : "2025-04-10T15:55:24.105-00:00", 4 | "Sources" : 5 | [ 6 | { 7 | "Packages" : 8 | [ 9 | 10 | { 11 | "PackageIdentifier" : "Resplendence.LatencyMon" 12 | }, 13 | { 14 | "PackageIdentifier" : "Nlitesoft.NTLite" 15 | }, 16 | { 17 | "PackageIdentifier" : "Notepad++.Notepad++" 18 | }, 19 | { 20 | "PackageIdentifier" : "WinMerge.WinMerge" 21 | }, 22 | { 23 | "PackageIdentifier" : "RARLab.WinRAR" 24 | }, 25 | { 26 | "PackageIdentifier" : "winaero.tweaker" 27 | }, 28 | { 29 | "PackageIdentifier" : "DupeGuru.DupeGuru" 30 | }, 31 | { 32 | "PackageIdentifier" : "AdrienAllard.FileConverter" 33 | }, 34 | { 35 | "PackageIdentifier" : "Microsoft.VCRedist.2010.x64" 36 | }, 37 | { 38 | "PackageIdentifier" : "Nilesoft.Shell" 39 | }, 40 | { 41 | "PackageIdentifier" : "Microsoft.VCRedist.2008.x64" 42 | }, 43 | { 44 | "PackageIdentifier" : "TheDocumentFoundation.LibreOffice" 45 | }, 46 | { 47 | "PackageIdentifier" : "joncampbell123.DOSBox-X" 48 | }, 49 | { 50 | "PackageIdentifier" : "Nvidia.PhysX" 51 | }, 52 | { 53 | "PackageIdentifier" : "TechPowerUp.NVCleanstall" 54 | }, 55 | { 56 | "PackageIdentifier" : "Microsoft.PowerShell" 57 | }, 58 | { 59 | "PackageIdentifier" : "valinet.ExplorerPatcher" 60 | }, 61 | { 62 | "PackageIdentifier" : "Microsoft.VisualStudioCode" 63 | }, 64 | { 65 | "PackageIdentifier" : "SpecialK.SpecialK" 66 | }, 67 | { 68 | "PackageIdentifier" : "Wagnardsoft.DisplayDriverUninstaller" 69 | }, 70 | { 71 | "PackageIdentifier" : "CodecGuide.K-LiteCodecPack.Mega" 72 | }, 73 | { 74 | "PackageIdentifier" : "ZeusSoftware.nGlide" 75 | }, 76 | { 77 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.9" 78 | }, 79 | { 80 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.6" 81 | }, 82 | { 83 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.3_1" 84 | }, 85 | { 86 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.7" 87 | }, 88 | { 89 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.5" 90 | }, 91 | { 92 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.7" 93 | }, 94 | { 95 | "PackageIdentifier" : "Microsoft.VCRedist.2015+.x86" 96 | }, 97 | { 98 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.3_1" 99 | }, 100 | { 101 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.9" 102 | }, 103 | { 104 | "PackageIdentifier" : "Microsoft.DotNet.DesktopRuntime.8" 105 | }, 106 | { 107 | "PackageIdentifier" : "Microsoft.VCRedist.2015+.x64" 108 | }, 109 | { 110 | "PackageIdentifier" : "Microsoft.VCRedist.2005.x86" 111 | }, 112 | { 113 | "PackageIdentifier" : "Microsoft.DotNet.SDK.9" 114 | }, 115 | { 116 | "PackageIdentifier" : "Microsoft.VCRedist.2008.x86" 117 | }, 118 | { 119 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.6" 120 | }, 121 | { 122 | "PackageIdentifier" : "Microsoft.XNARedist" 123 | }, 124 | { 125 | "PackageIdentifier" : "Microsoft.VCRedist.2010.x86" 126 | }, 127 | { 128 | "PackageIdentifier" : "Nvidia.PhysXLegacy" 129 | }, 130 | { 131 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.5" 132 | }, 133 | { 134 | "PackageIdentifier" : "Microsoft.DotNet.Runtime.8" 135 | }, 136 | { 137 | "PackageIdentifier" : "beeradmoore.dlss-swapper" 138 | }, 139 | { 140 | "PackageIdentifier" : "Opera.OperaGX" 141 | }, 142 | { 143 | "PackageIdentifier" : "Abdelrhman-AK.WinPaletter" 144 | }, 145 | { 146 | "PackageIdentifier" : "M2Team.NanaZip.Preview" 147 | }, 148 | { 149 | "PackageIdentifier" : "Microsoft.AppInstaller" 150 | }, 151 | { 152 | "PackageIdentifier" : "Microsoft.UI.Xaml.2.7" 153 | }, 154 | { 155 | "PackageIdentifier" : "Microsoft.UI.Xaml.2.8" 156 | }, 157 | { 158 | "PackageIdentifier" : "Microsoft.VCLibs.Desktop.14" 159 | }, 160 | { 161 | "PackageIdentifier" : "Microsoft.WindowsTerminal.Preview" 162 | } 163 | ], 164 | "SourceDetails" : 165 | { 166 | "Argument" : "https://cdn.winget.microsoft.com/cache", 167 | "Identifier" : "Microsoft.Winget.Source_8wekyb3d8bbwe", 168 | "Name" : "winget", 169 | "Type" : "Microsoft.PreIndexed.Package" 170 | } 171 | }, 172 | { 173 | "Packages" : 174 | [ 175 | { 176 | "PackageIdentifier" : "XP89DCGQ3K6VLD" 177 | } 178 | ], 179 | "SourceDetails" : 180 | { 181 | "Argument" : "https://storeedgefd.dsx.mp.microsoft.com/v9.0", 182 | "Identifier" : "StoreEdgeFD", 183 | "Name" : "msstore", 184 | "Type" : "Microsoft.Rest" 185 | } 186 | } 187 | ], 188 | "WinGetVersion" : "1.11.200-preview" 189 | } -------------------------------------------------------------------------------- /2_Post Install/3_Run Scripts as Admin/Driver-GPU-Mem optimizations.ps1: -------------------------------------------------------------------------------- 1 | Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass 2 | 3 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "ExitLatency" -Type DWord -Value 1 4 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "ExitLatencyCheckEnabled" -Type DWord -Value 1 5 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "Latency" -Type DWord -Value 1 6 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "LatencyToleranceDefault" -Type DWord -Value 1 7 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "LatencyToleranceFSVP" -Type DWord -Value 1 8 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "LatencyTolerancePerfOverride" -Type DWord -Value 1 9 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "LatencyToleranceScreenOffIR" -Type DWord -Value 1 10 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "LatencyToleranceVSyncEnabled" -Type DWord -Value 1 11 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Power" -Name "RtlCapabilityCheckLatency" -Type DWord -Value 1 12 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "D3PCLatency" -Type DWord -Value 1 13 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "F1TransitionLatency" -Type DWord -Value 1 14 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "LOWLATENCY" -Type DWord -Value 1 15 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "Node3DLowLatency" -Type DWord -Value 1 16 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "PciLatencyTimerControl" -Type DWord -Value "0x00000020" 17 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RMDeepL1EntryLatencyUsec" -Type DWord -Value 1 18 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RMHdcpKeyglobZero" -Type DWord -Value 1 19 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RmGspcMaxFtuS" -Type DWord -Value 1 20 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RmGspcMinFtuS" -Type DWord -Value 1 21 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RmGspcPerioduS" -Type DWord -Value 1 22 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RMLpwrEiIdleThresholdUs" -Type DWord -Value 1 23 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RMLpwrGrIdleThresholdUs" -Type DWord -Value 1 24 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RMLpwrGrRgIdleThresholdUs" -Type DWord -Value 1 25 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "RMLpwrMsIdleThresholdUs" -Type DWord -Value 1 26 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "VRDirectFlipDPCDelayUs" -Type DWord -Value 1 27 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "VRDirectFlipTimingMarginUs" -Type DWord -Value 1 28 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "VRDirectJITFlipMsHybridFlipDelayUs" -Type DWord -Value 1 29 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "vrrCursorMarginUs" -Type DWord -Value 1 30 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "vrrDeflickerMarginUs" -Type DWord -Value 1 31 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "vrrDeflickerMaxUs" -Type DWord -Value 1 32 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "PreferSystemMemoryContiguous" -Type DWord -Value 1 33 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "PerfLevelSrc" -Type DWord -Value 8738 34 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "powermizerenable" -Type DWord -Value 1 35 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "powermizerlevel" -Type DWord -Value 1 36 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "powermizerlevelac" -Type DWord -Value 1 37 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000" -Name "KMD_EnableGDIAcceleration" -Type DWord -Value 1 38 | 39 | New-Item -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" 40 | 41 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultD3TransitionLatencyActivelyUsed" -Type DWord -Value 1 42 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultD3TransitionLatencyIdleLongTime" -Type DWord -Value 1 43 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultD3TransitionLatencyIdleMonitorOff" -Type DWord -Value 1 44 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultD3TransitionLatencyIdleNoContext" -Type DWord -Value 1 45 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultD3TransitionLatencyIdleShortTime" -Type DWord -Value 1 46 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultD3TransitionLatencyIdleVeryLongTime" -Type DWord -Value 1 47 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceIdle0" -Type DWord -Value 1 48 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceIdle0MonitorOff" -Type DWord -Value 1 49 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceIdle1" -Type DWord -Value 1 50 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceIdle1MonitorOff" -Type DWord -Value 1 51 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceMemory" -Type DWord -Value 1 52 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceNoContext" -Type DWord -Value 1 53 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceNoContextMonitorOff" -Type DWord -Value 1 54 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceOther" -Type DWord -Value 1 55 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultLatencyToleranceTimerPeriod" -Type DWord -Value 1 56 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultMemoryRefreshLatencyToleranceActivelyUsed" -Type DWord -Value 1 57 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultMemoryRefreshLatencyToleranceMonitorOff" -Type DWord -Value 1 58 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "DefaultMemoryRefreshLatencyToleranceNoContext" -Type DWord -Value 1 59 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "Latency" -Type DWord -Value 1 60 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "MaxIAverageGraphicsLatencyInOneBucket" -Type DWord -Value 1 61 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "MiracastPerfTrackGraphicsLatency" -Type DWord -Value 1 62 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "MonitorLatencyTolerance" -Type DWord -Value 1 63 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "MonitorRefreshLatencyTolerance" -Type DWord -Value 1 64 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Power" -Name "TransitionLatency" -Type DWord -Value 1 65 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" -Name "__COMPAT_LAYER" -Type String -Value "~ DISABLEDXMAXIMIZEDWINDOWEDMODE" 66 | 67 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "DisablePagingExecutive" -Type DWord -Value 1 68 | Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" -Name "LargeSystemCache" -Type DWord -Value 1 69 | 70 | 71 | If (!(Test-Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\Explorer")) { 72 | New-Item -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\Explorer" | Out-Null 73 | } 74 | Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\Explorer" -Name "DisableNotificationCenter" -Type DWord -Value 1 75 | Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\PushNotifications" -Name "ToastEnabled" -Type DWord -Value 0 76 | 77 | Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ShowTaskViewButton" -Type DWord -Value 0 78 | 79 | If (!(Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People")) { 80 | New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" | Out-Null 81 | } 82 | Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" -Name "PeopleBand" -Type DWord -Value 0 83 | 84 | Disable-MMAgent -MemoryCompression 85 | 86 | Stop-Service "DiagTrack" -NoWait -Force 87 | Set-ServiceStartup -State 'Disabled' -Services "DiagTrack" 88 | 89 | Read-Host -Prompt "Press Enter to exit" 90 | -------------------------------------------------------------------------------- /2_Post Install/3_Run Scripts as Admin/SvcHost Split Threshold.cmd: -------------------------------------------------------------------------------- 1 | echo off 2 | color F0 3 | title SvcHost Split Threshold 4 | mode con: cols=92 lines=21 5 | 6 | :menu 7 | cls 8 | echo If you need assistance, please type in "assist". 9 | echo If you would like to return to default, please type in "default". 10 | echo Enter your amount of RAM (in MB): 11 | set /p a= 12 | if "%a%" == "2048" goto :2048 13 | if "%a%" == "3072" goto :3072 14 | if "%a%" == "4096" goto :4096 15 | if "%a%" == "6144" goto :6144 16 | if "%a%" == "8192" goto :8192 17 | if "%a%" == "10240" goto :10240 18 | if "%a%" == "12288" goto :12288 19 | if "%a%" == "16384" goto :16384 20 | if "%a%" == "20480" goto :20480 21 | if "%a%" == "24576" goto :24576 22 | if "%a%" == "32768" goto :32768 23 | if "%a%" == "49152" goto :49152 24 | if "%a%" == "65536" goto :65536 25 | if "%a%" == "default" goto :default 26 | if "%a%" == "assist" goto :assist 27 | cls 28 | 29 | rem **This is placed in front to make sure if misspelled, it will redirect you instead of applying the wrong setting** 30 | :misspell 31 | cls 32 | echo Misspell detected! 33 | timeout 2 > nul 34 | echo Redirecting back to menu. 35 | timeout 2 > nul 36 | goto :menu 37 | 38 | :2048 39 | cls 40 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 2097152 /f > nul 41 | cls 42 | echo Value set to 2048MB (or 2097152) 43 | timeout 2 > nul 44 | cls 45 | echo Exiting. 46 | timeout 1 > nul 47 | cls 48 | echo Exiting.. 49 | timeout 1 > nul 50 | cls 51 | echo Exiting... 52 | timeout 1 > nul 53 | exit 54 | 55 | :3072 56 | cls 57 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 3145728 /f > nul 58 | cls 59 | echo Value set to 3072MB (or 3145728) 60 | timeout 2 > nul 61 | cls 62 | echo Exiting. 63 | timeout 1 > nul 64 | cls 65 | echo Exiting.. 66 | timeout 1 > nul 67 | cls 68 | echo Exiting... 69 | timeout 1 > nul 70 | exit 71 | 72 | :4096 73 | cls 74 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 4194304 /f > nul 75 | cls 76 | echo Value set to 4096MB (or 4194304) 77 | timeout 2 > nul 78 | cls 79 | echo Exiting. 80 | timeout 1 > nul 81 | cls 82 | echo Exiting.. 83 | timeout 1 > nul 84 | cls 85 | echo Exiting... 86 | timeout 1 > nul 87 | exit 88 | 89 | :6144 90 | cls 91 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 6291456 /f > nul 92 | cls 93 | echo Value set to 6144MB (or 6291456) 94 | timeout 2 > nul 95 | cls 96 | echo Exiting. 97 | timeout 1 > nul 98 | cls 99 | echo Exiting.. 100 | timeout 1 > nul 101 | cls 102 | echo Exiting... 103 | timeout 1 > nul 104 | exit 105 | 106 | :8192 107 | cls 108 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 8388608 /f > nul 109 | cls 110 | echo Value set to 8192MB (or 8388608) 111 | timeout 2 > nul 112 | cls 113 | echo Exiting. 114 | timeout 1 > nul 115 | cls 116 | echo Exiting.. 117 | timeout 1 > nul 118 | cls 119 | echo Exiting... 120 | timeout 1 > nul 121 | exit 122 | 123 | :10240 124 | cls 125 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 10485760 /f > nul 126 | cls 127 | echo Value set to 10240MB (or 10485760) 128 | timeout 2 > nul 129 | cls 130 | echo Exiting. 131 | timeout 1 > nul 132 | cls 133 | echo Exiting.. 134 | timeout 1 > nul 135 | cls 136 | echo Exiting... 137 | timeout 1 > nul 138 | exit 139 | 140 | :12288 141 | cls 142 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 12582912 /f > nul 143 | cls 144 | echo Value set to 12288MB (or 12582912) 145 | timeout 2 > nul 146 | cls 147 | echo Exiting. 148 | timeout 1 > nul 149 | cls 150 | echo Exiting.. 151 | timeout 1 > nul 152 | cls 153 | echo Exiting... 154 | timeout 1 > nul 155 | exit 156 | 157 | :16384 158 | cls 159 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 16777216 /f > nul 160 | cls 161 | echo Value set to 16384MB (or 16777216) 162 | timeout 2 > nul 163 | cls 164 | echo Exiting. 165 | timeout 1 > nul 166 | cls 167 | echo Exiting.. 168 | timeout 1 > nul 169 | cls 170 | echo Exiting... 171 | timeout 1 > nul 172 | exit 173 | 174 | :20480 175 | cls 176 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 20971520 /f > nul 177 | cls 178 | echo Value set to 20480MB (or 20971520) 179 | timeout 2 > nul 180 | cls 181 | echo Exiting. 182 | timeout 1 > nul 183 | cls 184 | echo Exiting.. 185 | timeout 1 > nul 186 | cls 187 | echo Exiting... 188 | timeout 1 > nul 189 | exit 190 | 191 | :24576 192 | cls 193 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 25165824 /f > nul 194 | cls 195 | echo Value set to 24576MB (or 25165824) 196 | timeout 2 > nul 197 | cls 198 | echo Exiting. 199 | timeout 1 > nul 200 | cls 201 | echo Exiting.. 202 | timeout 1 > nul 203 | cls 204 | echo Exiting... 205 | timeout 1 > nul 206 | exit 207 | 208 | :32768 209 | cls 210 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 33554432 /f > nul 211 | cls 212 | echo Value set to 32768MB (or 33554432) 213 | timeout 2 > nul 214 | cls 215 | echo Exiting. 216 | timeout 1 > nul 217 | cls 218 | echo Exiting.. 219 | timeout 1 > nul 220 | cls 221 | echo Exiting... 222 | timeout 1 > nul 223 | exit 224 | 225 | :49152 226 | cls 227 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 50331648 /f > nul 228 | cls 229 | echo Value set to 49152MB (or 50331648) 230 | timeout 2 > nul 231 | cls 232 | echo Exiting. 233 | timeout 1 > nul 234 | cls 235 | echo Exiting.. 236 | timeout 1 > nul 237 | cls 238 | echo Exiting... 239 | timeout 1 > nul 240 | exit 241 | 242 | :65536 243 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 67108864 /f > nul 244 | echo Value set to 65536MB (or 67108864) 245 | timeout 2 > nul 246 | cls 247 | echo Exiting. 248 | timeout 1 > nul 249 | cls 250 | echo Exiting.. 251 | timeout 1 > nul 252 | cls 253 | echo Exiting... 254 | timeout 1 > nul 255 | exit 256 | 257 | :default 258 | cls 259 | reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control" /v SvcHostSplitThresholdInKB /t REG_DWORD /d 380000 /f > nul 260 | cls 261 | echo Value set to 3500MB (or 380000) 262 | timeout 2 > nul 263 | cls 264 | echo Exiting. 265 | timeout 1 > nul 266 | cls 267 | echo Exiting.. 268 | timeout 1 > nul 269 | cls 270 | echo Exiting... 271 | timeout 1 > nul 272 | exit 273 | 274 | :assist 275 | cls 276 | echo If you use 2GB of RAM, type in 2048 277 | echo If you use 3GB of RAM, type in 3072 278 | echo If you use 4GB of RAM, type in 4096 279 | echo If you use 6GB of RAM, type in 6144 280 | echo If you use 8GB of RAM, type in 8192 281 | echo If you use 10GB of RAM, type in 10240 282 | echo If you use 12GB of RAM, type in 12288 283 | echo If you use 16GB of RAM, type in 16384 284 | echo If you use 20GB of RAM, type in 20480 285 | echo If you use 24GB of RAM, type in 24576 286 | echo If you use 32GB of RAM, type in 32768 287 | echo If you use 48GB of RAM, type in 49152 288 | echo If you use 64GB of RAM, type in 65536 289 | echo. 290 | echo If you don't find your listed amount of RAM, tell the creator and it will be added shortly. 291 | echo Return back to the menu? 292 | set /p a= 293 | if "%a%" == "yes" goto :menu 294 | if "%a%" == "no" exit 295 | 296 | rem **This is placed in front to make sure if misspelled, it will redirect you instead of applying the wrong setting** 297 | :misspell 298 | cls 299 | echo Misspell detected! 300 | timeout 2 > nul 301 | echo Redirecting back to assist. 302 | timeout 2 > nul 303 | goto :assist -------------------------------------------------------------------------------- /2_Post Install/3_Run Scripts as Admin/TelemetryOff and PerfTweaks.bat: -------------------------------------------------------------------------------- 1 | Reg add "HKLM\Software\Policies\Microsoft\Windows\AppCompat" /v "DisableInventory" /t REG_DWORD /d "1" /f >nul 2 | 3 | Reg add "HKLM\Software\Policies\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d "1" /f >nul 4 | sc config WerSvc start=disabled >nul 5 | sc config WecSvc start=disabled >nul 6 | 7 | Reg add "HKLM\Software\Policies\Microsoft\Internet Explorer\SQM" /v "DisableCustomerImprovementProgram" /t REG_DWORD /d 0 /f >nul 8 | Reg add "HKLM\Software\Policies\Microsoft\AppV\CEIP" /v "CEIPEnable" /t REG_DWORD /d "0" /f >nul 9 | 10 | Reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "MaxTelemetryAllowed" /t REG_DWORD /d "0" /f >nul 11 | Reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "DisableTelemetryOptInChangeNotification" /t REG_DWORD /d "1" /f >nul 12 | Reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "DisableTelemetryOptInSettingsUx" /t REG_DWORD /d "1" /f >nul 13 | Reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "AllowCommercialDataPipeline" /t REG_DWORD /d 0 /f >nul 14 | Reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "AllowDeviceNameInTelemetry" /t REG_DWORD /d 0 /f >nul 15 | 16 | Reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "DisableEnterpriseAuthProxy" /t REG_DWORD /d 1 /f >nul 17 | Reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "AllowDesktopAnalyticsProcessing" /t REG_DWORD /d 0 /f >nul 18 | 19 | Reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Diagnostics\DiagTrack" /v "ShowedToastAtLevel" /t REG_DWORD /d "1" /f >nul 20 | Reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Diagnostics\DiagTrack" /v "DiagTrackAuthorization" /t REG_DWORD /d "775" /f >nul 21 | Reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Diagnostics\DiagTrack" /v "DiagTrackStatus" /t REG_DWORD /d "2" /f >nul 22 | Reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Diagnostics\DiagTrack" /v "UploadPermissionReceived" /t REG_DWORD /d "1" /f >nul 23 | Reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Diagnostics\DiagTrack\TraceManager" /v "MiniTraceSlotContentPermitted" /t REG_DWORD /d "1" /f >nul 24 | Reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Diagnostics\DiagTrack\TraceManager" /v "MiniTraceSlotEnabled" /t REG_DWORD /d "0" /f >nul 25 | Reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Privacy" /v "TailoredExperiencesWithDiagnosticDataEnabled" /t REG_DWORD /d "0" /f >nul 26 | Reg add "HKCU\Software\Policies\Microsoft\Windows\CloudContent" /v "disabletailoredexperiencesWithDiagnosticData" /t REG_DWORD /d "1" /f >nul 27 | Reg add "HKLM\Software\Policies\Microsoft\Windows\DataCollection" /v "DisableDiagnosticDataViewer" /T REG_DWORD /d "1" /f >nul 28 | sc config DiagTrack start=disabled >nul 29 | sc config DiagSvc start=disabled >nul 30 | 31 | reg add "HKCU\Software\Microsoft\Input\TIPC" /v Enabled /t REG_DWORD /d 0 /f >nul 32 | Reg add "HKLM\Software\Policies\Microsoft\InputPersonalization" /v "RestrictImplicitTextCollection" /t REG_DWORD /d "1" /f >nul 33 | Reg add "HKLM\Software\Policies\Microsoft\InputPersonalization" /v "RestrictImplicitInkCollection" /t REG_DWORD /d "1" /f >nul 34 | Reg add "HKLM\Software\Policies\Microsoft\Windows\TabletPC" /v "PreventHandwritingDataSharing" /t REG_DWORD /d "1" /f >nul 35 | Reg add "HKLM\Software\Policies\Microsoft\Windows\HandwritingErrorReports" /v "PreventHandwritingErrorReports" /t REG_DWORD /d "1" /f >nul 36 | Reg add "HKCU\Software\Microsoft\Personalization\Settings" /v AcceptedPrivacyPolicy /t REG_DWORD /d "0" /f >nul 37 | Reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\TextInput" /v "AllowLinguisticDataCollection" /t REG_DWORD /d "0" /f >nul 38 | Reg add "HKCU\Software\Microsoft\InputPersonalization\TrainedDataStore" /v "HarvestContacts" /t REG_DWORD /d "0" /f >nul 39 | Reg add "HKCU\Software\Microsoft\InputPersonalization\TrainedDataStore" /v "InsightsEnabled" /t REG_DWORD /d "0" /f >nul 40 | 41 | Reg add "HKLM\Software\Policies\Microsoft\Windows\AdvertisingInfo" /v "DisabledByGroupPolicy" /t REG_DWORD /d "1" /f >nul 42 | Reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\AdvertisingInfo" /v "Enabled" /t REG_DWORD /d "0" /f >nul 43 | 44 | Reg add "HKLM\System\CurrentControlSet\Control\Power\EnergyEstimation\TaggedEnergy" /v "DisableTaggedEnergyLogging" /t REG_DWORD /d "1" /f >nul 45 | Reg add "HKLM\System\CurrentControlSet\Control\Power\EnergyEstimation\TaggedEnergy" /v "TelemetryMaxApplication" /t REG_DWORD /d "0" /f >nul 46 | Reg add "HKLM\System\CurrentControlSet\Control\Power\EnergyEstimation\TaggedEnergy" /v "TelemetryMaxTagPerApplication" /t REG_DWORD /d "0" /f >nul 47 | 48 | Reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SilentInstalledAppsEnabled" /t REG_DWORD /d "0" /f >nul 49 | 50 | Reg add "HKLM\Software\Policies\Microsoft\Biometrics" /v "Enabled" /t REG_DWORD /d "0" /f >nul 51 | sc config WbioSrvc start=disabled >nul 52 | 53 | setx DOTNET_CLI_TELEMETRY_OPTOUT 1 >nul 54 | setx POWERSHELL_TELEMETRY_OPTOUT 1 >nul 55 | call :ControlSet "Control\Diagnostics\Performance" "DisableDiagnosticTracing" "1" 2>nul 56 | 57 | Reg add "HKLM\Software\Policies\Microsoft\Windows NT\CurrentVersion\Software Protection Platform" /v "NoGenTicket" /t REG_DWORD /d "1" /f >nul 58 | 59 | schtasks /change /tn "\Microsoft\Windows\Feedback\Siuf\DmClient" /disable >nul 2>&1 60 | 61 | Reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Settings" /v "DownloadMode" /t REG_DWORD /d "0" /f >nul 62 | 63 | call :ControlSet "Services\NvTelemetryContainer" "Start" "4" 64 | sc stop NvTelemetyContainer >nul 65 | sc config NvTelemetyContainer start=disabled >nul 66 | if exist "%systmedrive%\Program Files\NVIDIA Corporation\Installer2\InstallerCore\NVI2.DLL" (rundll32 "%systmedrive%\Program Files\NVIDIA Corporation\Installer2\InstallerCore\NVI2.DLL",UninstallPackage NvTelemetryContainer) 67 | Reg add "HKLM\Software\NVIDIA Corporation\NvControlPanel2\Client" /v "OptInOrOutPreference" /t REG_DWORD /d 0 /f >nul 68 | Reg add "HKLM\System\CurrentControlSet\Services\nvlddmkm\Global\Startup" /v "SendTelemetryData" /t REG_DWORD /d "0" /f >nul 69 | Reg add "HKLM\Software\NVIDIA Corporation\Global\FTS" /v "EnableRID44231" /t REG_DWORD /d 0 /f >nul 70 | Reg add "HKLM\Software\NVIDIA Corporation\Global\FTS" /v "EnableRID64640" /t REG_DWORD /d 0 /f >nul 71 | Reg add "HKLM\Software\NVIDIA Corporation\Global\FTS" /v "EnableRID66610" /t REG_DWORD /d 0 /f >nul 72 | Reg delete "HKLM\Software\Microsoft\Windows\CurrentVersion\Run" /v "NvBackend" /f >nul 2>&1 73 | schtasks /change /disable /tn "NvTmRep_CrashReport1_{B2FE1952-0186-46C3-BAEC-A80AA35AC5B8}" >nul 2>&1 74 | schtasks /change /disable /tn "NvTmRep_CrashReport2_{B2FE1952-0186-46C3-BAEC-A80AA35AC5B8}" >nul 2>&1 75 | schtasks /change /disable /tn "NvTmRep_CrashReport3_{B2FE1952-0186-46C3-BAEC-A80AA35AC5B8}" >nul 2>&1 76 | schtasks /change /disable /tn "NvTmRep_CrashReport4_{B2FE1952-0186-46C3-BAEC-A80AA35AC5B8}" >nul 2>&1 77 | 78 | reg add "HKLM\SOFTWARE\NVIDIA Corporation\NvControlPanel2\Client" /v "OptInOrOutPreference" /t REG_DWORD /d "0" /f 79 | reg add "HKLM\SYSTEM\CurrentControlSet\Services\nvlddmkm\Global\Startup" /v "SendTelemetryData" /t REG_DWORD /d "0" /f 80 | 81 | call :ControlSet "Control\Power" "HibernateEnabled" "0" 82 | powercfg /h off >nul 83 | 84 | netsh int tcp set global rss=enabled >nul -------------------------------------------------------------------------------- /2_Post Install/4_Merge to Registry/DisableTelemetry&UnnecessaryTasks.reg: -------------------------------------------------------------------------------- 1 | Windows Registry Editor Version 5.00 2 | 3 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DriverSearching] 4 | "SearchOrderConfig"=dword:00000000 5 | 6 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System] 7 | "EnableLua"=dword:00000000 8 | "ConsentPromptBehaviorAdmin"=dword:00000000 9 | 10 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\Maintenance] 11 | "MaintenanceDisabled"=dword:00000001 12 | 13 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DataCollection] 14 | "AllowTelemetry"=dword:00000000 15 | 16 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat] 17 | "AITEnable"=dword:00000000 18 | 19 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DiagTrack] 20 | "Start"=dword:00000004 21 | 22 | [HKEY_CURRENT_USER\SOFTWARE\Microsoft\input\Settings] 23 | "InsightsEnabled"=dword:00000000 24 | 25 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection] 26 | "AllowTelemetry"=dword:00000000 27 | 28 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate] 29 | "ExcludeWUDriversInQualityUpdate"=dword:00000001 30 | 31 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Windows Error Reporting] 32 | "Disabled"=dword:00000001 33 | 34 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Windows Search] 35 | "AllowCloudSearch"=dword:00000000 36 | "ConnectedSearchPrivacy"=dword:00000003 37 | "ConnectedSearchSafeSearch"=dword:00000003 38 | "ConnectedSearchUseWebOverMeteredConnections"=dword:00000000 39 | "AllowCortana"=dword:00000000 40 | "AllowCortanaAboveLock"=dword:00000000 41 | "EnableDynamicContentInWSB"=dword:00000000 42 | "AllowSearchToUseLocation"=dword:00000000 43 | "DisableWebSearch"=dword:00000001 44 | "ConnectedSearchUseWeb"=dword:00000000 45 | 46 | [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Windows Search] 47 | "CortanaConsent"=dword:00000000 48 | "CortanaIsReplaceable"=dword:00000001 49 | "CortanaIsReplaced"=dword:00000001 50 | "SearchboxTaskbarMode"=dword:00000000 51 | 52 | [HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Explorer] 53 | "DisableSearchBoxSuggestions"=dword:00000001 54 | 55 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System] 56 | "EnableActivityFeed"=dword:00000000 57 | "PublishUserActivities"=dword:00000000 58 | "UploadUserActivities"=dword:00000000 59 | "AllowCrossDeviceClipboard"=dword:00000000 60 | "EnableCdp"=dword:00000000 61 | "EnableMmx"=dword:00000000 62 | "RSoPLogging"=dword:00000000 63 | "AllowClipboardHistory"=dword:00000000 64 | 65 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo] 66 | "DisabledByGroupPolicy"=dword:00000001 67 | 68 | [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Policies\Wow6432Node\Microsoft\Windows\Windows Search] 69 | "AllowCortana"=dword:00000000 70 | "AllowCortanaAboveLock"=dword:00000000 71 | 72 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds] 73 | "HeadlinesOnboardingComplete"=dword:00000000 74 | "EnableFeeds"=dword:00000000 75 | 76 | [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Feeds] 77 | "ShellFeedsTaskbarViewMode"=dword:00000002 78 | "IsFeedsAvailable"=dword:00000000 79 | "DisabledReason"="DisabledByPolicy" 80 | "ActiveProfileChanged"=dword:00000001 81 | "HeadlinesOnboardingComplete"=dword:00000001 82 | "ShellFeedsTaskbarOpenOnHover"=dword:00000000 83 | 84 | [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Feeds\DSB] 85 | "IsDynamicContentAvailable"=dword:00000000 86 | "DynamicTextTruncated"="" 87 | "DisabledReason"="DisabledByPolicy" 88 | 89 | [HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\16.0\osm] 90 | "Enablelogging"=dword:00000000 91 | "EnableUpload"=dword:00000000 92 | 93 | [HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\15.0\osm] 94 | "Enablelogging"=dword:00000000 95 | "EnableUpload"=dword:00000000 96 | 97 | [HKEY_CURRENT_USER\Software\Microsoft\Office\Common\ClientTelemetry] 98 | "DisableTelemetry"=dword:00000001 99 | 100 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Settings] 101 | "DownloadMode"=dword:00000000 102 | 103 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\EnergyEstimation\TaggedEnergy] 104 | "DisableTaggedEnergyLogging"=dword:00000001 105 | "TelemetryMaxApplication"=dword:00000000 106 | "TelemetryMaxTagPerApplication"=dword:00000000 107 | 108 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power] 109 | "EnergyEstimationEnabled"=dword:00000000 110 | 111 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM] 112 | "EnableAeroPeek"=dword:00000000 -------------------------------------------------------------------------------- /2_Post Install/4_Merge to Registry/Graphics-Driver-Priority-Perf.reg: -------------------------------------------------------------------------------- 1 | Windows Registry Editor Version 5.00 2 | 3 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers] 4 | "TdrDebugMode"=dword:00000003 5 | "DpiMapIommuContiguous"=dword:00000001 6 | "TdrDelay"=dword:0000000a 7 | "HwSchMode"=dword:00000002 8 | 9 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e96c-e325-11ce-bfc1-08002be10318}\0000] 10 | "PnPCapabilities"=dword:00000018 11 | 12 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e96c-e325-11ce-bfc1-08002be10318}\0001] 13 | "PnPCapabilities"=dword:00000018 14 | 15 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e96c-e325-11ce-bfc1-08002be10318}\0000\PowerSettings] 16 | "ConservationIdleTime"=hex:00,00,00,00 17 | "PerformanceIdleTime"=hex:00,00,00,00 18 | "IdlePowerState"=hex:00,00,00,00 19 | 20 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e96c-e325-11ce-bfc1-08002be10318}\0001\PowerSettings] 21 | "ConservationIdleTime"=hex:00,00,00,00 22 | "IdlePowerState"=hex:00,00,00,00 23 | "PerformanceIdleTime"=hex:00,00,00,00 24 | 25 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile] 26 | "NetworkThrottlingIndex"=dword:ffffffff 27 | "SystemResponsiveness"=dword:00000000 28 | "NoLazyMode"=dword:00000001 29 | "AlwaysOn"=dword:00000001 30 | 31 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Low Latency] 32 | "Affinity"=dword:00000000 33 | "Background Only"="False" 34 | "BackgroundPriority"=dword:00000000 35 | "Clock Rate"=dword:00002710 36 | "GPU Priority"=dword:00000008 37 | "Priority"=dword:00000002 38 | "Scheduling Category"="Medium" 39 | "SFIO Priority"="High" 40 | "Latency Sensitive"="True" 41 | 42 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Audio] 43 | "Affinity"=dword:00000000 44 | "Background Only"="True" 45 | "Clock Rate"=dword:00002710 46 | "GPU Priority"=dword:00000001 47 | "Priority"=dword:00000002 48 | "Scheduling Category"="Medium" 49 | "SFIO Priority"="High" 50 | 51 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Capture] 52 | "Affinity"=dword:00000000 53 | "Background Only"="True" 54 | "Clock Rate"=dword:00002710 55 | "GPU Priority"=dword:00000008 56 | "Priority"=dword:00000005 57 | "Scheduling Category"="Medium" 58 | "SFIO Priority"="Normal" 59 | 60 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\DisplayPostProcessing] 61 | "Affinity"=dword:00000000 62 | "Background Only"="True" 63 | "BackgroundPriority"=dword:00000018 64 | "Clock Rate"=dword:00002710 65 | "GPU Priority"=dword:00000012 66 | "Priority"=dword:00000008 67 | "Scheduling Category"="High" 68 | "SFIO Priority"="High" 69 | "Latency Sensitive"="True" 70 | 71 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Distribution] 72 | "Affinity"=dword:00000000 73 | "Background Only"="True" 74 | "Clock Rate"=dword:00002710 75 | "GPU Priority"=dword:00000008 76 | "Priority"=dword:00000004 77 | "Scheduling Category"="Medium" 78 | "SFIO Priority"="Normal" 79 | 80 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Games] 81 | "Affinity"=dword:00000000 82 | "Background Only"="False" 83 | "Clock Rate"=dword:00002710 84 | "BackgroundPriority"=dword:00000000 85 | "GPU Priority"=dword:00000012 86 | "Priority"=dword:00000006 87 | "Scheduling Category"="High" 88 | "SFIO Priority"="High" 89 | "Latency Sensitive"="True" 90 | 91 | 92 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Playback] 93 | "Affinity"=dword:00000000 94 | "Background Only"="False" 95 | "BackgroundPriority"=dword:00000004 96 | "Clock Rate"=dword:00002710 97 | "GPU Priority"=dword:00000008 98 | "Priority"=dword:00000003 99 | "Scheduling Category"="Medium" 100 | "SFIO Priority"="Normal" 101 | 102 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Pro Audio] 103 | "Affinity"=dword:00000000 104 | "Background Only"="False" 105 | "Clock Rate"=dword:00002710 106 | "GPU Priority"=dword:00000008 107 | "Priority"=dword:00000001 108 | "Scheduling Category"="High" 109 | "SFIO Priority"="Normal" 110 | 111 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\Tasks\Window Manager] 112 | "Affinity"=dword:00000000 113 | "Background Only"="True" 114 | "Clock Rate"=dword:00002710 115 | "GPU Priority"=dword:00000008 116 | "Priority"=dword:00000005 117 | "Scheduling Category"="Medium" 118 | "SFIO Priority"="Normal" 119 | 120 | 121 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl] 122 | "Win32PrioritySeparation"=dword:00000026 123 | 124 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\SQMClient\Windows] 125 | "CEIPEnable"=dword:00000000 126 | 127 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat] 128 | "AITEnable"=dword:00000000 129 | 130 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DWM] 131 | "DWMWA_TRANSITIONS_FORCEDISABLED"=dword:00000001 132 | "DisallowAnimations"=dword:00000001 133 | 134 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power] 135 | "HibernateEnabled"=dword:00000000 136 | 137 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Power] 138 | "HiberbootEnabled"=dword:00000000 139 | 140 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power] 141 | "HibernateEnabledDefault"=dword:00000000 142 | 143 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerThrottling] 144 | "PowerThrottlingOff"=dword:00000001 145 | 146 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\GameDVR] 147 | "AllowGameDVR"=dword:00000000 148 | 149 | [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR] 150 | "AppCaptureEnabled"=dword:00000000 151 | 152 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\ApplicationManagement\AllowGameDVR] 153 | "value"=dword:00000000 154 | 155 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\csrss.exe\PerfOptions] 156 | "CpuPriorityClass"=dword:00000004 157 | "IoPriority"=dword:00000003 158 | 159 | [HKEY_CURRENT_USER\Control Panel\Desktop] 160 | "MenuShowDelay"="0" 161 | "WaitToKillAppTimeout"="5000" 162 | "HungAppTimeout"="4000" 163 | "AutoEndTasks"="1" 164 | "LowLevelHooksTimeout"=dword:00001000 165 | "WaitToKillServiceTimeout"=dword:00002000 166 | 167 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\943c8cb6-6f93-4227-ad87-e9a3feec08d1] 168 | "Attributes"=dword:00000002 169 | 170 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e] 171 | "ACSettingIndex"=dword:0 172 | "DCSettingIndex"=dword:0 173 | 174 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\2a737441-1930-4402-8d77-b2bebba308a3\d4e98f31-5ffe-4ce1-be31-1b38b384c009\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c] 175 | "ACSettingIndex"=dword:0 176 | 177 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb\DefaultPowerSchemeValues\381b4222-f694-41f0-9685-ff5bb260df2e] 178 | "ACSettingIndex"=dword:0 179 | "DCSettingIndex"=dword:0 180 | 181 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\54533251-82be-4824-96c1-47b60b740d00\3b04d4fd-1cc7-4f23-ab1c-d1337819c4bb\DefaultPowerSchemeValues\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c] 182 | "ACSettingIndex"=dword:0 183 | 184 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender] 185 | "DisableAntiSpyware"=dword:00000001 186 | 187 | [HKEY_CURRENT_USER\Software\Microsoft\GameBar] 188 | "AllowAutoGameMode"=dword:00000001 189 | "AutoGameModeEnabled"=dword:00000001 190 | 191 | [HKEY_CURRENT_USER\System\GameConfigStore] 192 | "GameDVR_FSEBehavior"=dword:00000002 193 | "GameDVR_Enabled"=dword:00000000 194 | "GameDVR_FSEBehaviorMode"=dword:00000002 195 | "GameDVR_HonorUserFSEBehaviorMode"=dword:00000001 196 | "GameDVR_DXGIHonorFSEWindowsCompatible"=dword:00000001 197 | "GameDVR_EFSEFeatureFlags"=dword:00000000 198 | "GameDVR_DSEBehavior"=dword:00000002 199 | "Win32_AutoGameModeDefaultProfile"=hex:01,00,01,00,00,00,00,00,00,00,00,00,00,\ 200 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 201 | 00,00 202 | "Win32_GameModeRelatedProcesses"=hex:01,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 203 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 204 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 205 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 206 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 207 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 208 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 209 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 210 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 211 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 212 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 213 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 214 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 215 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 216 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 217 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 218 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 219 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 220 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 221 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 222 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 223 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 224 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 225 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 226 | 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\ 227 | 00,00,00,00,00,00,00,00,00,00 228 | 229 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvlddmkm\FTS] 230 | "EnableRID61684"=dword:00000001 -------------------------------------------------------------------------------- /2_Post Install/4_Merge to Registry/Optional_Disable Auto Microsoft Updates/Disable Updates.reg: -------------------------------------------------------------------------------- 1 | Windows Registry Editor Version 5.00 2 | 3 | 4 | 5 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate] 6 | "ExcludeWUDriversInQualityUpdate"=dword:00000001 7 | "DoNotConnectToWindowsUpdateInternetLocations"=dword:00000000 8 | "DisableWindowsUpdateAccess"=dword:00000001 9 | "WUServer"=" " 10 | "WUStatusServer"=" " 11 | "UpdateServiceUrlAlternate"=" " 12 | 13 | [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU] 14 | "UseWUServer"=dword:00000001 15 | 16 | [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsStore\WindowsUpdate] 17 | "AutoDownload"=dword:00000002 -------------------------------------------------------------------------------- /2_Post Install/4_Merge to Registry/Optional_Force GPU Max Freq_READ_NOTE/DisableDynamicPstates.reg: -------------------------------------------------------------------------------- 1 | Windows Registry Editor Version 5.00 2 | 3 | [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0000] 4 | "DisableDynamicPstate"=dword:00000001 -------------------------------------------------------------------------------- /2_Post Install/4_Merge to Registry/Optional_Force GPU Max Freq_READ_NOTE/WARNING READ THIS FIRST.txt: -------------------------------------------------------------------------------- 1 | Warning! This will disable Dynamic P States on your gpu. You will be at your gpu's max frequency until it gets close to max temp then will slowly drop voltage and frequency. 2 | 3 | If your GPU's cooling is poor you should skip this 4 | 5 | If you have a high performer and don't mind tweaking in overclocking software then this give you max perf consistently. 6 | 7 | Since there isn't so many fluctuations in frequency this will also help with latency making things consistent. 8 | 9 | It doesn't make sense to always be at max when you aren't even doing anything tho so I recommend using GPU overclocking software like GPUtweak 10 | or Msi Afterburner to lock your voltage/freq at a much lower setting when you aren't doing something GPU intensive so you can keep your temps down and not have unnecessary wear and tear. 11 | -------------------------------------------------------------------------------- /2_Post Install/5_Timer Optimization/1. Put this in %WinDir%/SetTimerResolution.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gex581990/Ultimate-Windows-ISO-and-Optimizations/5a3444b4bcc8d2f505b18b5d8ed1a38c2a305fb2/2_Post Install/5_Timer Optimization/1. Put this in %WinDir%/SetTimerResolution.exe -------------------------------------------------------------------------------- /2_Post Install/5_Timer Optimization/2. Run .bat/Windows 11 Timer optimization.bat: -------------------------------------------------------------------------------- 1 | reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\kernel" /v "GlobalTimerResolutionRequests" /t REG_DWORD /d "1" /f >nul 2>&1 2 | bcdedit /deletevalue useplatformclock >nul 2>&1 3 | bcdedit /set disabledynamictick yes >nul 2>&1 4 | bcdedit /deletevalue useplatformtick >nul 2>&1 5 | bcdedit /set tscsyncpolicy Enhanced 6 | bcdedit /set x2apicpolicy Enable 7 | bcdedit /set uselegacyapicmode No 8 | bcdedit /set configaccesspolicy Default 9 | bcdedit /set usephysicaldestination No 10 | bcdedit /set usefirmwarepcisettings No 11 | -------------------------------------------------------------------------------- /2_Post Install/5_Timer Optimization/3. Run .ps1/SetResolutionTimer.ps1: -------------------------------------------------------------------------------- 1 | $action = New-ScheduledTaskAction -Execute 'C:\Windows\SetTimerResolution.exe' -Argument '--resolution 5050 --no-console' 2 | 3 | $trigger = New-ScheduledTaskTrigger -AtLogOn 4 | 5 | Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "SetTimerResolution" -Description "Sets Timer Resolution on boot" -------------------------------------------------------------------------------- /2_Post Install/Disable most of defender.bat: -------------------------------------------------------------------------------- 1 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System" /v "EnableSmartScreen" /t REG_DWORD /d 0 /f 2 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\MicrosoftEdge\PhishingFilter" /v "EnabledV9" /t REG_DWORD /d 0 /f 3 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "DisableRoutinelyTakingAction" /t REG_DWORD /d 1 /f 4 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "ServiceKeepAlive" /t REG_DWORD /d 0 /f 5 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "AllowFastServiceStartup" /t REG_DWORD /d 0 /f 6 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Real-Time Protection" /v "DisableRealtimeMonitoring" /t REG_DWORD /d 1 /f 7 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Reporting" /v "DisableEnhancedNotifications" /t REG_DWORD /d 1 /f 8 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Scan" /v "AvgCPULoadFactor" /t REG_DWORD /d 5 /f 9 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Scan" /v "CheckForSignaturesBeforeRunningScan" /t REG_DWORD /d 0 /f 10 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Scan" /v "LowCpuPriority" /t REG_DWORD /d 1 /f 11 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Signature Updates" /v "DisableUpdateOnStartupWithoutEngine" /t REG_DWORD /d 1 /f 12 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Signature Updates" /v "UpdateOnStartUp" /t REG_DWORD /d 0 /f 13 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\SmartScreen" /v "ConfigureAppInstallControlEnabled" /t REG_DWORD /d 0 /f 14 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Threats" /v "Threats_ThreatSeverityDefaultAction" /t REG_DWORD /d 1 /f 15 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Threats\ThreatSeverityDefaultAction" /v "1" /t REG_SZ /d "6" /f 16 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Threats\ThreatSeverityDefaultAction" /v "2" /t REG_SZ /d "6" /f 17 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Threats\ThreatSeverityDefaultAction" /v "4" /t REG_SZ /d "6" /f 18 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Threats\ThreatSeverityDefaultAction" /v "5" /t REG_SZ /d "6" /f 19 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\UX Configuration" /v "Notification_Suppress" /t REG_DWORD /d 1 /f 20 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MsMpEng.exe\PerfOptions" /v "CpuPriorityClass" /t REG_DWORD /d 1 /f 21 | reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\MsMpEngCP.exe\PerfOptions" /v "CpuPriorityClass" /t REG_DWORD /d 1 /f 22 | -------------------------------------------------------------------------------- /2_Post Install/Problem Solving/Run to fix any permissions issues/Appx Re-register.ps1: -------------------------------------------------------------------------------- 1 | Stop-Process -Name "StartMenuExperienceHost" -Force 2 | Stop-Process -Name "ShellExperienceHost" -Force 3 | 4 | Get-AppXPackage -AllUsers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"} 5 | 6 | Read-Host -Prompt "Press Enter to exit" -------------------------------------------------------------------------------- /2_Post Install/Problem Solving/Run to fix any permissions issues/Register Appx.md: -------------------------------------------------------------------------------- 1 | Sometimes when installing a custom ISO I've noticed some permission issues with some Appx programs and parts of the OS that might cause some weird issues. Running this solves that and is just a good precaution to run anyways. If you have issues at any point later on that SFC Scan or DISM don't fix then this most likely will. Just a good step for problem solving at any point. 2 | -------------------------------------------------------------------------------- /2_Post Install/Problem Solving/Run to scan and fix corruption/SFC-Dism-Chkdisk.ps1: -------------------------------------------------------------------------------- 1 | Start-Process PowerShell -ArgumentList "Write-Host '(1/4) Chkdsk' -ForegroundColor Green; Chkdsk /scan; 2 | Write-Host '`n(2/4) SFC - 1st scan' -ForegroundColor Green; sfc /scannow; 3 | Write-Host '`n(3/4) DISM' -ForegroundColor Green; DISM /Online /Cleanup-Image /Restorehealth; 4 | Write-Host '`n(4/4) SFC - 2nd scan' -ForegroundColor Green; sfc /scannow; 5 | Read-Host '`nPress Enter to Continue'" -verb runas 6 | 7 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2025 Inasnum 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/ExplorerPatcher Config/ExplorerPatcher_22621.2861.62.1.reg: -------------------------------------------------------------------------------- 1 | Windows Registry Editor Version 5.00 2 | 3 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 4 | "ImportOK"=dword:00000001 5 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 6 | "OldTaskbar"=dword:00000001 7 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 8 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_TaskbarPosition"=dword:00000003 9 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 10 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_MMTaskbarPosition"=dword:00000003 11 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Search] 12 | "SearchboxTaskbarMode"=dword:00000002 13 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 14 | "ShowTaskViewButton"=dword:00000000 15 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 16 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_AutoHideTaskbar"=dword:00000001 17 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 18 | "OrbStyle"=dword:00000000 19 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 20 | "OldTaskbarAl"=dword:00000000 21 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 22 | "MMOldTaskbarAl"=dword:00000000 23 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 24 | "TaskbarGlomLevel"=dword:00000000 25 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 26 | "MMTaskbarGlomLevel"=dword:00000002 27 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 28 | "TaskbarSmallIcons"=dword:00000001 29 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 30 | "SkinMenus"=dword:00000001 31 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 32 | "CenterMenus"=dword:00000001 33 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 34 | "FlyoutMenus"=dword:00000001 35 | [HKEY_CURRENT_USER\Software\Microsoft\TabletTip\1.7] 36 | "TipbandDesiredVisibility"=dword:00000000 37 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 38 | "ShowSecondsInSystemClock"=dword:00000000 39 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 40 | "HideControlCenterButton"=dword:00000000 41 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 42 | "TaskbarSD"=dword:00000001 43 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 44 | "ReplaceNetwork"=dword:00000000 45 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Control Panel\Settings\Network] 46 | "ReplaceVan"=dword:00000000 47 | [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\MTCUVC] 48 | "EnableMtcUvc"=dword:00000001 49 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell] 50 | "UseWin32TrayClockExperience"=dword:00000000 51 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell] 52 | "UseWin32BatteryFlyout"=dword:00000000 53 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 54 | "IMEStyle"=dword:00000000 55 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 56 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_RegisterAsShellExtension"=dword:00000001 57 | [HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32] 58 | @="" 59 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 60 | "LegacyFileTransferDialog"=dword:00000000 61 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 62 | "UseClassicDriveGrouping"=dword:00000000 63 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 64 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_FileExplorerCommandUI"=dword:00000000 65 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 66 | "DisableImmersiveContextMenu"=dword:00000000 67 | [-HKEY_CURRENT_USER\Software\Classes\CLSID\{056440FD-8568-48e7-A632-72157243B55B}\InprocServer32] 68 | @="" 69 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 70 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_DisableModernSearchBar"=dword:00000000 71 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 72 | "ShrinkExplorerAddressBar"=dword:00000000 73 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 74 | "HideExplorerSearchBar"=dword:00000000 75 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 76 | "MicaEffectOnTitlebar"=dword:00000000 77 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 78 | "Start_ShowClassicMode"=dword:00000001 79 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 80 | "TaskbarAl"=dword:00000000 81 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 82 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_Start_MaximumFrequentApps"=dword:00000006 83 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\StartPage] 84 | "MonitorOverride"=dword:00000001 85 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 86 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_StartUI_ShowMoreTiles"=dword:00000000 87 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 88 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_StartUI_EnableRoundedCorners"=dword:00000000 89 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 90 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_ForceStartSize"=dword:00000000 91 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 92 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_NoStartMenuMorePrograms"=dword:00000000 93 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer] 94 | "AltTabSettings"=dword:00000000 95 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 96 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_PeopleBand"=dword:00000000 97 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 98 | "LastSectionInProperties"=dword:00000000 99 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 100 | "ClockFlyoutOnWinC"=dword:00000000 101 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 102 | "ToolbarSeparators"=dword:00000000 103 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 104 | "PropertiesInWinX"=dword:00000000 105 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 106 | "NoMenuAccelerator"=dword:00000000 107 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 108 | "DisableOfficeHotkeys"=dword:00000000 109 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 110 | "DisableWinFHotkey"=dword:00000000 111 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 112 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_DisableRoundedCorners"=dword:00000000 113 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 114 | "DisableAeroSnapQuadrants"=dword:00000000 115 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 116 | "Start_PowerButtonAction"=dword:00000002 117 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 118 | "DoNotRedirectSystemToSettingsApp"=dword:00000000 119 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 120 | "DoNotRedirectProgramsAndFeaturesToSettingsApp"=dword:00000000 121 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 122 | "DoNotRedirectDateAndTimeToSettingsApp"=dword:00000000 123 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 124 | "DoNotRedirectNotificationIconsToSettingsApp"=dword:00000000 125 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 126 | "UpdatePolicy"=dword:00000001 127 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 128 | "UpdatePreferStaging"=dword:00000000 129 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 130 | "UpdateAllowDowngrades"=dword:00000000 131 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 132 | "UpdateURL"="" 133 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 134 | "UpdateURLStaging"="" 135 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 136 | "AllocConsole"=dword:00000000 137 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 138 | "Memcheck"=dword:00000000 139 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 140 | "TaskbarAutohideOnDoubleClick"=dword:00000000 141 | [HKEY_CURRENT_USER\Control Panel\Desktop] 142 | "PaintDesktopVersion"=dword:00000000 143 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 144 | "ClassicThemeMitigations"=dword:00000000 145 | [-HKEY_CURRENT_USER\Software\Classes\CLSID\{1eeb5b5a-06fb-4732-96b3-975c0194eb39}\InprocServer32] 146 | @="" 147 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 148 | "NoPropertiesInContextMenu"=dword:00000000 149 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 150 | "EnableSymbolDownload"=dword:00000001 151 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 152 | "PinnedItemsActAsQuickLaunch"=dword:00000000 153 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 154 | "RemoveExtraGapAroundPinnedItems"=dword:00000000 155 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 156 | "ExplorerReadyDelay"=dword:00000000 157 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ExplorerPatcher] 158 | "XamlSounds"=dword:00000000 159 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 160 | "Language"=dword:00000000 161 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/ExplorerPatcher Config/ExplorerPatcher_22621.3007.63.2.reg: -------------------------------------------------------------------------------- 1 | Windows Registry Editor Version 5.00 2 | 3 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 4 | "ImportOK"=dword:00000001 5 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 6 | "OldTaskbar"=dword:00000001 7 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 8 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_TaskbarPosition"=dword:00000003 9 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 10 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_MMTaskbarPosition"=dword:00000003 11 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Search] 12 | "SearchboxTaskbarMode"=dword:00000002 13 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 14 | "ShowTaskViewButton"=dword:00000000 15 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 16 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_AutoHideTaskbar"=dword:00000001 17 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 18 | "OrbStyle"=dword:00000000 19 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 20 | "OldTaskbarAl"=dword:00000000 21 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 22 | "MMOldTaskbarAl"=dword:00000000 23 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 24 | "TaskbarGlomLevel"=dword:00000000 25 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 26 | "MMTaskbarGlomLevel"=dword:00000002 27 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 28 | "TaskbarSmallIcons"=dword:00000001 29 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 30 | "SkinMenus"=dword:00000001 31 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 32 | "CenterMenus"=dword:00000001 33 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 34 | "FlyoutMenus"=dword:00000001 35 | [HKEY_CURRENT_USER\Software\Microsoft\TabletTip\1.7] 36 | "TipbandDesiredVisibility"=dword:00000000 37 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 38 | "ShowSecondsInSystemClock"=dword:00000000 39 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 40 | "HideControlCenterButton"=dword:00000000 41 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 42 | "TaskbarSD"=dword:00000001 43 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 44 | "ReplaceNetwork"=dword:00000000 45 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Control Panel\Settings\Network] 46 | "ReplaceVan"=dword:00000000 47 | [HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\MTCUVC] 48 | "EnableMtcUvc"=dword:00000001 49 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell] 50 | "UseWin32TrayClockExperience"=dword:00000000 51 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\ImmersiveShell] 52 | "UseWin32BatteryFlyout"=dword:00000000 53 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 54 | "IMEStyle"=dword:00000000 55 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 56 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_RegisterAsShellExtension"=dword:00000001 57 | [HKEY_CURRENT_USER\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32] 58 | @="" 59 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 60 | "LegacyFileTransferDialog"=dword:00000000 61 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 62 | "UseClassicDriveGrouping"=dword:00000000 63 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 64 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_FileExplorerCommandUI"=dword:00000000 65 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 66 | "DisableImmersiveContextMenu"=dword:00000000 67 | [-HKEY_CURRENT_USER\Software\Classes\CLSID\{056440FD-8568-48e7-A632-72157243B55B}\InprocServer32] 68 | @="" 69 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 70 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_DisableModernSearchBar"=dword:00000000 71 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 72 | "ShrinkExplorerAddressBar"=dword:00000000 73 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 74 | "HideExplorerSearchBar"=dword:00000000 75 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 76 | "MicaEffectOnTitlebar"=dword:00000000 77 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 78 | "Start_ShowClassicMode"=dword:00000001 79 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 80 | "TaskbarAl"=dword:00000000 81 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 82 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_Start_MaximumFrequentApps"=dword:00000006 83 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\StartPage] 84 | "MonitorOverride"=dword:00000001 85 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 86 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_StartUI_ShowMoreTiles"=dword:00000000 87 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 88 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_StartUI_EnableRoundedCorners"=dword:00000000 89 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 90 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_ForceStartSize"=dword:00000000 91 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 92 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_NoStartMenuMorePrograms"=dword:00000000 93 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer] 94 | "AltTabSettings"=dword:00000000 95 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 96 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_PeopleBand"=dword:00000000 97 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 98 | "LastSectionInProperties"=dword:00000000 99 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 100 | "ClockFlyoutOnWinC"=dword:00000000 101 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 102 | "ToolbarSeparators"=dword:00000000 103 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 104 | "PropertiesInWinX"=dword:00000000 105 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 106 | "NoMenuAccelerator"=dword:00000000 107 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 108 | "DisableOfficeHotkeys"=dword:00000000 109 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 110 | "DisableWinFHotkey"=dword:00000000 111 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 112 | ;"Virtualized_{D17F1E1A-5919-4427-8F89-A1A8503CA3EB}_DisableRoundedCorners"=dword:00000000 113 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 114 | "DisableAeroSnapQuadrants"=dword:00000000 115 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced] 116 | "Start_PowerButtonAction"=dword:00000002 117 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 118 | "DoNotRedirectSystemToSettingsApp"=dword:00000000 119 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 120 | "DoNotRedirectProgramsAndFeaturesToSettingsApp"=dword:00000000 121 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 122 | "DoNotRedirectDateAndTimeToSettingsApp"=dword:00000000 123 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 124 | "DoNotRedirectNotificationIconsToSettingsApp"=dword:00000000 125 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 126 | "UpdatePolicy"=dword:00000001 127 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 128 | "UpdatePreferStaging"=dword:00000000 129 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 130 | "UpdateAllowDowngrades"=dword:00000000 131 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 132 | "UpdateURL"="" 133 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 134 | "UpdateURLStaging"="" 135 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 136 | "AllocConsole"=dword:00000000 137 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 138 | "Memcheck"=dword:00000000 139 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 140 | "TaskbarAutohideOnDoubleClick"=dword:00000000 141 | [HKEY_CURRENT_USER\Control Panel\Desktop] 142 | "PaintDesktopVersion"=dword:00000000 143 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 144 | "ClassicThemeMitigations"=dword:00000000 145 | [-HKEY_CURRENT_USER\Software\Classes\CLSID\{1eeb5b5a-06fb-4732-96b3-975c0194eb39}\InprocServer32] 146 | @="" 147 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 148 | "NoPropertiesInContextMenu"=dword:00000000 149 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 150 | "EnableSymbolDownload"=dword:00000001 151 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 152 | "PinnedItemsActAsQuickLaunch"=dword:00000000 153 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 154 | "RemoveExtraGapAroundPinnedItems"=dword:00000000 155 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 156 | "ExplorerReadyDelay"=dword:00000000 157 | [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ExplorerPatcher] 158 | "XamlSounds"=dword:00000000 159 | [HKEY_CURRENT_USER\Software\ExplorerPatcher] 160 | "Language"=dword:00000000 161 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Environment.nss: -------------------------------------------------------------------------------- 1 | menu(title='Environment' mode='multiple' type='file|dir|back.dir|drive|back.drive|desktop' image=\uE0A0) 2 | { 3 | import 'Snippets/app.sandbox.nss' 4 | import 'Snippets/Compatibility.nss' 5 | import 'Snippets/4gb_patch.nss' 6 | 7 | modify(where=str.equals(this.name,["Open with DOSBox-X", "Run with DOSBox-X"]) menu= "Environment") 8 | 9 | 10 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Powertoys.nss: -------------------------------------------------------------------------------- 1 | menu(mode="multiple" title='PowerToys' image='@user.dir\AppData\Local\PowerToys\PowerToys.exe') 2 | { 3 | modify(find='Image Resizer' menu='Tools/Powertoys' pos=1) 4 | 5 | modify(find='PowerRename' menu='Tools/Powertoys' pos=2) 6 | 7 | modify(find='File Locksmith' menu='Tools/Powertoys' pos=3) 8 | 9 | } 10 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/4gb_patch.nss: -------------------------------------------------------------------------------- 1 | $file_path=sel.path.quote 2 | 3 | item(title='4gb_patch' admin=true image cmd='@sys.prog\4gb_patch\4gb_patch.exe' args=file_path) -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/Compatibility.nss: -------------------------------------------------------------------------------- 1 | $reg_User ='HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers' 2 | $reg_Machine ='HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers' 3 | $this_path = sel.path 4 | $reg_choice = if(key.shift(), reg_Machine, reg_User) 5 | $reg_get = reg.get(reg_choice, this_path) 6 | $reg_exists = reg.exists(reg_choice, this_path) 7 | $com_mode = WIN95|WIN98|WIN4SP5|WIN2000|WINXPSP2|WINXPSP3|VISTARTM|VISTASP1|VISTASP2|WIN7RTM|WINSRV03SP1|WINSRV08SP1 8 | $high_dpi = HIGHDPIAWARE|DPIUNAWARE|GDIDPISCALING 9 | $program_dpi = PERPROCESSSYSTEMDPIFORCEON|PERPROCESSSYSTEMDPIFORCEOFF 10 | $tip_mw = "\xE115 Hold Shift to apply Machine-wide" 11 | //$start_tilde = !str.start(reg_get, '~') 12 | //$set_tilde= str.set(reg_get, 1, '~') 13 | //if(reg_exists, if((reg_get || com_mode), str.replace(reg_get, com_mode, 'WIN95'), str.join(reg_get, 'WIN95', " ")) 14 | 15 | 16 | menu(type='file' mode='single' title='Windows Compatibility Mode' image='C:\WINDOWS\explorer.exe,8') 17 | { 18 | menu(title='Compatibility Mode Flags' image='C:\WINDOWS\system32\pifmgr.dll,11') 19 | { 20 | item(title='Windows 95' 21 | image='' 22 | admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WIN95'), str.join(reg_get, 'WIN95', " ")) , reg.sz) 23 | , reg.set(reg_choice, this_path, '~ WIN95', reg.sz)) tip=tip_mw) 24 | item(title='Windows 98' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WIN98'), str.join(reg_get, 'WIN98', " ")) , reg.sz) 25 | , reg.set(reg_choice, this_path, '~ WIN98', reg.sz)) tip=tip_mw) 26 | item(title='Windows NT 4.0 SP5' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WIN4SP5'), str.join(reg_get, 'WIN4SP5', " ")) , reg.sz) 27 | , reg.set(reg_choice, this_path, '~ WIN4SP5', reg.sz)) tip=tip_mw) 28 | item(title='Windows 2000' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WIN2000'), str.join(reg_get, 'WIN2000', " ")) , reg.sz) 29 | , reg.set(reg_choice, this_path, '~ WIN2000', reg.sz)) tip=tip_mw) 30 | item(title='Windows XP SP2' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WINXPSP2'), str.join(reg_get, 'WINXPSP2', " ")) , reg.sz) 31 | , reg.set(reg_choice, this_path, '~ WINXPSP2', reg.sz)) tip=tip_mw) 32 | item(title='Windows XP SP3' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WINXPSP3'), str.join(reg_get, 'WINXPSP3', " ")) , reg.sz) 33 | , reg.set(reg_choice, this_path, '~ WINXPSP3', reg.sz)) tip=tip_mw) 34 | item(title='Windows Vista' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'VISTARTM'), str.join(reg_get, 'VISTARTM', " ")) , reg.sz) 35 | , reg.set(reg_choice, this_path, '~ VISTARTM', reg.sz)) tip=tip_mw) 36 | item(title='Windows Vista SP1' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'VISTASP1'), str.join(reg_get, 'VISTASP1', " ")) , reg.sz) 37 | , reg.set(reg_choice, this_path, '~ VISTASP1', reg.sz)) tip=tip_mw) 38 | item(title='Windows Vista SP2' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'VISTASP2'), str.join(reg_get, 'VISTASP2', " ")) , reg.sz) 39 | , reg.set(reg_choice, this_path, '~ VISTASP2', reg.sz)) tip=tip_mw) 40 | item(title='Windows 7' 41 | image='' 42 | admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WIN7RTM'), str.join(reg_get, 'WIN7RTM', " ")) , reg.sz) 43 | , reg.set(reg_choice, this_path, '~ WIN7RTM', reg.sz)) tip=tip_mw) 44 | item(title='Windows Server 2003 SP1' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WINSRV03SP1'), str.join(reg_get, 'WINSRV03SP1', " ")) , reg.sz) 45 | , reg.set(reg_choice, this_path, '~ WINSRV03SP1', reg.sz)) tip=tip_mw) 46 | item(title='Windows Server 2008 SP1' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || com_mode), str.replace(reg_get, reg_get, 'WINSRV08SP1'), str.join(reg_get, 'WINSRV08SP1', " ")) , reg.sz) 47 | , reg.set(reg_choice, this_path, '~ WINSRV08SP1', reg.sz)) tip=tip_mw) 48 | 49 | } 50 | 51 | menu(title='High DPI Scaling Override' mode='single' type='file' image='C:\WINDOWS\system32\shell32.dll,15') 52 | { 53 | item(title='Application' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || high_dpi), str.replace(reg_get, reg_get, 'HIGHDPIAWARE'), str.join(reg_get, 'HIGHDPIAWARE', " ")) , reg.sz) 54 | , reg.set(reg_choice, this_path, '~ HIGHDPIAWARE', reg.sz)) tip=tip_mw) 55 | item(title='System' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || high_dpi), str.replace(reg_get, reg_get, 'DPIUNAWARE'), str.join(reg_get, 'DPIUNAWARE', " ")) , reg.sz) 56 | , reg.set(reg_choice, this_path, '~ DPIUNAWARE', reg.sz)) tip=tip_mw) 57 | item(title='System(Enhanced)' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || high_dpi), str.replace(reg_get, reg_get, 'GDIDPISCALING'), str.join(reg_get, 'GDIDPISCALING', " ")) , reg.sz) 58 | , reg.set(reg_choice, this_path, '~ GDIDPISCALING', reg.sz)) tip=tip_mw) 59 | 60 | } 61 | 62 | menu(title='Program DPI (Fix Scaling and/or Blur)' mode='single' type='file' image='C:\WINDOWS\System32\shell32.dll,180') 63 | { 64 | item(title='DPI when I sign into Windows' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || program_dpi), str.replace(reg_get, reg_get, 'PERPROCESSSYSTEMDPIFORCEOFF'), str.join(reg_get, 'PERPROCESSSYSTEMDPIFORCEOFF', " ")) , reg.sz) 65 | , reg.set(reg_choice, this_path, '~ PERPROCESSSYSTEMDPIFORCEOFF', reg.sz)) tip=tip_mw) 66 | item(title='DPI when I open this program' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || program_dpi), str.replace(reg_get, reg_get, 'PERPROCESSSYSTEMDPIFORCEON'), str.join(reg_get, 'PERPROCESSSYSTEMDPIFORCEON', " ")) , reg.sz) 67 | , reg.set(reg_choice, this_path, '~ PERPROCESSSYSTEMDPIFORCEON', reg.sz)) tip=tip_mw) 68 | 69 | } 70 | 71 | menu(title='Color Mode' mode='single' type='file') 72 | { 73 | item(title='8-Bit (256) Colors' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || '16BITCOLOR'|'256COLOR'), str.replace(reg_get, reg_get, '256COLOR'), str.join(reg_get, '256COLOR', " ")) , reg.sz) 74 | , reg.set(reg_choice, this_path, '~ 256COLOR', reg.sz)) tip=tip_mw) 75 | item(title='16-Bit (65536) Color' admin cmd=if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || '16BITCOLOR'|'256COLOR'), str.replace(reg_get, reg_get, '16BITCOLOR'), str.join(reg_get, '16BITCOLOR', " ")) , reg.sz) 76 | , reg.set(reg_choice, this_path, '~ 16BITCOLOR', reg.sz)) tip=tip_mw) 77 | } 78 | 79 | menu(title='Additional Compat Flags' mode='single' type='file' ) 80 | { 81 | item(title='Disable Fullscreen Optimizations') 82 | item(title='Use Legacy Display ICC Color Management' image='C:\WINDOWS\System32\colorui.dll,5') 83 | item(title='Run in 640 x 480 screen resolution') 84 | 85 | } 86 | 87 | 88 | } 89 | 90 | 91 | 92 | /* 93 | if(reg_exists, reg.set(reg_choice, this_path, if((reg_get || program_dpi), str.replace(reg_get, reg_get, 'PERPROCESSSYSTEMDPIFORCEOFF'), str.join(reg_get, 'PERPROCESSSYSTEMDPIFORCEOFF', " ")) , reg.sz) 94 | , reg.set(reg_choice, this_path, '~ PERPROCESSSYSTEMDPIFORCEOFF', reg.sz)) tip=tip_mw) 95 | 96 | if(str.start(reg_get, '~') 97 | 98 | 99 | 640X480 Run in 640 x 480 screen resolution 100 | 101 | 102 | DISABLEDWM Disable Desktop Composition 103 | RUNASADMIN Run program as an administrator 104 | 105 | DISABLETHEMES Disable Visual Themes 106 | 107 | TRANSFORMLEGACYCOLORMANAGED Use Legacy Display ICC Color Management 108 | DISABLEDXMAXIMIZEDWINDOWEDMODE Disable Fullscreen Optimizations 109 | REGISTERAPPRESTART Register This Program for Restart 110 | */ 111 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.autorename.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | // This code creates two menu items for renaming files and directories when their names exceed the maximum allowed length on Windows (259 characters for files and 248 characters for directories). When clicked, these menu items will automatically shorten the name to fit within the allowed length. 5 | 6 | //> https://learn.microsoft.com/en-gb/windows/win32/fileio/naming-a-file#maximum-path-length-limitation 7 | $maxFileLen = 259 8 | item(title=title.rename keys='auto' type='file' where=sel.len>=maxFileLen 9 | image=icon.rename(auto, color.greenyellow) pos=indexof(quote(str.replace(title.rename, '&', ''))) 10 | tip='shorten the name by @(sel.len-(maxFileLen-1)) characters' vis=if(this.level!=1, 'disabled') 11 | cmd=io.rename(sel.path, path.combine(sel.parent, str.left(sel.file.title, maxFileLen-1-sel.parent.len-sel.file.ext.len) + sel.file.ext))) 12 | $maxDirLen = 248 13 | item(title=title.rename keys='auto' type='dir' where=sel.len>=maxDirLen 14 | image=icon.rename(auto, color.greenyellow) pos=indexof(quote(str.replace(title.rename, '&', ''))) 15 | tip='shorten the name by @(sel.len-(maxDirLen-1)) characters' vis=if(this.level!=1, 'disabled') 16 | cmd=io.rename(sel.path, path.combine(sel.parent, str.left(sel.path.name, maxDirLen-1-sel.parent.len)))) -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.copy.list.cp.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | menu(image=icon.copy_path title='Copy list' mode='single' type='dir|back.dir|drive|back.drive|desktop') { 5 | item(image=inherit keys='SHIFT paths recursive' title='Copy item names' 6 | tip='Copy the names of selected items to the clipboard, including hidden irems. Hold SHIFT to include full paths and subfolders.' 7 | window=hidden cmd-line='/c dir @sel(true) @if(keys.shift(), '/s') /b /o:gn | clip') 8 | item(image=inherit keys='SHIFT paths recursive' title='Copy item names with stats 'where=keys.shift() 9 | tip='Copy the names of selected items to the clipboard, including hidden irems. Hold SHIFT to include full paths, subfolders, and item details.' 10 | window=hidden cmd-line='/c dir @sel(true) @if(keys.shift(), '/s') /o:gn | clip') 11 | item(image=inherit keys='SHIFT paths recursive' title='Copy folder names' 12 | tip='Copy the names of selected folders to the clipboard, including hidden folders. Hold SHIFT to include full paths and subfolders.' 13 | window=hidden cmd-line='/c dir @sel(true) @if(keys.shift(), '/s') /b /a:d /o:n | clip') 14 | item(image=inherit keys='SHIFT paths recursive' title='Copy folder names with stats' where=keys.shift() 15 | tip='Copy the names of selected folders to the clipboard, including hidden folders. Hold SHIFT to include full paths, subfolders, and folder details.' 16 | window=hidden cmd-line='/c dir @sel(true) @if(keys.shift(), '/s') /a:d /o:n | clip') 17 | item(image=inherit keys='SHIFT paths recursive' title='Copy file names' 18 | tip='Copy the names of selected files to the clipboard, including hidden files. Hold SHIFT to include full paths and subfolders.' 19 | window=hidden cmd-line='/c dir @sel(true) @if(keys.shift(), '/s') /b /a:-d /o:n | clip') 20 | item(image=inherit keys='SHIFT paths recursive' title='Copy file names with stats' where=keys.shift() 21 | tip='Copy the names of selected files to the clipboard, including hidden files. Hold SHIFT to include full paths, subfolders, and file details.' 22 | window=hidden cmd-line='/c dir @sel(true) @if(keys.shift(), '/s') /a:-d /o:n | clip') 23 | separator() 24 | item(image=inherit title='Copy file names with size (in bytes)' 25 | tip='Copy the names and sizes (in bytes) of all files in the selected folder to the clipboard. Hidden files are not included.' 26 | cmd-ps=`$path = '@sel'; $list = Get-ChildItem -LiteralPath $path | Where-Object { $_.PSIsContainer -eq $false } | ForEach-Object { $fileName = $_.Name; $fileSize = $_.Length; \"$fileName - $($fileSize) bytes\"; }; $list | Out-String | Set-Clipboard;` window=hidden) 27 | item(image=inherit title='Copy file names with size (formated)' 28 | tip='Copy the names and sizes of all files in the selected folder to the clipboard, formatted as GB, MB, or KB as appropriate. Hidden files are not included.' 29 | cmd-ps=`$path = '@sel'; $list = Get-ChildItem -LiteralPath $path | Where-Object { $_.PSIsContainer -eq $false } | ForEach-Object { $fileName = $_.Name; $fileSizeBytes = $_.Length; if ($fileSizeBytes -ge 1GB) { $fileSizeGB = $fileSizeBytes / 1GB; \"$fileName - $($fileSizeGB.ToString('N2')) GB\"; } elseif ($fileSizeBytes -ge 1MB) { $fileSizeMB = $fileSizeBytes / 1MB; \"$fileName - $($fileSizeMB.ToString('N2')) MB\"; } else { $fileSizeKB = $fileSizeBytes / 1KB; \"$fileName - $($fileSizeKB.ToString('N2')) KB\"; } }; $list | Out-String | Set-Clipboard;` window=hidden) } 30 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.copy.path.all.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // Based on: Nilesoft Shell original snippet 3 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 4 | 5 | menu(image=icon.copy_path title=title.copy_path mode='single') { 6 | item(title='Open File Location' image cmd='explorer.exe' args='/select, @sel') 7 | separator() 8 | 9 | // Section: Full Path Variants 10 | item(image=inherit cmd=command.copy(this.title) title=sel.path) 11 | item(image=inherit cmd=command.copy(this.title) title=sel.raw where=(sel.raw != sel.path)) 12 | item(image=inherit cmd=command.copy(this.title) title=sel.short where=(sel.short != sel.path) and len(sel.short)>0 tip='Short Path: Uses DOS 8.3 names for compatibility with older systems') 13 | menu(expanded='true' where=keys.shift() and str.contains(sel.path, ':')) { 14 | item(cmd=command.copy(this.title) title='\\localhost\' + str.replace(sel.path, ':', '$') tip='Network Path: For accessing via a mapped drive or UNC path') 15 | item(cmd=command.copy(this.title) title=path.wsl(sel.path) tip='Unix-style Path: Use for WSL or similar environments') 16 | item(cmd=command.copy(this.title) title=str.replace(path.wsl(sel.path), '/mnt/', '/cygdrive/') tip='Cygwin Path: For use in Cygwin environments') 17 | item(cmd=command.copy(this.title) title=str.right(path.wsl(sel.path), len(path.wsl(sel.path))-len('/mnt/c')) tip='Pure Unix Path: For Linux systems (with root /home structure)') 18 | item(cmd=command.copy(this.title) title='file://' + path.separator(sel.path) tip='Internet Path: Use as a file URL for browsers or network links') } 19 | separator() 20 | 21 | // Section: Parent Path Variants 22 | item(image=inherit cmd=command.copy(this.title) where=(sel.parent.len>3 and !str.start(sel.raw, '::')) title=@sel.parent) 23 | item(image=inherit cmd=command.copy(this.title) title=@sel.parent.raw where=(sel.parent.raw != sel.parent)) 24 | separator() 25 | 26 | // Section: File Name and Extension 27 | item(cmd=command.copy(this.title) type='file|dir|back.dir' title=@sel.file.name) 28 | item(cmd=command.copy(this.title) type='file' where=sel.file.len != sel.file.title.len title=@sel.file.title) 29 | item(cmd=command.copy(this.title) type='file' where=sel.file.ext.len>0 title=@sel.file.ext) 30 | 31 | // Section: Special Folder Names (UUID-based or System) 32 | $ext_dir = regex.matches(sel, '\.\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\}$') 33 | item(cmd=command.copy(this.title) type='dir|back.dir' where=len(ext_dir[0])>0 title=str.replace(sel.file.name, ext_dir[0], "")) 34 | item(cmd=command.copy(this.title) type='dir|back.dir' where=len(ext_dir[0])>0 title=ext_dir[0]) 35 | 36 | // Section: Namespace (e.g., libraries or virtual folders) 37 | item(cmd=command.copy(this.title) type='namespace' where=str.end(sel.raw, '.library-ms') title=sel.path.title+'.library-ms') 38 | item(cmd=command.copy(this.title) type='namespace' where=str.end(sel.raw, '.library-ms') title=sel.path.title) 39 | item(cmd=command.copy(this.title) type='namespace' where=str.end(sel.raw, '.library-ms') title='.library-ms') 40 | } 41 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.copy.path.env.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | menu(image=icon.copy_path title='Copy &env path' mode='single' type='dir|back.dir|drive|back.drive|desktop') { 5 | item(title='Environment Variables' keys='SHIFT admin' image='@sys.bin\imageres.dll,156' 6 | admin=keys.shift() cmd='rundll32.exe' args='sysdm.cpl,EditEnvironmentVariables') 7 | separator() 8 | // AppData / User 9 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%TMP%') title="%TMP%"+str.sub(sel.path, len(sys.expand('%TMP%')))) 10 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%TEMP%') title="%TEMP%"+str.sub(sel.path, len(sys.expand('%TEMP%')))) 11 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%LocalAppData%') title="%LocalAppData%"+str.sub(sel.path, len(sys.expand('%LocalAppData%')))) 12 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%UserProfile%') title="%UserProfile%"+str.sub(sel.path, len(sys.expand('%UserProfile%')))) 13 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%AppData%') title="%AppData%"+str.sub(sel.path, len(sys.expand('%AppData%')))) 14 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%Public%') title="%Public%"+str.sub(sel.path, len(sys.expand('%Public%')))) 15 | // ProgramData 16 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%ProgramData%') title="%ProgramData%"+str.sub(sel.path, len(sys.expand('%ProgramData%')))) 17 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%AllUsersProfile%') title="%AllUsersProfile%"+str.sub(sel.path, len(sys.expand('%AllUsersProfile%')))) 18 | // Program 19 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%CommonProgramFiles%') and !str.contains(sel.path, '%CommonProgramFiles(x86)%') title="%CommonProgramFiles%"+str.sub(sel.path, len(sys.expand('%CommonProgramFiles%')))) 20 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%ProgramFiles%') and !str.contains(sel.path, '%ProgramFiles(x86)%') title="%ProgramFiles%"+str.sub(sel.path, len(sys.expand('%ProgramFiles%')))) 21 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%CommonProgramFiles(x86)%') title="%CommonProgramFiles(x86)%"+str.sub(sel.path, len(sys.expand('%CommonProgramFiles(x86)%')))) 22 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%ProgramFiles(X86)%') title="%ProgramFiles(X86)%"+str.sub(sel.path, len(sys.expand('%ProgramFiles(X86)%')))) 23 | // Windows 24 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%WinDir%') title="%WinDir%"+str.sub(sel.path, len(sys.expand('%WinDir%')))) 25 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%SystemRoot%') title="%SystemRoot%"+str.sub(sel.path, len(sys.expand('%SystemRoot%')))) 26 | // drive letter 27 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%HomeDrive%') title="%HomeDrive%"+str.sub(sel.path, len(sys.expand('%HomeDrive%')))) 28 | item(image=inherit cmd=command.copy(this.title) where=str.contains(sel.path, '%SystemDrive%') title="%SystemDrive%"+str.sub(sel.path, len(sys.expand('%SystemDrive%')))) } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.copy.path.lnk.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | menu(image=icon.copy_path title='Copy &lnk path' mode='single' type='file' where=len(path.lnktarget(sel))>0) { 5 | item(title='Open File Location' image cmd='explorer.exe' args='/select, @path.lnktarget(sel)') 6 | separator() 7 | // check if both path.lnktarget and path.lnk.target are the same 8 | item(image=inherit cmd=command.copy(this.title) title=path.lnk.target(sel)) 9 | item(image=inherit cmd=command.copy(this.title) title=path.lnktarget(sel) where=path.lnktarget(sel) != path.lnk.target(sel)) 10 | separator() 11 | item(image=inherit cmd=command.copy(this.title) title=path.location(path.lnk.target(sel)) where=len(path.location(path.lnk.target(sel)))>3) 12 | item(image=inherit cmd=command.copy(this.title) title=path.lnk.dir(sel) where=(path.location(path.lnk.target(sel)) != path.lnk.dir(sel)) and len(path.lnk.dir(sel))>0 tip='Start in folder') 13 | separator() 14 | item(cmd=command.copy(this.title) title=path.name(path.lnk.target(sel))) 15 | item(cmd=command.copy(this.title) title=path.title(path.lnk.target(sel)) where=path.name(path.lnk.target(sel)) != path.title(path.lnk.target(sel))) 16 | item(cmd=command.copy(this.title) title=path.file.ext(path.lnk.target(sel)) where=len(path.file.ext(path.lnk.target(sel)))>1) } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.copy.path.ps.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // Based on: jorn's idea (Discord) 3 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 4 | 5 | menu(image=icon.copy_path title=title.copy_path mode='multiple' type='file|dir|back.dir|drive|back.drive|desktop') { 6 | item(image=inherit title='Copy item@if(sel.count>1, 's') full path' tip='Copies the full path of the selected item(s) to the clipboard' 7 | window='hidden' cmd-ps=`-Command @sel(2, ',') | % { [System.IO.Path]::GetFullPath($_) } | Set-Clipboard`) 8 | item(image=inherit title='Copy parent@if(sel.count>1, 's') full path' where=!path.isdrive(sel) tip='Copies the full path of the parent directory of the selected item(s) to the clipboard' 9 | window='hidden' cmd-ps=`-Command @sel(2, ',') | % { [System.IO.Path]::GetDirectoryName($_) } | Set-Clipboard`) 10 | separator() 11 | item(title='Copy item@if(sel.count>1, 's') name' tip='Copies the name (with extension) of the selected item(s) to the clipboard' 12 | window='hidden' cmd-ps=`-Command @sel(2, ',') | % { [System.IO.Path]::GetFileName($_) } | Set-Clipboard`) 13 | item(title='Copy item@if(sel.count>1, 's') title' tip='Copies the title (name without extension) of the selected item(s) to the clipboard' 14 | window='hidden' cmd-ps=`-Command @sel(2, ',') | % { [System.IO.Path]::GetFileNameWithoutExtension($_) } | Set-Clipboard`) 15 | separator() 16 | item(title='Copy Content@if(sel.count>1, 's')' type='file' mode='multi_unique' tip='Copies the content of the selected file(s) to the clipboard' 17 | window='hidden' cmd-ps=`-Command @sel(2, ',') | % { Get-Content $_ -Raw } | Set-Clipboard`) 18 | item(image=inherit title='Copy Content@if(sel.count>1, 's')' type='dir|back.dir|drive|back.drive|desktop' tip='Copies the full paths of all items inside the selected directory/drive to the clipboard' 19 | window='hidden' cmd-ps=`-Command Set-Clipboard -LiteralPath (@sel(2, ',') | % { Get-ChildItem $_ -Force | % { $_.FullName } })`) } 20 | 21 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.keyboard.shortcuts.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | // remove keyboard shortcut info of the only command that has one 5 | // modify(find='Undo*|Redo*' keys='') 6 | // modify(where=str.start(this.title, title.Undo) or str.start(this.title, title.Redo) keys='') 7 | 8 | //> https://support.microsoft.com/en-us/windows/keyboard-shortcuts-in-windows-dcc61a57-8ff0-cffe-9796-cb9706c75eec 9 | //> https://www.elevenforum.com/t/keyboard-shortcuts-in-windows-11.2253/ 10 | modify(where=this.title==title.open keys='Enter') 11 | modify(where=this.title==title.cut type='*' keys='Ctrl+X') 12 | modify(where=this.title==title.copy type='*' keys='Ctrl+C') 13 | modify(where=this.title==title.paste type='*' keys='Ctrl+V') // tip='Open the clipboard history (Win+V)' 14 | modify(where=this.title==title.delete type='*' keys='Ctrl+D' tip=["\xE1A7 Press SHIFT key to permanently delete selected file"+if(sel.count>1, 's'), tip.danger, 1.0]) 15 | modify(where=this.title==title.rename keys='F2') 16 | modify(where=str.start(this.title, title.undo) type='*' keys='Ctrl+Z') 17 | modify(where=str.start(this.title, title.redo) type='*' keys='Ctrl+Y') 18 | modify(where=this.title==title.select_all type='*' keys='Ctrl+A') 19 | modify(where=this.title==title.copy_as_path keys='Ctrl+Shift+C') 20 | modify(where=this.title==title.refresh keys='Ctrl+R') 21 | modify(where=this.title==title.properties & sel.count>0 keys='Alt+Enter') 22 | 23 | //> https://www.elevenforum.com/t/change-size-of-desktop-icons-in-windows-11.4820/ 24 | modify(where=this.title==title.extra_large_icons in=str.replace(title.view, '&', '') keys='Ctrl+Shift+1') 25 | modify(where=this.title==title.large_icons in=str.replace(title.view, '&', '') keys='Ctrl+Shift+2') 26 | modify(where=this.title==title.medium_icons in=str.replace(title.view, '&', '') keys='Ctrl+Shift+3') 27 | modify(where=this.title==title.small_icons in=str.replace(title.view, '&', '') keys='Ctrl+Shift+4') 28 | modify(where=this.title==title.list in=str.replace(title.view, '&', '') keys='Ctrl+Shift+5') 29 | modify(where=this.title==title.details in=str.replace(title.view, '&', '') keys='Ctrl+Shift+6') 30 | modify(where=this.title==title.tiles in=str.replace(title.view, '&', '') keys='Ctrl+Shift+7') 31 | modify(where=this.title==title.content in=str.replace(title.view, '&', '') keys='Ctrl+Shift+8') 32 | 33 | // Add keyboard shortcut info to "&Folder" in "Ne&w" menu 34 | modify(where=this.title==eval(str.res('shell32.dll', -30317)) in=str.replace(title.new, '&', '') keys='Ctrl+Shift+N') 35 | 36 | // Add new commands for "Select &all" 37 | item(title='Select &all' keys='Ctrl+A' image=icon.select_all cmd=command.select_all) 38 | 39 | // Add keyboard shortcut info to "Size &All Columns to Fit" 40 | modify(type='*' keys='Ctrl+"Num Pad +"' 41 | where=(this.title==eval(str.res('shell32.dll', -37201)) or this.title==eval(str.res('shell32.dll', -37466))) and (wnd.parent.name=="SHELLDLL_DefView")) 42 | 43 | // Add new commands in "View" menu 44 | item(title='Column Arrange' keys='Ctrl+"Num Pad +"' 45 | where=window.name=='CabinetWClass' menu=title.view image=icon.details sep='top' 46 | commands{cmd=keys.send(key.ctrl, key.shift, 54) wait=1, cmd=keys.send(key.ctrl, 107)}) 47 | item(title='Expand Navigation Pane' keys='Ctrl+Shift+E' 48 | where=window.name=='CabinetWClass' menu=title.view image=icon.expand sep='bottom' 49 | tip='Expands all folders from the tree in the navigation pane.' cmd=keys.send(key.ctrl, key.shift, 69)) 50 | item(title='Up' keys='Alt+Up' 51 | where=window.name=='CabinetWClass' menu=title.view image=\uE214 cmd=keys.send(key.alt, key.up)) 52 | item(title='Back' keys='Alt+Left' 53 | where=window.name=='CabinetWClass' menu=title.view image=\uE216 cmd=keys.send(key.alt, key.left)) 54 | item(title='Forward' keys='Alt+Right' 55 | where=window.name=='CabinetWClass' menu=title.view image=\uE215 cmd=keys.send(key.alt, key.right)) 56 | 57 | item(title='Desktop icon settings' where=wnd.is_desktop menu=title.view pos=indexof(quote(str.replace(title.show_desktop_icons, '&', ''))) image=image.res('@sys.bin\desk.cpl', 0) 58 | cmd='rundll32.exe' args='shell32.dll,Control_RunDLL desk.cpl,,0') 59 | 60 | /* this snippet is not working well 61 | item(title='&Hide file names' where=wnd.is_desktop menu=title.view pos=indexof(quote(str.replace(title.show_desktop_icons, '&', ''))) tip='hides file names on desctop icons temporarly' 62 | cmd=wnd.command(28727)) */ -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.openwith.simple.ml.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | // // This code snippet removes "Open wit&h" and "Open wit&h..." and add menu item 5 | remove(where=this.title==str.res('shell32.dll', -5376) or this.title==str.res('shell32.dll', -5377)) 6 | item(title=str.res('shell32.dll', -5377) image=icon.open_with tip=str.res('shell32.dll', -5378) 7 | cmd='rundll32.exe' args='shell32.dll,OpenAs_RunDLL @sel') -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/all.security.env.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | // To-Do: make exceptions for system folders 4 | 5 | menu(image=icon.copy_path title='Environment Path' mode='single' type='dir|back.dir|drive|back.drive|desktop') { 6 | //+ https://learn.microsoft.com/en-us/windows/deployment/usmt/usmt-recognized-environment-variables 7 | item(title='ENV GUI' keys='SHIFT edit sys env' tip='Edit Environment Variables' image='@sys.bin\imageres.dll,156' sep='both' 8 | admin=keys.shift() cmd='rundll32.exe' args='sysdm.cpl,EditEnvironmentVariables') 9 | 10 | $reg_cu = reg.get('HKCU\Environment', 'PATH') 11 | $reg_lm = reg.get('HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'PATH') 12 | // does not work for drives 13 | $is_in_path = str.contains(reg_cu, sel+';') or str.contains(reg_cu, sel+'\;') or str.end(reg_cu, sel) 14 | $add_to_path = str.replace('@reg_cu;@sel', ';;', ';').trimstart(';') 15 | $remove_from_path = str.replace(reg_cu, sel, '').replace('\;', ';').replace(';;', ';') 16 | 17 | /* need explorer restart to take effect 18 | item(title=if(is_in_path, 'Remove from ', 'Add to ')+"%PATH%" type='dir' 19 | admin cmd-line='/c @if(is_in_path, if(msg('Are you sure you want to remove this path?', 'NileSoft Shell', msg.yesno | msg.warning)==msg.idyes, 'setx PATH "@remove_from_path" & pause & exit'), 'setx PATH "@add_to_path" & pause & exit')') 20 | */ 21 | item(title=if(is_in_path, 'Remove path from ', 'Add path to ')+"%PATH%" type='dir|dir.back' image=if(is_in_path, \uE171, \uE172) 22 | admin cmd=if(is_in_path, if(msg('Are you sure you want to remove this path?', 'NileSoft Shell', msg.yesno | msg.warning)==msg.idyes, reg.set('HKCU\Environment', 'PATH', remove_from_path)), reg.set('HKCU\Environment', 'PATH', add_to_path))) 23 | 24 | separator() 25 | item(title='Check '+"%PATH%" keys='default' where=keys.shift() image=\uE187 cmd=msg(str.join(str.split('%path%', ';'), "\n"))) 26 | item(title='Check '+"%PATH%" keys='CU' where=keys.shift() image=\uE187 cmd=msg(str.join(str.split(reg_cu, ';'), "\n"))) 27 | item(title='Check '+"%PATH%" keys='LM' where=keys.shift() image=\uE187 cmd=msg(str.join(str.split(reg_lm, ';'), "\n"))) 28 | item(title='Check '+"%PATH%" keys='LM+CU' where=keys.shift() image=\uE187 cmd=msg(str.join(str.split(reg_lm, ';'), "\n") + "\n\n" + str.join(str.split(reg_cu, ';'), "\n"))) 29 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/app.NanaZip.nss: -------------------------------------------------------------------------------- 1 | // supported formats by 7-zip 2 | $se7zP = '7z|xz|bz2|gz|tar|zip|wim' 3 | $se7zU = 'apfs|ar|arj|cab|chm|cpio|cramfs|dmg|ext|fat|gpt|hfs|ihex|iso|lzh|lzma|mbr|msi|nsis|ntfs|qcow2|rar|rpm|squashfs|udf|uefi|vdi|vhd|vhdx|vmdk|xar|z' 4 | 5 | // path to NanaZip 6 | $cmd_NanaM = path.combine(package('NanaZip'),'NanaZip.Modern.exe') 7 | $cmd_NanaW = path.combine(package('NanaZip'),'NanaZip.Windows.exe') 8 | 9 | item(title='Browse with NanaZip...' mode='single' type='dir|drive|back' 10 | image cmd=cmd_NanaM args=sel(true)) 11 | item(title='Open with NanaZip...' mode='single' type='file' find=str.replace('."'+se7zP+'|'+se7zU+'"', '|', '"|."') 12 | image cmd=cmd_NanaM args=sel(true)) 13 | item(title='Extract files...' keys='single' mode='single' type='file' find=str.replace('."'+se7zP+'|'+se7zU+'"', '|', '"|."') 14 | image cmd=cmd_NanaW args='x @sel(true) -o@sel.path.title\ -ad') 15 | // or 16 | item(title=title.extract_to keys='single' mode='single' type='file' find=str.replace('."'+se7zP+'|'+se7zU+'"', '|', '"|."') 17 | image=icon.extract_to cmd=cmd_NanaW args='x @sel(true) -o@sel.path.title\ -ad') -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/app.NanaZup.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | // Hide default menu: NS can not recognize drag&drop paths, so use: 5 | remove(find='NanaZip') 6 | // remove(clsid='{CAE3F1D4-7765-4D98-A060-52CD14D56EAB}' where=this.isuwp) 7 | 8 | // ? HKEY_CLASSES_ROOT\PackagedCom\ClassIndex\{CAE3F1D4-7765-4D98-A060-52CD14D56EAB} 9 | // ? HKEY_LOCAL_MACHINE\SOFTWARE\Classes\PackagedCom\ClassIndex\{CAE3F1D4-7765-4D98-A060-52CD14D56EAB} 10 | // ? HKEY_CLASSES_ROOT\PackagedCom\Package\40174MouriNaruto.NanaZip_3.1.1080.0_x64__gnj4mf6z9tkrc 11 | // ? HKEY_LOCAL_MACHINE\SOFTWARE\Classes\PackagedCom\Package\40174MouriNaruto.NanaZip_3.1.1080.0_x64__gnj4mf6z9tkrc 12 | // ? HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppModel\Repository\Packages\40174MouriNaruto.NanaZip_3.1.1080.0_x64__gnj4mf6z9tkrc\NanaZip.Modern\Capabilities\FileAssociations 13 | 14 | // supported formats by 7-zip 15 | $se7zP = '7z|xz|bz2|gz|tar|zip|wim' 16 | $se7zU = 'apfs|ar|arj|cab|chm|cpio|cramfs|dmg|ext|fat|gpt|hfs|ihex|iso|lzh|lzma|mbr|msi|nsis|ntfs|qcow2|rar|rpm|squashfs|udf|uefi|vdi|vhd|vhdx|vmdk|xar|z' 17 | 18 | // path to NanaZip 19 | $cmd_NanaM = path.combine(package('NanaZip'),'NanaZip.Modern.exe') 20 | $cmd_NanaW = path.combine(package('NanaZip'),'NanaZip.Windows.exe') 21 | 22 | item(title='Browse with NanaZip...' mode='single' type='dir|drive|back' 23 | image cmd=cmd_NanaM args=sel(true)) 24 | item(title='Open with NanaZip...' mode='single' type='file' find=str.replace('."'+se7zP+'|'+se7zU+'"', '|', '"|."') 25 | image cmd=cmd_NanaM args=sel(true)) 26 | item(title='Extract files...' keys='single' mode='single' type='file' find=str.replace('."'+se7zP+'|'+se7zU+'"', '|', '"|."') 27 | image cmd=cmd_NanaW args='x @sel(true) -o@sel.path.title\ -ad') 28 | // or 29 | item(title=title.extract_to keys='single' mode='single' type='file' find=str.replace('."'+se7zP+'|'+se7zU+'"', '|', '"|."') 30 | image=icon.extract_to cmd=cmd_NanaW args='x @sel(true) -o@sel.path.title\ -ad') 31 | 32 | 33 | 34 | // Extra 35 | item(title='NanaZip in Microsoft Store Mini' cmd='ms-windows-store://pdp/?mode=mini&ProductId=9N8G7TSCL18R') 36 | item(title='NanaZip in Microsoft Store' cmd='ms-windows-store://pdp/?ProductId=9N8G7TSCL18R') -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/app.sandbox.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // creeated: 2025-01-01 :) 3 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 4 | 5 | menu(title='Windows Sandbox' mode='single' type='file|dir|back.dir|drive|back.drive|desktop' where=sys.ver.build>=1903 and user.name!='WDAGUtilityAccount' 6 | image='@appx('WindowsSandbox')\Assets\Logo-256.ico' 7 | vis=if(process.is_started("WindowsSandboxRemoteSession.exe") or !appx.exists('WindowsSandbox'), 'disable') 8 | tip=if(process.is_started("WindowsSandboxRemoteSession.exe"), 'Windows Sandbox is running. Close it to use this feature.', if(!appx.exists('WindowsSandbox'), 'Requires Windows Sandbox to be installed', 'The profile remains preserved even after restarting the Windows Sandbox.'))) { 9 | //> https://learn.microsoft.com/en-us/windows/security/application-security/application-isolation/windows-sandbox/windows-sandbox-configure-using-wsb-file 10 | // $special_char 'é|è|à|â|ê|û|î|ä|ë|ü|ï|ö|ù|ò|~|!|@|#|$|%|^|&|+|=|}|{|||<|>|;' // Windows Sandbox does not support these characters in the path 11 | $template_b = 'DisableEnableSOURCETARGET@if(keys.shift(), 'false', 'true')CMD' 12 | $template_m = 'DisableEnableSOURCETARGET@if(keys.shift(), 'false', 'true')' 13 | $template_r = 'DisableEnableCMD' 14 | $ps_command = `$tempFile = [System.IO.Path]::GetTempFileName() -replace '\.tmp$', '.wsb'; Set-Content -Path $tempFile -Value $wsbConfig; Start-Process -FilePath "WindowsSandbox.exe" -ArgumentList $tempFile; Start-Sleep -Seconds 25; Remove-Item -Path $tempFile -Force` 15 | 16 | item(image=\uE249 keys='SHIFT writable' title='Run Sandbox with NS Shell and Windows Context Menu' 17 | tip='Synchronizes the Nilesoft Shell directory with Windows Sandbox. Both the Nilesoft Shell and Windows "Modern" context menus are enabled. Hold SHIFT to enable writable access.' 18 | cmd-ps=`$wsbConfig='@str.replace(template_b, 'SOURCE', app.dir).replace('TARGET', app.dir).replace('CMD', '@app.exe -s -r')'; @ps_command` window='hidden') 19 | item(image=\uE249 keys='SHIFT writable' title='Run Sandbox with NS Shell only' 20 | tip='Synchronizes the Nilesoft Shell directory with Windows Sandbox. Only the Nilesoft Shell context menu is enabled. Hold SHIFT to enable writable access.' 21 | cmd-ps=`$wsbConfig='@str.replace(template_b, 'SOURCE', app.dir).replace('TARGET', app.dir).replace('CMD', '@app.exe -s -r -t')'; @ps_command` window='hidden') 22 | item(image=\uE0E9 keys='SHIFT writable' title='Sync Desktop with Sandbox' 23 | tip='Maps your desktop folder into the Windows Sandbox. Hold SHIFT to enable writable access.' 24 | cmd-ps=`$wsbConfig='@str.replace(template_m, 'SOURCE', user.desktop).replace('TARGET', 'C:\Users\WDAGUtilityAccount\Desktop')'; @ps_command` window='hidden') 25 | separator() 26 | 27 | /* Example: $dir_map 28 | = 'C:\Sandbox@if(keys.shift(), 'Writable', 'ReadOnly')Folder' 29 | = 'C:\SandboxMappedFolder' 30 | = 'C:\@sel.dir.name' 31 | = 'C:\Users\WDAGUtilityAccount\Desktop\Sandbox@if(keys.shift(), 'Writable', 'ReadOnly')Folder' 32 | = 'C:\Users\WDAGUtilityAccount\Desktop\SandboxMappedFolder' 33 | = 'C:\Users\WDAGUtilityAccount\Desktop\@sel.dir.name' */ 34 | $dir_map = 'C:\Sandbox@if(keys.shift(), 'Writable', 'ReadOnly')Folder' 35 | item(image=\uE0E7 keys='SHIFT writable' title='Share Selected Folder in Sandbox' type='dir|back.dir|drive|back.drive|desktop' 36 | tip='Maps the selected folder into the Windows Sandbox at @dir_map. Hold SHIFT for writable access.' 37 | cmd-ps=`$wsbConfig='@str.replace(template_m, 'SOURCE', sel.dir).replace('TARGET', dir_map)'; @ps_command` window='hidden') 38 | item(image=\uE0E7 keys='SHIFT writable' title='Share Selected Folder in Sandbox, Show in Explorer' type='dir|back.dir|drive|back.drive|desktop' 39 | tip='Maps the selected folder into the Windows Sandbox at @dir_map and shows it in Explorer. Hold SHIFT for writable access.' 40 | cmd-ps=`$wsbConfig='@str.replace(template_b, 'SOURCE', sel.dir).replace('TARGET', dir_map).replace('CMD', 'explorer.exe /select, "@dir_map"')'; @ps_command` window='hidden') 41 | item(image=\uE0E7 keys='SHIFT writable' title='Share Selected Folder in Sandbox, Open in Explorer' type='dir|back.dir|drive|back.drive|desktop' 42 | tip='Maps the selected folder into the Windows Sandbox at @dir_map and opens it in Explorer. Hold SHIFT for writable access.' 43 | cmd-ps=`$wsbConfig='@str.replace(template_b, 'SOURCE', sel.dir).replace('TARGET', dir_map).replace('CMD', 'explorer.exe "@dir_map"')'; @ps_command` window='hidden') 44 | separator() 45 | 46 | item(image=\uE11F title='Open URL in Sandbox with Edge' type='file' where=sel.file.ext=='.url' 47 | tip='Launches a .url file in Windows Sandbox using Microsoft Edge.' 48 | cmd-ps=`$wsbConfig='@str.replace(template_r, 'CMD', 'cmd /c start msedge @ini.get(sel, "InternetShortcut", "URL")')'; @ps_command` window='hidden') 49 | separator() 50 | 51 | /* Example: $dir_app 52 | = 'C:\Sandbox@if(keys.shift(), 'Writable', 'ReadOnly')Folder' 53 | = 'C:\SandboxTmpFolder' 54 | = 'C:\Users\WDAGUtilityAccount\Desktop\SandboxTmpFolder' */ 55 | $dir_app = 'C:\Sandbox@if(keys.shift(), 'Writable', 'ReadOnly')Folder' 56 | $se = sel.file.ext 57 | $fl = path.combine(dir_app, sel.name) 58 | $ps_run = 'powershell -ExecutionPolicy Bypass -Command' 59 | item(image=\uE10E keys='SHIFT writable' title=if(!str.contains('.reg|.zip|.iso|', sel.file.ext+'|'), 'Try to ')+'Open File in Sandbox' type='file' 60 | tip='Launches the selected file in Windows Sandbox. Hold SHIFT for writable access.' 61 | cmd-ps=`$wsbConfig='@str.replace(template_b, 'SOURCE', sel.parent).replace('TARGET', dir_app).replace('CMD', '@ps_run \"rundll32.exe "shell32.dll,OpenAs_RunDLL @fl\"')'; @ps_command` window='hidden') 62 | item(image=\uE10E keys='SHIFT writable' title='Open Selected File in Sandbox with Edge' type='file' where=str.contains(eval(str.join(reg.values('HKLM\SOFTWARE\Clients\StartMenuInternet\Microsoft Edge\Capabilities\FileAssociations'), '|')+'|'), sel.file.ext+'|') 63 | tip='Launches the selected file in Windows Sandbox using Microsoft Edge. Hold SHIFT for writable access.' 64 | cmd-ps=`$wsbConfig='@str.replace(template_b, 'SOURCE', sel.parent).replace('TARGET', dir_app).replace('CMD', 'cmd /c start msedge "@path.combine(dir_app, sel.name)"')'; @ps_command` window='hidden') 65 | $cmd_exec = if(se=='.exe', '"@fl"', if(se=='.msi', 'msiexec /i "@fl"', if(se=='.bat' or se=='.cmd', '@ps_run \"Start-Process @fl\"', if(se=='.ps1', '@ps_run \"Start-Process powershell.exe -ArgumentList \\\"-nologo\\\",\\\"-File @fl\\\"\"', 'powershell.exe')))) 66 | item(image=\uE258 keys='SHIFT writable' title='Run Executable File in Sandbox' type='file' where=str.contains('.exe|.msi|.bat|.cmd|.ps1|', sel.file.ext+'|') 67 | tip='Runs the selected executable file in Windows Sandbox. Hold SHIFT for writable access.' 68 | cmd-ps=`$wsbConfig='@str.replace(template_b, 'SOURCE', sel.parent).replace('TARGET', dir_app).replace('CMD', cmd_exec)'; @ps_command` window='hidden') 69 | item(image=\uE258 keys='SHIFT writable' title='Run Executable File with Argument in Sandbox' type='file' where=str.contains('.exe|.msi|.bat|.cmd|', sel.file.ext+'|') 70 | tip='Tries to run the selected executable file in Windows Sandbox with the argument(s). Hold SHIFT for writable access.' 71 | cmd-ps=if(!input('Nilesoft Shell', 'Add argument(s)') , msg('Operation cancelled'), `$wsbConfig='@str.replace(template_b, 'SOURCE', sel.parent).replace('TARGET', dir_app).replace('CMD', '@cmd_exec @input.result')'; @ps_command`) window='hidden') 72 | item(image=\uE258 keys='SHIFT writable' title='Silent Run PowerShell Script in Sandbox' type='file' where=sel.file.ext=='.ps1' 73 | tip='Runs the selected PowerShell script in Windows Sandbox. No user interaction possible. Hold SHIFT for writable access.' 74 | cmd-ps=`$wsbConfig='@str.replace(template_b, 'SOURCE', sel.parent).replace('TARGET', dir_app).replace('CMD', 'powershell.exe -ExecutionPolicy Bypass -File @fl')'; @ps_command` window='hidden') 75 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/commands.renamer.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | $svg_renamer=image.svg(' 5 | 6 | 7 | ') 8 | menu(title='Fast Renamer' mode='multiple' type='dir|file' image=svg_renamer) { 9 | item(title='Rename...' mode='single' image=icon.rename tip='Rename a single file or folder.' 10 | cmd=if(input('Nilesoft Shell', 'New @if(sel.type==3, 'folder', 'file') for @(sel.name)') and len(input.result)>0 , 11 | io.rename(sel.path, path.combine(path.location(sel.path), input.result + path.file.ext(sel.path))), msg('no input'))) 12 | item(title='Rename' + if(sel.count>1, ' @sel.count Selected') + '...' mode='multiple' image=icon.rename tip='Rename multiple files or folders one by one. The process can not be stopped once started.' 13 | cmd=if(input('Nilesoft Shell', 'New @if(sel.type==3, 'folder', 'file') name for @(sel.name)') and len(input.result)>0, 14 | io.rename(sel.path, path.combine(path.location(sel.path), input.result + path.file.ext(sel.path))), msg('no input')) invoke=1) 15 | item(title='Rename with Counter...' image=icon.rename tip='Initiate counting from the first file by pressing the SHIFT key.' 16 | cmd=for(x=0, x0 or keys.shift(), ' ('+ if(keys.shift(), 1+x, x) +')') + path.file.ext(sel[x]))) }) 19 | separator() 20 | item(mode='single' type='file' mode='multi_unique' title='Change Extension' image=\uE0B5 21 | cmd=if(cmd.invoked || (input('Nilesoft Shell', 'Type extension') and len(input.result)>0), 22 | io.rename(sel.path, path.join(sel.dir, sel.file.title + '.' + str.trim(input.result, "."))), msg('no input') & break ) invoke=1) 23 | separator() 24 | $svg_lcase=image.svg(' 25 | 26 | ') 27 | $svg_mcase=image.svg(' 28 | 29 | ') 30 | $svg_ucase=image.svg(' 31 | 32 | ') 33 | item(title='Lowercase' image=svg_lcase 34 | cmd=io.rename(sel.path, str.lower(sel.path)) invoke=1) 35 | item(title='Uppercase' image=svg_ucase 36 | cmd=io.rename(sel.path, str.upper(sel.path)) invoke=1) 37 | item(title='Mixed-Case' image=svg_mcase 38 | cmd=if(path.type(sel.path) == 3, io.rename(sel.path, str.capitalize(sel.path)), io.rename(sel.path, str.capitalize(path.removeextension(sel.path)) + str.lower(path.file.ext(sel.path)))) invoke=1) 39 | separator() 40 | item(title='Strip a Double Space' 41 | cmd=io.rename(sel.path, str.replace(sel, ' ', ' ')) invoke=1) 42 | item(title='Strip Double Spaces' 43 | cmd=for(x=0, x=0) /* while-infinite-loop */ { 46 | if(y==0, {tmp=path.name(sel[x])}) 47 | {tmp=str.replace(tmp, " ", " ")} 48 | if(str.find(tmp, ' ')>0, continue) /* while-condition */ 49 | io.rename(sel[x], tmp) 50 | break /* while-break-point */ } }) 51 | separator() 52 | $svg_dotsspaces=image.svg(' 53 | 54 | 55 | ') 56 | $svg_spacesdots=image.svg(' 57 | 58 | 59 | ') 60 | $svg_underscoresspaces=image.svg(' 61 | 62 | 63 | ') 64 | $svg_spacesunderscores=image.svg(' 65 | 66 | 67 | ') 68 | item(title='Dots to Spaces' image=svg_dotsspaces 69 | cmd=io.rename(sel.path, path.combine(path.location(sel.path), str.replace(path.title(sel.path), '.', ' ') + path.file.ext(sel.path))) invoke=1) 70 | item(title='Spaces to Dots' image=svg_spacesdots 71 | cmd=io.rename(sel.path, path.combine(path.location(sel.path), str.replace(path.title(sel.path), ' ', '.') + path.file.ext(sel.path))) invoke=1) 72 | item(title='Underscores to Spaces' image=svg_underscoresspaces 73 | cmd=io.rename(sel.path, path.combine(path.location(sel.path), str.replace(path.title(sel.path), '_', ' ') + path.file.ext(sel.path))) invoke=1) 74 | item(title='Spaces to Underscores' image=svg_spacesunderscores 75 | cmd=io.rename(sel.path, path.combine(path.location(sel.path), str.replace(path.title(sel.path), ' ', '_') + path.file.ext(sel.path))) invoke=1) 76 | separator() 77 | $svg_prefix=image.svg(' 78 | 79 | ') 80 | $svg_suffix=image.svg(' 81 | 82 | ') 83 | item(title='Add prefix...' image=svg_prefix 84 | cmd=if(cmd.invoked || (input('Nilesoft Shell', 'prefix...') and len(input.result)>0), io.rename(sel.path, path.combine(path.location(sel.path), input.result + sel.name)), msg('no input') & break) invoke=1) 85 | item(title='Add suffix...' image=svg_suffix 86 | cmd=if(cmd.invoked || (input('Nilesoft Shell', 'suffix...') and len(input.result)>0), io.rename(sel.path, path.combine(path.location(sel.path), path.title(sel.path) + input.result + path.file.ext(sel.path))), msg('no input') & break) invoke=1) 87 | /* those are not implemented yet, because I dont't itend to use them. If you want them, let me know. 88 | item(title='Remove number of characters from front') 89 | item(title='Remove number of characters from end') 90 | item(title='Remove all characters before...') 91 | item(title='Remove all characters after...') 92 | item(title='Replace... with...') */ 93 | separator() 94 | menu(mode='single' type='file' title='Media: mp3' where=sel.file.ext=='.mp3') { 95 | // Bonus: This is a simple example of how you can rename your music files based on their metadata. 96 | item(title=io.meta(sel,"System.Music.Artist") + ' - ' + io.meta(sel,"System.Title") + path.file.ext(sel.path) 97 | cmd=io.rename(sel.path, path.combine(path.location(sel.path), io.meta(sel,"System.Music.Artist") + ' - ' + io.meta(sel,"System.Title") + path.file.ext(sel.path))) invoke=0) 98 | item(title=io.meta(sel,"System.Music.AlbumTitle") + ' - ' + io.meta(sel,"System.Music.Artist") + ' - ' + io.meta(sel,"System.Title") + path.file.ext(sel.path) 99 | cmd=io.rename(sel.path, path.combine(path.location(sel.path), io.meta(sel,"System.Music.AlbumTitle") + ' - ' + io.meta(sel,"System.Music.Artist") + ' - ' + io.meta(sel,"System.Title") + path.file.ext(sel.path))) invoke=0) } 100 | } 101 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/dgVoodoo2.nss: -------------------------------------------------------------------------------- 1 | item(title='dgVoodoo2' image cmd='@sys.prog\dgVoodoo2\dgVoodooCpl.exe') -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/nss.about.nss: -------------------------------------------------------------------------------- 1 | menu(type="taskbar" vis=key.shift() or key.lbutton() pos=0 title=app.name image=\uE249) 2 | { 3 | item(title="manager" tip='Open Nilesoft Shell Manager' 4 | image 5 | admin cmd=app.exe) 6 | item(title="directory" tip='Open Nilesoft Shell directory' 7 | image=\uE0E8 8 | cmd=app.dir) 9 | item(title="config" tip='Open Nilesoft Shell main configuration file' 10 | image=\uE10A 11 | cmd=app.cfg) 12 | item(title="nss preview" tip='Show .nss file preview in Preview Pane in File Explorer for a better user experience' 13 | image=\uE142 14 | vis=if(reg.exists('HKEY_CLASSES_ROOT\.nss\shellex\{8895b1c6-b41f-4c1c-a562-0d564250836f}'), 'disable') 15 | // admin cmd=reg.set('HKEY_CLASSES_ROOT\.nss\shellex\{8895b1c6-b41f-4c1c-a562-0d564250836f}', '', '{1531d583-8375-4d3f-b5fb-d23bbd169f22}', reg.sz)) 16 | admin cmd args='/c reg.exe add "HKEY_CLASSES_ROOT\.nss\shellex\{8895b1c6-b41f-4c1c-a562-0d564250836f}" /ve /t REG_SZ /d "{1531d583-8375-4d3f-b5fb-d23bbd169f22}" /f' window=cmd.hidden) 17 | item(title="updates" tip='Check for updates. If a new version is available, a download link will be provided. Click or Ctrl+Click to open the link and get the latest version.' 18 | image=\uE1AB 19 | cmd-ps=`try { 20 | $response = Invoke-WebRequest -Uri 'https://nilesoft.org/download' -UseBasicParsing -TimeoutSec 5; 21 | if ($response.StatusCode -eq 200) { 22 | if ($response.Content -match 'Shell version ([\d\.]+)') { 23 | $newVer = $matches[1]; 24 | Write-Host "Latest available version: $($newVer)"; 25 | Write-Host "$([System.Environment]::NewLine)" 26 | if ([version]$newVer -gt [version]'@app.ver') { 27 | $arch = (Get-CimInstance Win32_OperatingSystem).OSArchitecture; 28 | $type = if ($arch -match '64-bit') {'x64'} elseif ($arch -match '32-bit') {'x86'} else {'arm64'}; 29 | Write-Host "Installation Options:" -ForegroundColor Cyan 30 | Write-Host "------------------------" -ForegroundColor DarkGray 31 | 32 | # Manual Install 33 | Write-Host "$([System.Environment]::NewLine)" 34 | Write-Host "Manual Install:" -ForegroundColor Green 35 | Write-Host "---------------------" -ForegroundColor DarkGray 36 | Write-Host "https://nilesoft.org/download/shell/$newVer/setup-$type.msi" -ForegroundColor Yellow 37 | 38 | # Package Managers 39 | Write-Host "$([System.Environment]::NewLine)" 40 | Write-Host "Package Managers:" -ForegroundColor Green 41 | Write-Host "---------------------" -ForegroundColor DarkGray 42 | Write-Host "Winget: winget install nilesoft.shell" -ForegroundColor Yellow 43 | Write-Host "Scoop: scoop install nilesoft-shell" -ForegroundColor Yellow 44 | Write-Host "Choco: choco install nilesoft-shell" -ForegroundColor Yellow 45 | } else { 46 | Write-Host "Nilesoft Shell framework is up to date" -ForegroundColor Cyan 47 | } 48 | } else { 49 | Write-Host "Unable to find version information on the website" 50 | } 51 | } else { 52 | Write-Host "Website returned error status: $($response.StatusCode)" 53 | } 54 | } catch { 55 | Write-Host "Error accessing website. Please check your internet connection or try again later." 56 | }; 57 | Write-Host "$([System.Environment]::NewLine)" 58 | Read-Host -Prompt '[Enter] to close'`) 59 | // Write-Host "Press any key to exit..." -NoNewline; 60 | // $null = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown');`) 61 | item(title="GitHub" tip='Open Nilesoft Shell GitHub page. Contributions and bug reports are welcome.' 62 | image=image.glyph(\uE22C, #4078C0) col=1 63 | cmd='https://github.com/moudey/Shell') 64 | $svg_discord='' 65 | item(title="Discord" tip='Join the Nilesoft Shell Discord server. It is the best place to get help and support.' 66 | image=image.svg(svg_discord) 67 | cmd='https://discord.com/channels/1106387012707168318/1106387015425069151') 68 | item(title="YouTube" tip='Subscribe to my YouTube channel.' 69 | image=image.glyph(\uE248, #FF0000) 70 | cmd='https://www.youtube.com/@"@"moudey') 71 | $svg_forum='' 72 | item(title="Reddit" tip='Follow Nilesoft Shell on Reddit.' 73 | image=image.glyph(\uE23D, #FF5700) 74 | cmd='https://www.reddit.com/r/nilesoft/') 75 | item(title="Forum" tip='The forum is no longer available. Please visit the archive.' 76 | image=image.svg(svg_forum) // vis='disable' 77 | cmd='https://web.archive.org/web/20240101000000*/https://nilesoft.org/forum/') 78 | item(title="version\t"+@app.ver vis=label col=1) 79 | item(title="docs" tip='If the site is not available, please visit the archive.' 80 | image=image.glyph(\uE1C4, #1E90FF) 81 | cmd-ps=`try { 82 | if ((Invoke-WebRequest -Uri "https://nilesoft.org/docs" -UseBasicParsing -ErrorAction Stop).StatusCode -eq 200) { 83 | Start-Process "https://nilesoft.org/docs" 84 | } else { 85 | throw 86 | } } catch { Start-Process 'https://web.archive.org/web/@"*"/https://nilesoft.org' }` 87 | window='hidden') 88 | item(title="snippets" tip='Check out the snippets gallery.' 89 | image=image.glyph(\uE26D, #00ff62) 90 | cmd='https://github.com/RubicBG/Nilesoft-Shell-Snippets') 91 | item(title="donate" tip='Make a donation to support the project.' 92 | image=image.glyph(\uE1A7, #FF9900) 93 | cmd='https://nilesoft.org/donate') 94 | item(title="mail me" tip='Send me an email.' 95 | image=image.glyph(\uE15F, #FF4500) 96 | cmd='mailto:support@"@"nilesoft.org?subject=Nilesoft Shell&body=Huge thanks for Nilesoft Shell') 97 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/nss.icons.win.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | menu(title='Win Icon Path Extractor' image='@sys.bin\imageres.dll, 7') { 5 | item(title='shell32.dll' keys=327 image='@sys.bin\shell32.dll, 3' where=path.exists('@sys.bin\shell32.dll') cmd=command.copy(icon.box('@sys.bin\shell32.dll'))) 6 | item(title='imageres.dll' keys=359 image='@sys.bin\imageres.dll, 9' where=path.exists('@sys.bin\imageres.dll') cmd=command.copy(icon.box('@sys.bin\imageres.dll'))) 7 | separator() 8 | item(title='Hardware Devices' keys=151 image='@sys.bin\ddores.dll' where=path.exists('@sys.bin\ddores.dll') cmd=command.copy(icon.box('@sys.bin\ddores.dll'))) 9 | item(title='Audio Devices' keys= 18 image='@sys.bin\mmres.dll' where=path.exists('@sys.bin\mmres.dll') cmd=command.copy(icon.box('@sys.bin\mmres.dll'))) 10 | item(title='Sensors' keys= 22 image='@sys.bin\sensorscpl.dll' where=path.exists('@sys.bin\sensorscpl.dll') cmd=command.copy(icon.box('@sys.bin\sensorscpl.dll'))) 11 | item(title='Setup Wizard' keys= 62 image='@sys.bin\setupapi.dll' where=path.exists('@sys.bin\setupapi.dll') cmd=command.copy(icon.box('@sys.bin\setupapi.dll'))) 12 | item(title='Multimedia' keys=159 image='@sys.bin\wmploc.dll' where=path.exists('@sys.bin\wmploc.dll') cmd=command.copy(icon.box('@sys.bin\wmploc.dll'))) 13 | item(title='Portable Devices' keys= 22 image='@sys.bin\wpdshext.dll' where=path.exists('@sys.bin\wpdshext.dll') cmd=command.copy(icon.box('@sys.bin\wpdshext.dll'))) 14 | item(title='Disk Management' keys= 18 image='@sys.bin\dmdskres.dll' where=path.exists('@sys.bin\dmdskres.dll') cmd=command.copy(icon.box('@sys.bin\dmdskres.dll'))) 15 | item(title='Imaging Hardware Devices' keys= 22 image='@sys.bin\wiashext.dll' where=path.exists('@sys.bin\wiashext.dll') cmd=command.copy(icon.box('@sys.bin\wiashext.dll'))) 16 | separator() 17 | item(title='Network' keys= 11 image='@sys.bin\netcenter.dll' where=path.exists('@sys.bin\netcenter.dll') cmd=command.copy(icon.box('@sys.bin\netcenter.dll'))) 18 | item(title='Network Hardware' keys=165 image='@sys.bin\netshell.dll' where=path.exists('@sys.bin\netshell.dll') cmd=command.copy(icon.box('@sys.bin\netshell.dll')) tip='Network Connections and Associated Hardware Icons') 19 | item(title='Network Related Settings' keys= 43 image='@sys.bin\pnidui.dll' where=path.exists('@sys.bin\pnidui.dll') cmd=command.copy(icon.box('@sys.bin\pnidui.dll'))) 20 | item(title='Network Services' keys= 35 image='@sys.bin\dsuiext.dll' where=path.exists('@sys.bin\dsuiext.dll') cmd=command.copy(icon.box('@sys.bin\dsuiext.dll'))) 21 | item(title='Internet Explorer' keys=102 image='@sys.bin\ieframe.dll' where=path.exists('@sys.bin\ieframe.dll') cmd=command.copy(icon.box('@sys.bin\ieframe.dll'))) 22 | item(title='Internet Shortcut Shell' keys= 6 image='@sys.bin\url.dll' where=path.exists('@sys.bin\url.dll') cmd=command.copy(icon.box('@sys.bin\url.dll'))) 23 | item(title='Remote Desktop Connections' keys= 14 image='@sys.bin\mstscax.dll' where=path.exists('@sys.bin\mstscax.dll') cmd=command.copy(icon.box('@sys.bin\mstscax.dll'))) 24 | separator() 25 | item(title='Accessibility Features' keys= 22 image='@sys.bin\accessibilitycpl.dll' where=path.exists('@sys.bin\accessibilitycpl.dll') cmd=command.copy(icon.box('@sys.bin\accessibilitycpl.dll'))) 26 | item(title='Actions' keys= 19 image='@sys.bin\comres.dll' where=path.exists('@sys.bin\comres.dll') cmd=command.copy(icon.box('@sys.bin\comres.dll'))) 27 | item(title='Action Center' keys= 1 image='@sys.bin\actioncentercpl.dll' where=path.exists('@sys.bin\actioncentercpl.dll') cmd=command.copy(icon.box('@sys.bin\actioncentercpl.dll'))) 28 | item(title='Access Control' keys= 6 image='@sys.bin\aclui.dll, 3' where=path.exists('@sys.bin\aclui.dll') cmd=command.copy(icon.box('@sys.bin\aclui.dll'))) 29 | item(title='Auto Play' keys= 1 image='@sys.bin\autoplay.dll' where=path.exists('@sys.bin\autoplay.dll') cmd=command.copy(icon.box('@sys.bin\autoplay.dll'))) 30 | item(title='Common Control library' keys= 4 image='@sys.bin\comctl32.dll, 1' where=path.exists('@sys.bin\comctl32.dll') cmd=command.copy(icon.box('@sys.bin\comctl32.dll'))) 31 | item(title='Install' keys= 1 image='@sys.bin\xwizards.dll' where=path.exists('@sys.bin\xwizards.dll') cmd=command.copy(icon.box('@sys.bin\xwizards.dll'))) 32 | separator() 33 | item(title='File Explorer' keys= 28 image='@sys.dir\explorer.exe' where=path.exists('@sys.dir\explorer.exe') cmd=command.copy(icon.box('@sys.dir\explorer.exe'))) 34 | item(title='Network Related Icons' keys= 20 image='@sys.bin\mstsc.exe' where=path.exists('@sys.bin\mstsc.exe') cmd=command.copy(icon.box('@sys.bin\mstsc.exe'))) 35 | separator() 36 | item(title='Windows 95/98' keys= 38 image='@sys.bin\pifmgr.dll' where=path.exists('@sys.bin\pifmgr.dll') cmd=command.copy(icon.box('@sys.bin\pifmgr.dll'))) 37 | item(title='Old Programming Language' keys=113 image='@sys.bin\moricons.dll' where=path.exists('@sys.bin\moricons.dll') cmd=command.copy(icon.box('@sys.bin\moricons.dll'))) 38 | item(title='Old Computer Management' keys=129 image='@sys.bin\mmcndmgr.dll' where=path.exists('@sys.bin\mmcndmgr.dll') cmd=command.copy(icon.box('@sys.bin\mmcndmgr.dll'))) 39 | item(title='Old Windows Hardware' keys=101 image='@sys.bin\compstui.dll, 1' where=path.exists('@sys.bin\compstui.dll') cmd=command.copy(icon.box('@sys.bin\compstui.dll'))) 40 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/Snippets/nss.paths.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | menu(title='Copy NS path' mode='single' image=icon.copy_path tip='Copy Nilesoft Shell path' 5 | vis=if(str.contains(sel.path, app.dir) or str.contains(sel.path, user.home) or str.contains(sel.path, sys.root) or str.contains(sel.raw, '::{031E4825-7B94-4DC3-B131-E946B44C8DD5}'), 'true', 'disabled')) { 6 | // https://nilesoft.org/docs/functions/app 7 | item(cmd=command.copy(this.title) where=str.contains(sel.path, app.directory) title='@@'+'app.directory'+str.sub(sel.path, len(app.directory))) 8 | item(cmd=command.copy(this.title) where=str.contains(sel.path, app.dir) title='@@'+'app.dir'+str.sub(sel.path, len(app.dir))) 9 | item(cmd=command.copy(this.title) where=str.contains(sel.path, app.exe) title='@@'+'app.exe'+str.sub(sel.path, len(app.exe))) 10 | item(cmd=command.copy(this.title) where=str.contains(sel.path, app.cfg) title='@@'+'app.cfg'+str.sub(sel.path, len(app.cfg))) 11 | item(cmd=command.copy(this.title) where=str.contains(sel.path, app.dll) title='@@'+'app.dll'+str.sub(sel.path, len(app.dll))) 12 | separator(where=str.contains(sel.path, app.dir)) 13 | // https://nilesoft.org/docs/functions/user 14 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.home) title='@@'+'user.home'+str.sub(sel.path, len(user.home))) 15 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.appdata) title='@@'+'user.appdata'+str.sub(sel.path, len(user.appdata))) 16 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.contacts) title='@@'+'user.contacts'+str.sub(sel.path, len(user.contacts))) 17 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.desktop) title='@@'+'user.desktop'+str.sub(sel.path, len(user.desktop))) 18 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.directory) title='@@'+'user.directory'+str.sub(sel.path, len(user.directory))) 19 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.dir) title='@@'+'user.dir'+str.sub(sel.path, len(user.dir))) 20 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.documents) title='@@'+'user.documents'+str.sub(sel.path, len(user.documents))) 21 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.downloads) title='@@'+'user.downloads'+str.sub(sel.path, len(user.downloads))) 22 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.favorites) title='@@'+'user.favorites'+str.sub(sel.path, len(user.favorites))) 23 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.localappdata) title='@@'+'user.localappdata'+str.sub(sel.path, len(user.localappdata))) 24 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.music) title='@@'+'user.music'+str.sub(sel.path, len(user.music))) 25 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.personal) title='@@'+'user.personal'+str.sub(sel.path, len(user.personal))) 26 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.pictures) title='@@'+'user.pictures'+str.sub(sel.path, len(user.pictures))) 27 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.profile) title='@@'+'user.profile'+str.sub(sel.path, len(user.profile))) 28 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.quicklaunch) title='@@'+'user.quicklaunch'+str.sub(sel.path, len(user.quicklaunch))) 29 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.sendto) title='@@'+'user.sendto'+str.sub(sel.path, len(user.sendto))) 30 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.startmenu) title='@@'+'user.startmenu'+str.sub(sel.path, len(user.startmenu))) 31 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.temp) title='@@'+'user.temp'+str.sub(sel.path, len(user.temp))) 32 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.templates) title='@@'+'user.templates'+str.sub(sel.path, len(user.templates))) 33 | item(cmd=command.copy(this.title) where=str.contains(sel.path, user.videos) title='@@'+'user.videos'+str.sub(sel.path, len(user.videos))) 34 | separator(where=str.contains(sel.path, user.home)) 35 | item(cmd=command.copy(this.title) where=str.contains(sel.raw, '::{031E4825-7B94-4DC3-B131-E946B44C8DD5}') title='@@'+'user.libraries'+str.sub(sel.raw, len('::{031E4825-7B94-4DC3-B131-E946B44C8DD5}'))) 36 | item(cmd=command.copy(this.title) where=str.contains(sel.raw, '::{031E4825-7B94-4DC3-B131-E946B44C8DD5}\Documents.library-ms') title='@@'+'user.documentslibrary'+str.sub(sel.raw, len('::{031E4825-7B94-4DC3-B131-E946B44C8DD5}\Documents.library-ms'))) 37 | separator(where=str.contains(sel.raw, '::{031E4825-7B94-4DC3-B131-E946B44C8DD5}')) 38 | // https://nilesoft.org/docs/functions/sys 39 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.appdata) title='@@'+'sys.appdata'+str.sub(sel.path, len(sys.appdata))) 40 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.bin) title='@@'+'sys.bin'+str.sub(sel.path, len(sys.bin))) 41 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.bin32) title='@@'+'sys.bin32'+str.sub(sel.path, len(sys.bin32))) 42 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.bin64) title='@@'+'sys.bin64'+str.sub(sel.path, len(sys.bin64))) 43 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.directory) title='@@'+'sys.directory'+str.sub(sel.path, len(sys.directory))) 44 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.dir) title='@@'+'sys.dir'+str.sub(sel.path, len(sys.dir))) 45 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.path) title='@@'+'sys.path'+str.sub(sel.path, len(sys.path))) 46 | // check if path contains sys.prog, not sys.prog32 47 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.prog) and !str.contains(sel.path, sys.prog32) title='@@'+'sys.prog'+str.sub(sel.path, len(sys.prog))) 48 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.prog32) title='@@'+'sys.prog32'+str.sub(sel.path, len(sys.prog32))) 49 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.programdata) title='@@'+'sys.programdata'+str.sub(sel.path, len(sys.programdata))) 50 | // remove extra backslash 51 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.root) title='@@'+str.trim('sys.root'+str.sub(sel.path, len(sys.root)), "\\")) 52 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.temp) title='@@'+'sys.temp'+str.sub(sel.path, len(sys.temp))) 53 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.templates) title='@@'+'sys.templates'+str.sub(sel.path, len(sys.templates))) 54 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.users) title='@@'+'sys.users'+str.sub(sel.path, len(sys.users))) 55 | item(cmd=command.copy(this.title) where=str.contains(sel.path, sys.wow) title='@@'+'sys.wow'+str.sub(sel.path, len(sys.wow))) 56 | } 57 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/all.security.env.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | // To-Do: make exceptions for system folders 4 | 5 | menu(image=icon.copy_path title='Environment Path' mode='single' type='dir|back.dir|drive|back.drive|desktop') { 6 | //+ https://learn.microsoft.com/en-us/windows/deployment/usmt/usmt-recognized-environment-variables 7 | item(title='ENV GUI' keys='SHIFT edit sys env' tip='Edit Environment Variables' image='@sys.bin\imageres.dll,156' sep='both' 8 | admin=keys.shift() cmd='rundll32.exe' args='sysdm.cpl,EditEnvironmentVariables') 9 | 10 | $reg_cu = reg.get('HKCU\Environment', 'PATH') 11 | $reg_lm = reg.get('HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment', 'PATH') 12 | // does not work for drives 13 | $is_in_path = str.contains(reg_cu, sel+';') or str.contains(reg_cu, sel+'\;') or str.end(reg_cu, sel) 14 | $add_to_path = str.replace('@reg_cu;@sel', ';;', ';').trimstart(';') 15 | $remove_from_path = str.replace(reg_cu, sel, '').replace('\;', ';').replace(';;', ';') 16 | 17 | /* need explorer restart to take effect 18 | item(title=if(is_in_path, 'Remove from ', 'Add to ')+"%PATH%" type='dir' 19 | admin cmd-line='/c @if(is_in_path, if(msg('Are you sure you want to remove this path?', 'NileSoft Shell', msg.yesno | msg.warning)==msg.idyes, 'setx PATH "@remove_from_path" & pause & exit'), 'setx PATH "@add_to_path" & pause & exit')') 20 | */ 21 | item(title=if(is_in_path, 'Remove path from ', 'Add path to ')+"%PATH%" type='dir|dir.back' image=if(is_in_path, \uE171, \uE172) 22 | admin cmd=if(is_in_path, if(msg('Are you sure you want to remove this path?', 'NileSoft Shell', msg.yesno | msg.warning)==msg.idyes, reg.set('HKCU\Environment', 'PATH', remove_from_path)), reg.set('HKCU\Environment', 'PATH', add_to_path))) 23 | 24 | separator() 25 | item(title='Check '+"%PATH%" keys='default' where=keys.shift() image=\uE187 cmd=msg(str.join(str.split('%path%', ';'), "\n"))) 26 | item(title='Check '+"%PATH%" keys='CU' where=keys.shift() image=\uE187 cmd=msg(str.join(str.split(reg_cu, ';'), "\n"))) 27 | item(title='Check '+"%PATH%" keys='LM' where=keys.shift() image=\uE187 cmd=msg(str.join(str.split(reg_lm, ';'), "\n"))) 28 | item(title='Check '+"%PATH%" keys='LM+CU' where=keys.shift() image=\uE187 cmd=msg(str.join(str.split(reg_lm, ';'), "\n") + "\n\n" + str.join(str.split(reg_cu, ';'), "\n"))) 29 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/all.terminal.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // Based on: Nilesoft Shell original snippet 3 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 4 | 5 | menu(type='*' where=(sel.count or wnd.is_taskbar or wnd.is_edit) and !str.end(sel.raw, '.library-ms') title=title.terminal image=icon.run_with_powershell vis=if(this.level!=1, 'disabled')) 6 | { 7 | $tip_run_admin=["\xE1A7 Press SHIFT key or right mouse button to run " + this.title + " as administrator", tip.warning, 1.0] 8 | $has_admin=key.shift() or key.rbutton() 9 | 10 | item(admin=has_admin tip=tip_run_admin title=title.command_prompt 11 | image cmd='cmd.exe' args='/k TITLE Command Prompt &ver& PUSHD "@sel.dir"') 12 | item(admin=has_admin tip=tip_run_admin title=title.command_prompt +' (Green-Black)' 13 | image cmd='cmd.exe' args='/k TITLE Command Prompt &color 20&ver& CLS & PUSHD "@sel.dir"') 14 | item(admin=has_admin tip=tip_run_admin title=title.command_prompt +' (Black-Blue)' 15 | image cmd='cmd.exe' args='/k TITLE Command Prompt &color 09&ver& CLS & PUSHD "@sel.dir"') 16 | separator() 17 | item(admin=has_admin tip=tip_run_admin title=title.windows_powershell 18 | image cmd-ps=`-noexit -command "Set-Location -LiteralPath '@sel.dir\.'"`) 19 | item(admin=has_admin tip=tip_run_admin title='Windows PowerShell 7' where=path.exists(path.combine(sys.prog, '\PowerShell\7\pwsh.exe')) 20 | image cmd=path.combine(sys.prog, '\PowerShell\7\pwsh.exe') args=`-noexit -command "Set-Location -LiteralPath '@sel.dir\.'"`) 21 | item(admin=has_admin tip=tip_run_admin title='Windows PowerShell 7 Preview' where=path.exists(path.combine(sys.prog, '\PowerShell\7-preview\pwsh.exe')) 22 | image cmd=path.combine(sys.prog, 'PowerShell\7-preview\pwsh.exe') args=`-noexit -command "Set-Location -LiteralPath '@sel.dir\.'"`) 23 | separator() 24 | 25 | $wt_escape_have=str.contains(sel.path, '[') or str.contains(sel.path, ']') 26 | item(admin=has_admin tip=tip_run_admin title=title.Windows_Terminal where=package.exists("Microsoft.WindowsTerminal_") 27 | image cmd='@package.path("Microsoft.WindowsTerminal_")\WindowsTerminal.exe' arg='-d "@sel.path\."' vis=if(wt_escape_have, 'disabled')) 28 | item(admin=has_admin tip=tip_run_admin title='Windows Terminal Preview' where=package.exists("Microsoft.WindowsTerminalPreview_") 29 | image cmd='@package.path("Microsoft.WindowsTerminalPreview_")\WindowsTerminal.exe' arg='-d "@sel.path\."' vis=if(wt_escape_have, 'disabled')) 30 | 31 | separator() 32 | $exe_wsl = path.combine(sys.bin, 'wsl.exe') 33 | $reg_wsl = 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss' 34 | $distro_names = null 35 | $distro_guids = null 36 | menu(title={ distro_guids = reg.keys(reg_wsl) } where=path.exists(exe_wsl) expanded='true') { 37 | item(admin=has_admin tip=tip_run_admin title=str.res(exe_wsl, 2) keys='default WSL shell' vis=if(len(distro_guids)==0, 'disabled') 38 | image cmd=exe_wsl args='--cd "@sel.dir"') 39 | item(admin=has_admin tip=tip_run_admin title=str.res(exe_wsl, 2) keys='clean bash shell' vis=if(len(distro_guids)==0, 'disabled') 40 | image cmd=exe_wsl args='--cd "@sel.dir" -e bash --noprofile --norc') 41 | } 42 | menu(title=for(i=0, i1 44 | image cmd=exe_wsl args='-d "@distro_guids[0]" --cd "@sel.dir"') 45 | item(title='Open in ' + distro_names[1] where=len(distro_guids)>1 46 | image cmd=exe_wsl args='-d "@distro_guids[1]" --cd "@sel.dir"') 47 | item(title='Open in ' + distro_names[2] where=len(distro_guids)>2 48 | image cmd=exe_wsl args='-d "@distro_guids[2]" --cd "@sel.dir"') 49 | item(title='Open in ' + distro_names[3] where=len(distro_guids)>3 50 | image cmd=exe_wsl args='-d "@distro_guids[3]" --cd "@sel.dir"') 51 | item(title='Open in ' + distro_names[4] where=len(distro_guids)>4 52 | image cmd=exe_wsl args='-d "@distro_guids[4]" --cd "@sel.dir"') 53 | item(title='Open in ' + distro_names[5] where=len(distro_guids)>5 54 | image cmd=exe_wsl args='-d "@distro_guids[5]" --cd "@sel.dir"') 55 | } 56 | 57 | separator() 58 | item(title='Git CMD' where=path.exists(path.combine(sys.prog, 'Git', 'git-cmd.exe')) 59 | image cmd=path.combine(sys.prog, 'Git', 'git-cmd.exe') args='--cd-to-home & title Git CMD') 60 | modify(find="Open Git Bash Here" title='Git Bash' menu='Terminal') 61 | modify(find="Open Git GUI Here" title='Git GUI' menu='Terminal') 62 | } 63 | 64 | modify(where=this.id==id.open_powershell_window_here pos='bottom' menu='Terminal' vis=keys.shift()) 65 | modify(where=this.name=='open linux shell here' image='wsl.exe' pos='bottom' menu='Terminal' vis=keys.shift()) 66 | remove(clsid='{9F156763-7844-4DC4-B2B1-901F640F5155}') // Open in Windows Terminal; Open in Terminal 67 | modify(where=this.name=='open in terminal' || this.name=='open in terminal preview' pos='bottom' menu='Terminal' vis=if(str.contains(sel.path, '[') or str.contains(sel.path, ']'), 'disabled') vis=keys.shift()) 68 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/app.WinRAR.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | // Hide default menu: NS can not recognize drag&drop paths, so use: 5 | remove(find='Winrar') 6 | //remove(clsid='{B41DB860-64E4-11D2-9906-E49FADC173CA}' where=!this.isuwp) 7 | 8 | // Executables and Paths 9 | $reg_winrar_exe = reg.get('HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\WinRAR.exe') // path.combine(sys.prog, 'WinRar', 'WinRar.exe') 10 | $reg_winrar_exe64 = reg.get('HKLM\Software\WinRAR', 'exe64') 11 | $cmd_winrar = eval(if(sys.type == 64, reg_winrar_exe64, reg_winrar_exe)) 12 | $cmd_winrar_path = eval(path.parent(cmd_winrar)) 13 | // Software Support Extension 14 | $cmd_winrar_sse = str.join(reg.values('HKLM\Software\WinRAR\Capabilities\FileAssociations'), '|') 15 | // Theme and Icons 16 | $path_winrar_theme = path.combine(sys.appdata, 'WinRAR\Themes', reg('HKCU\Software\WinRAR\Interface\Themes', 'ActivePath')) 17 | $img_winrar = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'rar.ico') , cmd_winrar) 18 | $img_winrar_extract = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'extract.png') , cmd_winrar) 19 | $img_winrar_add = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'add.png') , cmd_winrar) 20 | $img_winrar_delete = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'delete.png') , cmd_winrar) 21 | $img_winrar_sfx = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'sfx.png') , cmd_winrar) 22 | $img_winrar_sfx_logo= If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'sfxlogo.png') , cmd_winrar) 23 | $img_winrar_convert = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'convert.png') , cmd_winrar) 24 | $img_winrar_test = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'test.png') , cmd_winrar) 25 | $img_winrar_repair = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'repair.png') , cmd_winrar) 26 | $img_winrar_info = If(path.exists(path_winrar_theme), path.combine(path_winrar_theme, 'Toolbar', 'info.png') , cmd_winrar) 27 | 28 | menu(title='WinRAR' mode='multiple' type='file|drive|dir|back.drive|back.dir|Desktop' image=img_winrar vis=if(!path.exists(cmd_winrar_path), 'disable') tip=if(!path.exists(cmd_winrar_path), 'Requires WinRar to be installed')) 29 | { 30 | item(title='Extract to...' keys='with manager' sep='before' 31 | mode='multiple' type='file' find=cmd_winrar_sse image=image.res(img_winrar_extract) 32 | cmd=cmd_winrar args='x -iext -ver -imon1 @sel(true," -an=")' + ' "?\"') 33 | item(title='Extract to "@sel.path.title\"' 34 | mode='multiple' type='file' find=cmd_winrar_sse image=image.res(img_winrar_extract) 35 | cmd=cmd_winrar args='x -iext -ver -imon1 @sel(true," -an=")' + ' * "@sel.path.title \"') 36 | item(title='Extract to "@sel.path.title\" and Delete It' vis=keys.shift() 37 | mode='single' type='file' find=cmd_winrar_sse image=image.res(img_winrar_delete) commands { 38 | cmd=cmd_winrar args='x -iext -ver -imon1 @sel(true)' + ' * "@sel.path.title \"' wait = 1, 39 | cmd=if(msg('Are you sure you want to delete the archive file?', 'NileSoft Shell', msg.warning | msg.yesno)==msg.idyes, io.delete(sel)) wait = 1, 40 | cmd=command.refresh wait = 1, }) 41 | item(title='Extract each archive to separate folder' 42 | mode='multiple' type='file' where=sel.count>1 find=cmd_winrar_sse image=image(img_winrar_extract) 43 | cmd=cmd_winrar args='x -iext -ver -imon1 -ad1 @sel(true," -an=")' + ' * \') 44 | item(title='Extract Here' 45 | mode='multiple' type='file' find=cmd_winrar_sse sep=sep.after image=image.res(img_winrar_extract) 46 | cmd=cmd_winrar args='x -iext -ver -imon1 @sel(true," -an=")' + ' * \') 47 | 48 | // known issue: can not add archive to itself 49 | item(title='Add to...' keys='with manager' tip='Archive file(s) with WinRAR Manager...' 50 | mode='multiple' type='file|dir' image=image.res(img_winrar_add) sep='before' 51 | cmd=cmd_winrar args='a -ep1 -scul -r0 -iext -imon1 . @sel(true)') 52 | menu(title='Add to ...' mode='multiple' type='file|dir' image=image.res(img_winrar_add)) 53 | { 54 | $reg_Prof0 = reg('HKCU\Software\WinRAR\Profiles\0', 'Name') 55 | $reg_Prof1 = reg('HKCU\Software\WinRAR\Profiles\1', 'Name') 56 | $reg_Prof2 = reg('HKCU\Software\WinRAR\Profiles\2', 'Name') 57 | $reg_Prof3 = reg('HKCU\Software\WinRAR\Profiles\3', 'Name') 58 | $reg_Prof4 = reg('HKCU\Software\WinRAR\Profiles\4', 'Name') 59 | $reg_Prof5 = reg('HKCU\Software\WinRAR\Profiles\5', 'Name') 60 | $reg_Prof6 = reg('HKCU\Software\WinRAR\Profiles\6', 'Name') 61 | $reg_Prof7 = reg('HKCU\Software\WinRAR\Profiles\7', 'Name') 62 | $reg_Prof8 = reg('HKCU\Software\WinRAR\Profiles\8', 'Name') 63 | $reg_Prof9 = reg('HKCU\Software\WinRAR\Profiles\9', 'Name') 64 | item(title=reg_Prof0 where=str.len(reg_Prof0)>0 65 | cmd=cmd_winrar args='a -cp"@reg_Prof0" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 66 | item(title=reg_Prof1 where=str.len(reg_Prof1)>0 67 | cmd=cmd_winrar args='a -cp"@reg_Prof1" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 68 | item(title=reg_Prof2 where=str.len(reg_Prof2)>0 69 | cmd=cmd_winrar args='a -cp"@reg_Prof2" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 70 | item(title=reg_Prof3 where=str.len(reg_Prof3)>0 71 | cmd=cmd_winrar args='a -cp"@reg_Prof3" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 72 | item(title=reg_Prof4 where=str.len(reg_Prof4)>0 73 | cmd=cmd_winrar args='a -cp"@reg_Prof4" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 74 | item(title=reg_Prof5 where=str.len(reg_Prof5)>0 75 | cmd=cmd_winrar args='a -cp"@reg_Prof5" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 76 | item(title=reg_Prof6 where=str.len(reg_Prof6)>0 77 | cmd=cmd_winrar args='a -cp"@reg_Prof6" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 78 | item(title=reg_Prof7 where=str.len(reg_Prof7)>0 79 | cmd=cmd_winrar args='a -cp"@reg_Prof7" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 80 | item(title=reg_Prof8 where=str.len(reg_Prof8)>0 81 | cmd=cmd_winrar args='a -cp"@reg_Prof8" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 82 | item(title=reg_Prof9 where=str.len(reg_Prof9)>0 83 | cmd=cmd_winrar args='a -cp"@reg_Prof9" -ep1 -scul -r0 -iext -imon1 "@sel.title" @sel(true)') 84 | } 85 | 86 | item(title='Add to "@sel.title'+'.rar"' keys='SHIFT to .zip' tip='Press SHIFT key to add to "@sel.title'+'.zip"' 87 | mode='multiple' type='file|dir' image=image.res(img_winrar_add) 88 | cmd=cmd_winrar args='a -ep1 -scul -r0 -iext -imon1 "@sel.title@if(key.shift(),".zip",".rar")" @sel(true)') 89 | item(title='Add to "@sel.parent.name'+'.rar"' keys='SHIFT to .zip' tip='Press SHIFT key to add to "@sel.parent.name'+'.zip"' 90 | mode='multiple' type='file|dir' where=('@sel.file.title'!='@sel.parent.name') image=image.res(img_winrar_add) 91 | cmd=cmd_winrar args='a -ep1 -scul -r0 -iext -imon1 "@sel.parent.name@if(key.shift(),".zip",".rar")" @sel(true)') 92 | 93 | menu(title='Add to unique archives...' type='file|dir|back.dir' image=image.res(img_winrar_add) sep=sep.after) 94 | { 95 | item(title='Convert Folder to "@sel.path.title'+'.rar"' keys='SHIFT to .zip' tip='Press SHIFT key to add to "@sel.path'+'.zip"' 96 | mode='single' type='dir' where=len(path.files(sel.dir))>0 image=image.res(img_winrar_delete) 97 | cmd=cmd_winrar args='a -ep1 -scul -r0 -iext -imon1 -dr "@sel.path@if(key.shift(),".zip",".rar")" "@sel.path.title\*"') 98 | item(title='Move all to "@sel.title'+'.rar"' keys='SHIFT to .zip' tip='Press SHIFT key to add to "@sel.title'+'zip"' 99 | mode='single' type='back.dir' image=image.res(img_winrar_delete) 100 | cmd=cmd_winrar args='a -ep1 -scul -r0 -iext -imon1 -dr ".\@sel.title@if(key.shift(),".zip",".rar")" *') 101 | 102 | item(title='Create a SFX "@sel.title'+'.sfx.exe"' 103 | mode='multiple' type='file|dir' sep='before' image=image.res(img_winrar_sfx) 104 | cmd=cmd_winrar args='a -ep1 -scul -r0 -iext -imon1 -sfx "@sel.parent\@sel.title'+'.sfx.exe" @sel(true)') 105 | } 106 | 107 | item(title='Convert archive(s)...' 108 | mode='multiple' type='file' find=cmd_winrar_sse image=image.res(img_winrar_convert) 109 | cmd=cmd_winrar args='cv -iext -imon1 @sel(true," -an=")') 110 | item(title='Test archive(s)...' 111 | mode='multiple' type='file' find=cmd_winrar_sse image=image.res(img_winrar_test) 112 | cmd=cmd_winrar args='t -iext -idv -imon1 @sel(true," -an=")') 113 | item(title='Repair archive...' 114 | mode='single' type='file' find=cmd_winrar_sse sep=sep.after image=image.res(img_winrar_repair) 115 | cmd=cmd_winrar args='r -iext @sel.path(true)') 116 | 117 | // known issue: can not recognize sfx from exe 118 | item(title='Open with WinRAR...' 119 | mode='single' type='file' find=cmd_winrar_sse image=image.res(img_winrar) 120 | cmd=cmd_winrar args='-iext @sel.path(true)') 121 | item(title='Browse with WinRAR...' 122 | mode='single' type='drive|dir|back.drive|back.dir|Desktop' sep=sep.after image=image.res(img_winrar) 123 | cmd=cmd_winrar args='-iext @sel.path(true)') 124 | 125 | menu(title='WinRAR Help' mode='multiple' where=key.shift() sep=sep.top image=image.res(img_winrar_info)) 126 | { 127 | item(title='Documentation...' 128 | mode='multiple' image=image.res(img_winrar_info) 129 | cmd='@cmd_winrar_path\WinRAR.chm') 130 | item(title='Web support...' 131 | mode='multiple' image=image.res(img_winrar_info) 132 | cmd='https://www.win-rar.com/support.html') 133 | // If you have a license key, open rarreg.key with text editor and copy the license information to the following variables (it won't work with this example) 134 | $EULA_user = 'Shell' 135 | $EULA_license = 'Unlimited Company License' 136 | $EULA_key = '4ae132ea6ff589ae3e17@"\n"64122122503e17f4ed244955149fd14d9dcc0b423cb56ad4b5009d@"\n"a9cdf27113a976d04d0d60fce6cb5ffde62890079861be57638717@"\n"7131ced835ed65cc743d9777f2ea71a8e32c7e593cf66794343565@"\n"b41bcf56929486b8bcdac33d50ecf7739960d2d3ae1e72adee2b40@"\n"97b1f3ba9d57e81ea3224b06dadeef1f6c5f544a489986e6102d8e@"\n"f770005bb7cd8058d56fa5aa3fe4e828e196feb99c8fd48e6021aa@"\n"cb5350dbc77a49be7f004ffc705a52cc7f7195d26ca42546815861' 137 | // $EULA_full = 'RAR registration data' + "\n" + EULA_user + "\n" + EULA_license + "\n" + 'UID=' + EULA_key 138 | item(title='Registration' 139 | mode='multiple' admin=@key.shift() image=image.res(img_winrar_info) 140 | admin cmd-line='/c del "@cmd_winrar_path\rarreg.key" & (echo RAR registration data&& echo ' + EULA_user + '&& echo ' + EULA_license + '&& echo ' + str.replace(EULA_key, '@"\n"', '&& echo ') + ') > "@cmd_winrar_path\rarreg.key"' window='hidden') 141 | item(title='Istall Popcol Theme' 142 | image=icon.res(path.combine(sys.bin, 'shell32.dll'), 122) commands { 143 | cmd-ps=`$DownloadURL = 'https://www.rarlab.com/themes/POPCOL_96x96.theme.rar'; $TempRarPath = '@sys.temp\POPCOL_96x96.theme.rar'; Invoke-WebRequest -Uri $DownloadURL -OutFile $TempRarPath; Start-Process -FilePath '@cmd_winrar' -ArgumentList $TempRarPath;` window='hidden' wait='true', 144 | cmd=reg.set('HKCU\Software\WinRAR\Interface\Themes', 'ActivePath', 'POPCOL_96x96', reg.sz) wait='true', 145 | cmd-ps=`$TempRarPath = '@sys.temp\POPCOL_96x96.theme.rar'; Remove-Item -Path $TempRarPath -Force;` window='hidden' wait='true', }) 146 | item(title='update WinRAR ...' 147 | image=icon.res(path.combine(sys.bin, 'shell32.dll'), 122) 148 | cmd-ps='winget install --id=RARLab.WinRAR -e') 149 | } 150 | } 151 | 152 | // menu(title=menu_archiver mode='multiple' type='*' where=window.name=="static" image=[[\uE019],[\uE01A]] position=top) { item(title='Test' type='*' where=window.name=="static" tip=sel) } 153 | 154 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/bar.scroll.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 3 | 4 | $svg_triple_up = ' 5 | 6 | 7 | ' 8 | $svg_triple_down = ' 9 | 10 | 11 | ' 12 | $svg_triple_left = ' 13 | 14 | 15 | ' 16 | $svg_triple_right = ' 17 | 18 | 19 | ' 20 | 21 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Scroll Here' 22 | image=[[\uE170, image.color1],[\uE16E, image.color2]]) 23 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Top' 24 | image=image.svg(svg_triple_up().replace('@image.color1', '@image.color2').replace('@image.color3', '@image.color2'))) 25 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Page Up' 26 | image=image.svg(svg_triple_up().replace('@image.color3', '@image.color2'))) 27 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Scroll Up' 28 | image=image.svg(svg_triple_up().replace('@image.color2', '@image.color1').replace('@image.color3', '@image.color2'))) 29 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Bottom' 30 | image=image.svg(svg_triple_down().replace('@image.color1', '@image.color2').replace('@image.color3', '@image.color2'))) 31 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Page Down' 32 | image=image.svg(svg_triple_down().replace('@image.color3', '@image.color2'))) 33 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Scroll Down' 34 | image=image.svg(svg_triple_down().replace('@image.color2', '@image.color1').replace('@image.color3', '@image.color2'))) 35 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Left Edge' 36 | image=image.svg(svg_triple_left().replace('@image.color1', '@image.color2').replace('@image.color3', '@image.color2'))) 37 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Page Left' 38 | image=image.svg(svg_triple_left().replace('@image.color3', '@image.color2'))) 39 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Scroll Left' 40 | image=image.svg(svg_triple_left().replace('@image.color2', '@image.color1').replace('@image.color3', '@image.color2'))) 41 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Right Edge' 42 | image=image.svg(svg_triple_right().replace('@image.color1', '@image.color2').replace('@image.color3', '@image.color2'))) 43 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Page Right' 44 | image=image.svg(svg_triple_right().replace('@image.color3', '@image.color2'))) 45 | modify(type='*' where=wnd.parent.name=='DirectUIHWND' && this.title=='Scroll Right' 46 | image=image.svg(svg_triple_right().replace('@image.color2', '@image.color1').replace('@image.color3', '@image.color2'))) -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/develop.nss: -------------------------------------------------------------------------------- 1 | menu(mode="multiple" title='&Develop' image=\uE26E) 2 | { 3 | menu(mode="single" title='editors' image=\uE17A) 4 | { 5 | item(title='Visual Studio Code' image=[\uE272, #22A7F2] cmd='code' args='"@sel.path"') 6 | } 7 | 8 | menu(mode="multiple" title='dotnet' image=\uE143) 9 | { 10 | item(title='run' cmd-line='/K dotnet run' image=\uE149) 11 | item(title='watch' cmd-line='/K dotnet watch') 12 | item(title='clean' image=\uE0CE cmd-line='/K dotnet clean') 13 | separator 14 | item(title='build debug' cmd-line='/K dotnet build') 15 | item(title='build release' cmd-line='/K dotnet build -c release /p:DebugType=None') 16 | 17 | menu(mode="multiple" sep="both" title='publish' image=\ue11f) 18 | { 19 | $publish='dotnet publish -r win-x64 -c release --output publish /*/p:CopyOutputSymbolsToPublishDirectory=false*/' 20 | item(title='publish sinale file' sep="after" cmd-line='/K @publish --no-self-contained /p:PublishSingleFile=true') 21 | item(title='framework-dependent deployment' cmd-line='/K @publish') 22 | item(title='framework-dependent executable' cmd-line='/K @publish --self-contained false') 23 | item(title='self-contained deployment' cmd-line='/K @publish --self-contained true') 24 | item(title='single-file' cmd-line='/K @publish /p:PublishSingleFile=true /p:PublishTrimmed=false') 25 | item(title='single-file-trimmed' cmd-line='/K @publish /p:PublishSingleFile=true /p:PublishTrimmed=true') 26 | } 27 | 28 | item(title='ef migrations add InitialCreate' cmd-line='/K dotnet ef migrations add InitialCreate') 29 | item(title='ef database update' cmd-line='/K dotnet ef database update') 30 | separator 31 | item(title='help' image=\uE136 cmd-line='/k dotnet -h') 32 | item(title='version' cmd-line='/k dotnet --info') 33 | } 34 | 35 | 36 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/file-manage.nss: -------------------------------------------------------------------------------- 1 | menu(where=sel.count>0 type='file|dir|drive|namespace|back' mode="multiple" title='File Manage' image=\uE253 sep=before) 2 | { 3 | menu(title=title.copy_path image=icon.copy_path) 4 | { 5 | import 'Snippets/all.copy.path.all.nss' 6 | import 'Snippets/all.copy.path.env.nss' 7 | import 'Snippets/all.copy.path.ps.nss' 8 | import 'Snippets/all.copy.path.lnk.nss' 9 | import 'Snippets/nss.paths.nss' 10 | import 'Snippets/all.copy.list.cp.nss' 11 | } 12 | 13 | import 'all.security.env.nss' 14 | sep 15 | 16 | item(mode="single" type="file" title="Change extension" image=\uE0B5 cmd=if(input("Change extension", "Type extension"), 17 | io.rename(sel.path, path.join(sel.dir, sel.file.title + "." + input.result)))) 18 | 19 | menu(separator="after" image=\uE290 title=title.select) 20 | { 21 | item(title="All" image=icon.select_all cmd=command.select_all) 22 | item(title="Invert" image=icon.invert_selection cmd=command.invert_selection) 23 | item(title="None" image=icon.select_none cmd=command.select_none) 24 | } 25 | 26 | menu(type='file|dir|back.dir|drive' mode='single' title='Manage Ownership' image=[\uE194,#f00] ) 27 | { 28 | item(title='View Ownership' admin 29 | cmd args='/K powershell -NoExit Get-ACL \"@sel.path\"^| Format-List -Property Owner') 30 | item(title='Take Ownership' admin 31 | cmd args='/K takeown /f "@sel.path" @if(sel.type==1,null,"/r /d y") && icacls "@sel.path" /grant *S-1-5-32-544:F @if(sel.type==1,"/c /l","/t /c /l /q")') 32 | item(title='To Administrators' admin 33 | cmd args='/K icacls "@sel.path" /setowner "Administrators" @if(sel.type==1,"/c /l","/t /c /l /q")') 34 | item(title='To Everyone' admin 35 | cmd args='/K icacls "@sel.path" /setowner "Everyone" @if(sel.type==1,"/c /l","/t /c /l /q")') 36 | item(title='To Trusted Installer' admin 37 | cmd args='/K icacls "@sel.path" /setowner "NT Service\TrustedInstaller" @if(sel.type==1,"/c /l","/t /c /l /q")') 38 | item(title='Reset Permissions' admin 39 | cmd args='/K icacls "@sel.path" /reset & pause') 40 | } 41 | sep 42 | menu(title="Show/Hide" image=icon.show_hidden_files) 43 | { 44 | item(title="System files" image=inherit cmd='@command.togglehidden') 45 | item(title="File name extensions" image=icon.show_file_extensions cmd='@command.toggleext') 46 | } 47 | 48 | menu(type='file|dir|back.dir' mode="single" title='Attributes') 49 | { 50 | $atrr = io.attributes(sel.path) 51 | item(title='Hidden' checked=io.attribute.hidden(atrr) 52 | cmd args='/c ATTRIB @if(io.attribute.hidden(atrr),"-","+")H "@sel.path"' window=hidden) 53 | 54 | item(title='System' checked=io.attribute.system(atrr) 55 | cmd args='/c ATTRIB @if(io.attribute.system(atrr),"-","+")S "@sel.path"' window=hidden) 56 | 57 | item(title='Read-Only' checked=io.attribute.readonly(atrr) 58 | cmd args='/c ATTRIB @if(io.attribute.readonly(atrr),"-","+")R "@sel.path"' window=hidden) 59 | 60 | item(title='Archive' checked=io.attribute.archive(atrr) 61 | cmd args='/c ATTRIB @if(io.attribute.archive(atrr),"-","+")A "@sel.path"' window=hidden) 62 | separator 63 | item(title="Created" keys=io.dt.created(sel.path, 'y/m/d') cmd=io.dt.created(sel.path,2000,1,1) vis=label) 64 | item(title="Modified" keys=io.dt.modified(sel.path, 'y/m/d') cmd=io.dt.modified(sel.path,2000,1,1) vis=label) 65 | item(title="Accessed" keys=io.dt.accessed(sel.path, 'y/m/d') cmd=io.dt.accessed(sel.path,2000,1,1) vis=label) 66 | } 67 | 68 | menu(mode="single" type='file' find='.dll|.ocx' separator="before" title='Register Server' image=\uea86) 69 | { 70 | item(title='Register' admin cmd='regsvr32.exe' args='@sel.path.quote' invoke="multiple") 71 | item(title='Unregister' admin cmd='regsvr32.exe' args='/u @sel.path.quote' invoke="multiple") 72 | } 73 | 74 | menu(mode="single" type='back' expanded=true) 75 | { 76 | menu(separator="before" title='New Folder' image=icon.new_folder) 77 | { 78 | item(title='DateTime' cmd=io.dir.create(sys.datetime("ymdHMSs"))) 79 | item(title='Guid' cmd=io.dir.create(str.guid)) 80 | } 81 | 82 | menu(title='New File' image=icon.new_file) 83 | { 84 | $dt = sys.datetime("ymdHMSs") 85 | item(title='TXT' cmd=io.file.create('@(dt).txt', 'Hello World!')) 86 | item(title='XML' cmd=io.file.create('@(dt).xml', 'Hello World!')) 87 | item(title='JSON' cmd=io.file.create('@(dt).json', '[]')) 88 | item(title='HTML' cmd=io.file.create('@(dt).html', "\n\t\n\t\n\tHello World!\n\t\n")) 89 | } 90 | } 91 | 92 | 93 | item(where=!wnd.is_desktop title=title.folder_options image=icon.folder_options cmd=command.folder_options) 94 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/goto.v2.nss: -------------------------------------------------------------------------------- 1 | // Author: Rubic / RubicBG 2 | // Based on: Nilesoft Shell original snippet 3 | // https://github.com/RubicBG/Nilesoft-Shell-Snippets/ 4 | 5 | menu(type='*' where=window.is_taskbar||sel.count mode=mode.multiple title=title.go_to image=\uE14A) 6 | { 7 | menu(title='Folder' image=\uE1F4) 8 | { 9 | item(image=inherit title='Windows' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(sys.dir), sys.dir)) 10 | item(image=inherit title='System' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(sys.bin), sys.bin)) 11 | item(image=inherit title='Program Files' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(sys.prog), sys.prog)) 12 | item(image=inherit title='Program Files x86' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(sys.prog32), sys.prog32)) 13 | item(image=inherit title='ProgramData' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(sys.programdata), sys.programdata)) 14 | item(image=inherit title='Applications' cmd='shell:appsfolder') 15 | item(image=inherit title='Users' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(sys.users), sys.users)) 16 | separator 17 | //item(title='@user.name@@@sys.name' vis=label) 18 | item(image=inherit title='Desktop' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(user.desktop), user.desktop)) 19 | item(image=inherit title='Downloads' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(user.downloads), user.downloads)) 20 | item(image=inherit title='Pictures' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(user.pictures), user.pictures)) 21 | item(image=inherit title='Documents' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(user.documents), user.documents)) 22 | item(image=inherit title='Startmenu' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(user.startmenu), user.startmenu)) 23 | item(image=inherit title='Profile' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(user.dir), user.dir)) 24 | item(image=inherit title='AppData' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(user.appdata), user.appdata)) 25 | item(image=inherit title='Temp' cmd=if(window.name=='CabinetWClass' and !keys.shift(), command.navigate(user.temp), user.temp)) 26 | } 27 | item(image=\uE0F3 title=title.control_panel cmd='shell:::{5399E694-6CE5-4D6C-8FCE-1D8870FDCBA0}') 28 | item(image=\uE0F3 title='All Control Panel Items' cmd='shell:::{ED7BA470-8E54-465E-825C-99712043E01C}') 29 | item(image=\uE14B title=title.run cmd='shell:::{2559a1f3-21d7-11d4-bdaf-00c04f60b9f0}') 30 | menu(image=\uE0F3 where=sys.ver.major >= 10 title=title.settings sep=sep.before) 31 | { 32 | // https://docs.microsoft.com/en-us/windows/uwp/launch-resume/launch-settings-app 33 | item(image=inherit title='system' cmd='ms-settings:') 34 | item(image=inherit title='about' cmd='ms-settings:about') 35 | item(image=inherit title='your-info' cmd='ms-settings:yourinfo') 36 | item(image=inherit title='system-info' cmd-line='/K systeminfo') 37 | item(image=inherit title='search' cmd='search-ms:') 38 | item(image=inherit title='usb' cmd='ms-settings:usb') 39 | item(image=inherit title='windows-update' cmd='ms-settings:windowsupdate') 40 | item(image=inherit title='windows-defender' cmd='ms-settings:windowsdefender') 41 | menu(image=inherit title='apps') 42 | { 43 | item(image=inherit title='apps-features' cmd='ms-settings:appsfeatures') 44 | item(image=inherit title='default-apps' cmd='ms-settings:defaultapps') 45 | item(image=inherit title='optional-features' cmd='ms-settings:optionalfeatures') 46 | item(image=inherit title='startup' cmd='ms-settings:startupapps') 47 | } 48 | menu(image=inherit title='personalization') 49 | { 50 | item(image=inherit title='personalization' cmd='ms-settings:personalization') 51 | item(image=inherit title='lockscreen' cmd='ms-settings:lockscreen') 52 | item(image=inherit title='background' cmd='ms-settings:personalization-background') 53 | item(image=inherit title='colors' cmd='ms-settings:colors') 54 | item(image=inherit title='themes' cmd='ms-settings:themes') 55 | item(image=inherit title='start' cmd='ms-settings:personalization-start') 56 | item(image=inherit title='taskbar' cmd='ms-settings:taskbar') 57 | } 58 | menu(image=inherit title='network') 59 | { 60 | item(image=inherit title='status' cmd='ms-settings:network-status') 61 | item(image=inherit title='ethernet' cmd='ms-settings:network-ethernet') 62 | item(image=inherit title='connections' cmd='shell:::{7007ACC7-3202-11D1-AAD2-00805FC1270E}') 63 | } 64 | } 65 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/media.nss: -------------------------------------------------------------------------------- 1 | menu(mode="multiple" title="Media" type='file|dir|back.dir|drive|back.drive|desktop' image=\uE151) 2 | { 3 | menu(mode="multiple" title='MPC-HC' menu='Media' image='C:\Program Files (x86)\K-Lite Codec Pack\MPC-HC64\mpc-hc64.exe') 4 | { 5 | modify(find="Play with MPC-HC" menu= "Media/MPC-HC") 6 | modify(find="Add to MPC-HC playlist" menu= "Media/MPC-HC") 7 | } 8 | 9 | menu(mode="multiple" title='MusicBee' menu='Media' image='C:\Program Files (x86)\MusicBee\MusicBee.exe') 10 | { 11 | modify(where=str.equals(this.name, ["Play with MusicBee", "Queue Next in MusicBee", "Queue Last in MusicBee"]) 12 | image= 'C:\Program Files (x86)\MusicBee\MusicBee.exe' menu= "Media/Musicbee") 13 | 14 | } 15 | 16 | menu(mode="multiple" title='XnViewMP' menu='Media' image='@sys.prog\XnViewMP\xnviewmp.exe') 17 | { 18 | modify(find="Browse with XnViewMP" menu='Media/XnviewMP') 19 | } 20 | 21 | modify(find="MediaInfo" menu='Media') 22 | modify(find="Edit with Paint" menu='Media') 23 | modify(find="Edit with Photos" menu='Media') 24 | } 25 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/modify.nss: -------------------------------------------------------------------------------- 1 | // modify items 2 | // Remove items by identifiers 3 | 4 | modify(mode=mode.multiple 5 | where=this.id(id.restore_previous_versions,id.cast_to_device) 6 | vis=vis.remove) 7 | 8 | modify(type="recyclebin" where=window.is_desktop and this.id==id.empty_recycle_bin pos=1 sep) 9 | modify(type="back" find="shortcut" in="/new" vis=vis.remove) 10 | 11 | modify(find="unpin" pos="bottom" menu="Pin/Unpin") 12 | modify(find="pin" pos="top" menu="Pin/Unpin") 13 | 14 | modify(where=this.id==id.copy_as_path menu="file manage") 15 | modify(type="dir.back|drive.back" where=this.id==id.customize_this_folder pos=1 sep="top" menu="file manage") 16 | 17 | modify(where=str.equals(this.name, ["open in terminal", "open linux shell here"]) || this.id==id.open_powershell_window_here 18 | pos="bottom" menu="Terminal") 19 | 20 | modify(find="open with visual studio" pos=1 menu="develop/editors") 21 | modify(find="Open with HxD" image='@sys.prog\HxD\HxD.exe' menu="develop/editors" ) 22 | 23 | modify(find="Winmerge" image='C:\Program Files\WinMerge\WinMergeU.exe') 24 | modify(find="Start with SpecialK" menu="Environment") 25 | 26 | 27 | //Move and organize 28 | //modify(mode=mode.multiple find="scan with" menu=title.more_options) 29 | 30 | modify(mode=mode.multiple 31 | where=this.id( 32 | id.send_to, 33 | id.share, 34 | id.create_shortcut, 35 | id.set_as_desktop_background, 36 | id.rotate_left, 37 | id.rotate_right, 38 | id.map_network_drive, 39 | id.disconnect_network_drive, 40 | id.format, 41 | id.eject, 42 | id.give_access_to, 43 | id.include_in_library, 44 | id.print 45 | ) 46 | pos=1 menu=title.more_options) 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/notepad.nss: -------------------------------------------------------------------------------- 1 | //> https://npp-user-manual.org/docs/command-prompt/ 2 | 3 | // hide already existed menus (version > 1.8.1) 4 | // modify(find='Edit with Notepad++' vis=vis.remove) 5 | 6 | // move already existed menus in 'Develop/editors' 7 | // modify(find='Edit with Notepad++' menu='Develop/editors') 8 | 9 | // remove already existed menus (in shell.nss, thanks to moudey) (version >= 1.8.33) 10 | remove(clsid='{E6950302-61F0-4FEB-97DB-855E30D4A991}' where=this.isuwp) 11 | remove(clsid='{B298D29A-A6ED-11DE-BA8C-A68E55D89593}' where=!this.isuwp) 12 | 13 | // add new command 14 | $path_npp='@sys.prog\Notepad++\Notepad++.exe' 15 | item(title='Edit with Notepad++' mode='multiple' type='file' menu='Develop/editors' 16 | image=path_npp tip='Press SHIFT key to open selected file(s) without previous session' 17 | cmd=path_npp args='@sel(true) @if(key.shift(), '-nosession', '')') -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/taskbar.nss: -------------------------------------------------------------------------------- 1 | menu(title='ExplorerPatcher' type='taskbar' image=icon.settings(auto, color.red)) { 2 | $is_ep=path.exists(path.combine(sys.prog ,'ExplorerPatcher')) 3 | menu(expanded=true where=is_ep image=inherit) { 4 | item(title='Settings' image=inherit cmd='rundll32.exe' args='@sys.dir\dxgi.dll,ZZGUI') 5 | item(title='Settings' image=inherit cmd='rundll32.exe' args='"@sys.prog\ExplorerPatcher\ep_gui.dll",ZZGUI' where=keys.shift()) 6 | item(title='Restart Explorer' image=image.glyph(\uE025) cmd='rundll32.exe' args='@sys.dir\dxgi.dll,ZZRestartExplorer') } 7 | item(title='ExplorerPatcher' image=icon.res(path.combine(sys.bin, 'shell32.dll'), 122) sep='before' 8 | where=(key.shift() or not(is_ep)) 9 | cmd='powershell.exe' args='winget install --id=valinet.ExplorerPatcher -e') 10 | item(title='ExplorerPatcher Pre-Release' image=icon.res(path.combine(sys.bin, 'shell32.dll'), 122) 11 | where=(key.shift() or not(is_ep)) 12 | cmd='powershell.exe' args='winget install --id=valinet.ExplorerPatcher.Prerelease -e') 13 | } 14 | menu(where=@(this.count == 0) type='taskbar' image=icon.settings expanded=true) 15 | { 16 | import 'snippets/nss.about.nss' 17 | 18 | menu(title="Apps" image=\uE254) 19 | { 20 | item(title='Paint' image=\uE116 cmd='mspaint') 21 | item(title='Opera' image cmd='C:\Users\gex581990\AppData\Local\Programs\Opera GX\opera.exe') 22 | item(title='Calculator' image=\ue1e7 cmd='calc.exe') 23 | item(title=str.res('regedit.exe,-16') image cmd='regedit.exe') 24 | } 25 | menu(title=title.windows image=\uE1FB) 26 | { 27 | item(title=title.cascade_windows cmd=command.cascade_windows) 28 | item(title=title.Show_windows_stacked cmd=command.Show_windows_stacked) 29 | item(title=title.Show_windows_side_by_side cmd=command.Show_windows_side_by_side) 30 | sep 31 | item(title=title.minimize_all_windows cmd=command.minimize_all_windows) 32 | item(title=title.restore_all_windows cmd=command.restore_all_windows) 33 | } 34 | item(title=title.desktop image=icon.desktop cmd=command.toggle_desktop) 35 | item(title=title.settings image=icon.settings(auto, image.color1) cmd='ms-settings:') 36 | item(title=title.task_manager sep=both image=icon.task_manager cmd='taskmgr.exe') 37 | import 'snippets/all.power.nss' 38 | sep 39 | item(title=title.taskbar_Settings image=inherit cmd='ms-settings:taskbar') 40 | item(vis=key.shift() title=title.exit_explorer cmd=command.restart_explorer) 41 | 42 | 43 | } 44 | 45 | $reg_taskbarsize = 'HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced' 46 | item(title='Unlock Taskbar' type='taskbar' where=reg.get(reg_taskbarsize, 'TaskbarSizeMove')!=1 image=\uE19B cmd=reg.set(reg_taskbarsize, 'TaskbarSizeMove', 1, reg.dword)) 47 | item(title='Lock Taskbar' type='taskbar' where=reg.get(reg_taskbarsize, 'TaskbarSizeMove')==1 image=\uE19A cmd=reg.set(reg_taskbarsize, 'TaskbarSizeMove', 0, reg.dword)) -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/theme.nss: -------------------------------------------------------------------------------- 1 |  theme { 2 | background { 3 | opacity=60 4 | effect=1 5 | gradient 6 | { 7 | enabled = true 8 | linear = [0, 100, 0, 0] 9 | stop = [ 10 | [0.0, #000000, 90], 11 | [0.5, #340000, 90], 12 | [1.0, #000000, 90] 13 | ] 14 | } 15 | 16 | } 17 | item{ 18 | 19 | opacity = 100 20 | prefix = 1 21 | text 22 | { 23 | normal = #cccccc 24 | select = #9cdcfe 25 | normal-disabled = #b1b1b1 26 | select-disabled = #000000 27 | } 28 | back 29 | { 30 | normal-disabled = #000000 31 | select = #190436 32 | select-disabled = #b1b1b1 33 | } 34 | } 35 | border{ 36 | enabled = true 37 | size = 1 38 | color = #ad0c1b 39 | opacity = 100 40 | radius = 2 41 | } 42 | shadow{ 43 | enabled = true 44 | size = 5 45 | opacity = 5 46 | color = #60060f 47 | } 48 | separator{ 49 | size = 0 50 | color = #050532 51 | } 52 | symbol{ 53 | normal = #ff6400 54 | select = #ff6400 55 | normal-disabled = #b1b1b1 56 | select-disabled = #b1b1b1 57 | } 58 | 59 | image.color=[color.accent, #ff6400] 60 | border{ 61 | enabled = 1 62 | size = 1 63 | color = color.accent 64 | opacity = 50 65 | } 66 | } 67 | 68 | 69 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/imports/tools.nss: -------------------------------------------------------------------------------- 1 | menu(title='Tools' mode="multiple" image=\uE0F6) 2 | { 3 | import 'Snippets\commands.renamer.nss' 4 | import 'Snippets\nss.icons.win.nss' 5 | menu(type='*' title='Segoe Icons' image=icon.search) 6 | { 7 | import 'Snippets\nss.icons.segoe.nss' 8 | } 9 | import 'app.FolderPainter1.nss' 10 | modify(find="File Converter" menu='Tools') 11 | import 'Powertoys.nss' 12 | } -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Nilesoft Shell Config/shell.nss: -------------------------------------------------------------------------------- 1 | settings 2 | { 3 | priority=1 4 | exclude.where = !process.is_explorer 5 | showdelay = 200 6 | // Options to allow modification of system items 7 | modify.remove.duplicate=1 8 | tip.enabled=true 9 | } 10 | 11 | import 'imports/theme.nss' 12 | import 'imports/images.nss' 13 | 14 | import 'imports/modify.nss' 15 | import 'imports/bar.scroll.nss' 16 | import 'imports/app.WinRAR.nss' 17 | import 'imports/file-manage.nss' 18 | 19 | menu(mode="multiple" title="Pin/Unpin" image=icon.pin) 20 | { 21 | } 22 | 23 | import 'imports/all.terminal.nss' 24 | import 'imports/develop.nss' 25 | import 'imports/notepad.nss' 26 | import 'imports/media.nss' 27 | import 'imports/Environment.nss' 28 | import 'imports/goto.v2.nss' 29 | import 'imports/taskbar.nss' 30 | import 'imports/tools.nss' 31 | import 'imports/snippets/all.keyboard.shortcuts.nss' 32 | 33 | menu(mode="multiple" title=title.more_options image=icon.more_options) 34 | { 35 | } 36 | 37 | 38 | -------------------------------------------------------------------------------- /Optional_Changing OS Appearance/Winpaletter Theme/theme.wpth: -------------------------------------------------------------------------------- 1 | 7V1tb9tIkv6+wP4HQcACd0BkkNT7fPNLPPGt7fgsJ97DeCC0qJbNC0XqSCq2ZzD//Z4qspvvEnU3sxlnudhoEnaxurq6qrqqutn161//0ul0L7yV3/2h8yv9A/883mw+yyB0fA8Pu+aRcTQ96nffJa13T3Itr8VaUuPpNgikF3Wu/KXUEGcytANnEyUI9PP3Lxs/iG5lyChuhP0FKFbCDaXCfenY0gsZs36LgfP06LbjbfTkB0TIo3wZTszp1Ci0zXzbEe6VXDri0vGow66GOPVdPzDpkfGuYxrWu45lDPKtFrWaFpqm+L9uuxFRJANij6lIx6CdR08uz/1gfu94Jr0ZBVs9tGI79bur3djdPtnz/nj365+dMBK7Qf5xk7TTvP/GwyTJ4OlAixKW955YuHJZwHWCyWX24nn3xKWpVow6tjHHkW4E6ycmOG+mMzeTtu8tRfCqgUxz/K4DyL6p0dzJIHKyMGgeMiINcuaETJtGM8Ekxn9KMDmCR8AV/0nhRPCFhTw/a7f+1lue+oEHfcFQc8J87DlrQUpALTTVGUZCQpb+c8hSspuTit+G4h+PZn7hLeULyUj3FsyvaGO5hjwz31LeZt5m2baGgLCG9KcKS39HDwNqG+FVcKuygyEBTLjdrMQ+IoB4ZqsBSIq7Zn8E8vpQ0aGlaQQDaTrml87jUwSoPOc3m/rGu0B44UbAbNmveDGrg3dO5MqFCObHduR8ZTOU5a5uvvCEBqDBv+sM0vHNIhFEV9LbAgtJOg3BsiB5OTZBk9zXGOCjpxArQVHTmQcS4RfQBnTa5lx4diBFKO9OCoPKcePuZH7ibunFghDCCGyFO4teXRnOa0Qxj4lM/7njxqb/h4eH+4vrs4/3s4eHQIb+NrBl+PAQERD+eywDP/49Wochd6Jnj6VwZhMksefaD9bCjdVUjX3m/CKLEPRM4/j4VQaBs5T8Wkn5VCu9ohsrFJDUpJkCWoqyjArtVUDMedG6ZV5vNfCfpoHkAWzX0INUgPLalaj+N1XBamH83lWQlKiZCrZrYLsG/qFrYLUofucKyKHEbgVknwZqmldA5xd2b+N1m7ycARw1cwqPcFwIo7KQJ8IVnk3r/niillTGr/H0Y59qkiIpxAxjCtXgUZnjiXYHSn7yDVxy30vcinBODv5jQO46eu6WuyiAp75btrOMA5FznmpY+J0LDnnnu+WGpzQ7+cR70yQxmXDckTr0WdDjFaLrR9d/bgbOr6ZipaWqEmUKN+gr8csCkqucgZlWwfzoijC8lStXIgzwvQsvQtbCiciZ0Rqi5bFOZqq5952LjMo7/B/EZgSBMYcIJxGyaq0/djdPlMdozvZ6Cr5z1nM+ZzfftcwqoecHuYAvzlvkAj4GQsB3ufVE/HtQwFenHzX0fsez1Kd4sDxDuRHH6TZiueM9AjybvojbfgzE0onzDtnGD0iUnPpeFIiwnC/hbMaJHywlpQm65gQrsPpJdY2hOFfBQENKyRCkZaSZUQRV937wBQkWXuK75hg5OfWjUeUX43x+8GQbRb537FKCVUTyPEFUBXT2ZfYkkEcjcs6cNUb+mnbBaNTb1oDoTH4KMB8cN0kide+fnCgNEGNKVIYJSRykqtRPAUdKh0mJQ/VTgLqTL5wOyo9FTVicdEr5O6GsnAE3x+qnBk8BqxSUBrdMArfIPg7SVZVYono1CZf60ZQlo1dAeQ588CNkluwvkDVeI4nRNLxirlxRk4qQNaD1fUAcy2TtFJym2pxSytYg0s1UiHJgirI802jLor4lTq8StdaQcPNPJsNJ6TlurRQLaj3hTBtc2iq5IYDqzmd24LtunKbrWga9nPxohvPYq99Oyc5PQ/z8PEg2XUxCqX403hioGnFGxOlVi+jKZFxpPHtAsH3xJfI3xLR4IjJm+9J/9L1PF6bxguY99ivJyR/bwavr2Kkd+OgxFiDImbsEnNtS4Iu1eKQAIgd67V/69hdMgJS0McNtZSKbeOpJnl/7FNwdtnyegLawe0RP8oKZpFpzpNEzZOwrvETSz9AWnFHNvXLtO7wPVn44T8jTWWAGrUZfxRO1tqfcmr2GkVxfnGEweszJnM7jp2U+NvBeWzZ2uvvY2MTJKc436YG2xnnhmz35z1d+ID/y5mtl3lu47kZseJ3fo6ozF9l1wjg/9114BnPsbLIqhJfYPYSwZN0Lbqj0FO/lAhsFqlv8VbmQzvrROPrvzWNqwRQQb0mgA1OLo37/7nVDmq+T8bphzuSGRG5M5K3vR0ppT7FX8SlEQuDhQW8UPzzcOHa0xc5FhrwyLSW86P2nn5USVXYPRQ++CheAI4P+twt49rRdIY4EbGFzRmO+8z05v2+yPcPjBqYuDVezuTn/P+BdTewM/xjqf13yvzJmoEheg9T1tySvQWLvG5LXZFH6huQ1sPXfkLqGAf03pLCJkc+RVzZVCKvORITw+tYXFPk9PFw5cDVDfxVlVF1F4rwbbGN7fKnVVBu2Q5Qcp3tCnw827FsqVBiWc1dmSL9SPJl7CNocl1YmbVt4V/eHTl/b9Ljb+XEQcGiX9I2DSeDLeeCvk2UmixaNavFRI6WDTIRBLSaqPzw/dQLblRUNN4GzVmdK+ADFGY59ZI4A4N0sCO/f1jerWK3AggISBZUs84NktShAVfmDVSAfEXgnmcgjHOsgi81nuvJnanhsOdcBuPIgPLbdIIpyjC/jCpQwKbCCP1iCqxliniwGqhvkpY/UB0JVnl5yk3icA+wWmHw0aKBPsaHzEjCPuCmwGlR5bkt4FWh5gkugNSyohmvEBUTwzIQ+ReJ0GgixcEZDcpgByzxoCKvGtYcFwKog93AAkE0YoMDqxh/nYubpwbSCoUjaq11okko2ZurMTFaH4oZsv2oLIX3t42oVyugfYIqyZ8W2/6K2WDHjY3UAUCZvs0lmBDDf0u7l8g+gr2T1dgGo6S4LRhaNgioLRRaqRiBKINlJ+f/bPdproJNt46yu5A2RIh+DbI2fXmZy9oQssGJTeZZLoDVTXQ1XN985aFiK1vhlzlenlujPaPxOtiHtoLZmD6fSa3ShNXsQECPn2OYUvvX5KLBpzV4+5vxzm70P0qVtldbstWYv72HyGtDIz2nNXmv24m+w3k6oe+XzBzat2WvNXmv2ysnI5sa/9fbekrd3TfuqrdFrjV5r9Fqjl8tdfMfbGu/vW6MXX2bQ5vUyNzs093HaALcNcN9agHv9ftaaveQOl9bstWavcDSnufFvA9w3FeDez9633l7r7dGmW+4er+YK33p7rbf31ry9T+0ebuvr0eWZrdFr83r/Knm9G/7Stt3NaHczWqvXWr1/Fat3jQ9y2wj3D4tw89/T5Q1LxQd3eQD1uQHmp/0qo/0qI/3+sWiclKDs+S5FbcpCngpH64oId6Y33vAnacmt+a2T1zp5eVO7U+Bz2tHm89p83lvL5904dIlUa/Vaq9davTa0zS1nyies+zTnDTt78SXYreH7w4Lb3ReqcHjb3j2w85YWFbjticjI51Sge2I8AmVntgHK5k5ve2qlFDL/iS9euTiRYt3avdbutTu4tImd83e0faxzeHLQrd17S3bvFHcI0mV8baDbBrptoNvavaIp3+nvvqVAl/bCkiK2VzIKHDs8RzGMjOnrVt8X2I1LGtw7S77+XV+6fir4iu0PMikdgRLB8XZbN2lRb6QNF6hqO6PrOblwx1hdLNil56hvHDm4B76qnW/nV/2YuiARPVadpE9vxBLXvuaJVleKduPqBJpmFNVNaI4bNLb0+bp+nDPVpl5LR5oUC+ABU8nOHzoDXZRp9iRdN9OSXvvKLTMUAs02o1ZUQiPP13wG7rnyxIlubgrhmmI8waEJB/Eefdn5dEH1Dp79wE2r5FLv+6GIv02gwhDFCPYDanY1AI1EtGX53D0OwjTbLsLIibaRnF/NmINnLtWF6er7gTsz1LvtzGTgrNTFn93aNzkDcSee/LWoA2a+frqgProZrUruG3+/WqEoVgO9iuF1jWSgy26wduPm2MJUt326SPvK7PXj+k7/GW9TrRtUwTkLBLEjhzvuFIVjUQ3Hd8ML1O5ayrjDIigJQS2NLCEChc8zlxnTs5lMCoOdx425zhkAJJ5JF9VqMm+e+uuFf+K/1HZHt+6jfbbGxfZPscbGpiSH/8733cjZ1GJJ2hPS1KXIbITCanaTuoSJSvPN0i4GWGTU3+XrwhfB8hPqUgeuwydkcnSd+/YWNdPsSJkLbUp1S2qYlM6fokwzKbOGvfYjZwVDSWXXzrYB/xft2pZiBF/knX/loPZ2bHmyonF8f1dzLWyXmk4C8JOr8KDu0DIWiDv/jque5MZCwKX5m3liE1/jeuefyVVcPKjIJiA1zVMqH+fYLKEvXCq6CIaKHDTbnx35zEWhcr2TgMe+GkQ3rt1x6qL0SREJqti5vu9lWUZ6mcN1IxzoSFzbBWtQCLYWQZjkE8jcmc96nWUot71/2cB5lqiaF+BdLVFJ6ZZr8TVuyPV7vI38D1ReguvlAIAoy2I+37ouGlHLRdfTLhLGd1ji1m9UW6ib1QxIlrRkAj777pXzwqUwcsTFngDVr76RssTWY/cZNVs+OIu4PtXd03a98JI7zRlNxigmIxAoVY3+kyCrztO4CDGrqEdRHOeds5Yft6QGKC2lFsOkCHfWAs+ouGUDyzvzlnNMHCR4JbYur5W5ghFrlErGTfMAoRL1HQr/48KZR8/iq14VFBbcTP/jzblCVGo+PY2tIahPS+eod0+fhPco+db66nbX5yI4FW8GDvtLJyLC9L8euyKg9F2+8kVhIOcQ0h0DOZNfHZsWBQ9Gah+uDzB1zzBOHSwecN0qORMjhBrAfh6E81aucTnWDpznELfGFBJwJa5z8XIiJX23spNtbD9eO+/XdXgu/edDpmGPPF2hm9+FrCvxotaAsvzQKowFdy3icrAlsaX2G3+zZe5UtLLTd71dchmqney7kgzbYeDKecgsVmVCs9a7qcYmMxYvDZ0fpQffz67sOof94qqhKMRDwlq5H+el728AOM8r6MX12cf72cNDoqDcaJgHYjMNTW4VPtM4EB+7vmwIq9AZ1oHo+jupM/oHohvsRjc4EN1wN7rhgehGu9GNDkRHBWdipaqcivGB6Ca70U0ORDfdjW7aHN0pPLQ6ZLdQm0N0gnDVqwRhO0QjCFutQjBpB+gDIatVB0Z2gDYQslplYGQH6AIhq1UFRnaAJhCyWkVgZAfoASGrVQNGdoAWELJaJWBkB+gAIatVAUbWQANoldeSrwrCFfy1vY5HbvW6CXxa77kI984FWQN2su/vV1p4ZSA0LpC7y19OyAabpLcUwX7Es6tZQ1bsXng/bvhzvLIPgVvjvQjezsaVqG5b5YhrniTubxwGNmRj+k7lWG9lGMHzPvOfKbQsU5e08wfU5VYKdk/qvLTYwzlG9crACSlQ20nxHsczRvb+xXbFWuUVfg98DgcTJR8y7o6D2xJbuBgYChPOC0AqYlNRoIqjYrAPCZt2CeeeGChGlNWL34Wp/7mFDCQyVWJEEmdSpczVqsQKClQzECxCVU6aila54GalHCYQn45P942Jyq91jm0b8XTUgXRTlnAnSi9Jv8TiUvBZFGWfGKqER2VP5kniCQv1GVJl67iCd14hNOwJdSiX1RGKhnq/3kSvSLm9oibACZ9nrkF3LuWS41TkKeSyNAcaId3ZTJHRBcrF1kMh4+M8QoN4m6OmR850wFhXqrbubyZFYD/BOH1FqihoQiFi2vco+kbZlpqeAYFPWiQtVJQrqYe6ls8722dVM3Qtkc+TNPZ5fJbyP3zHK/dTAruUyBHthMM8SuerpNW3RFYGXQJ2K/+HdO7Op/5L8LONlPYTQOfg6TXyV8j8cfaIIKvMR/xCB9BivXAet2wfS6Kcov2wXaAOVhOUANuDx2uExtuNZeYi09EEEQPuwHXlhAGutWmCKgF99JCq8nfRdyM86TbBuIf/sDSpreR8cF66kW4LHmWQrNcVip4AsKJxyqoC5t45d+oxUGvT18EUyk0lfWSypsdudCcWkMU9CdNiAUfaNDKN9JTSdJRByrsYDXDS9mTfug/EJimSnNZoi1cCnq2qdmW2qtrI+8IeHdul3PIVr7h96+EBlScxOTI8Wrruu55pTPVKmSxB3HFJQ+sQWGP9PswDNkBT/0gtULWv6qpnVHHzAJotfXK3C+OSLDu8Cmmy9/WdVifMoKDNgOYYBnrgiutz2mq48NIa9tmdhix3dwImbNwJQ/zaCZDyZSdYPDVnASw+CS4NPpvqT1KXWBmxxKNxj6LwNghUypUGJ81MqojJfzKswh5ODMIl04x3nSEK4FnmpAqEUwM4dNAxRyZ+shzXaPpE9HCCZpSR7liWWYWII3lziuKUJnrrV8JwgG72R0DSJzirChEH3uaUAQBpVMFwPB0XweRKmEYl3RwomyYRnvxU4eIIeEgcsGh0GbFNmR2nY3AsomNOCV0V4SZzmxhgmVSds5KXXPy7a/XB6zGwTUYVFJnMb3MCavB/c1g1b0COObEGINsa0MSNUk3PkM0Mt6gSqvrR/bHHmQYRQKe3XrkpjbHQhClNtqvifTDuAuca1DYMQNKTJrzXF0PkkOgtr3hvNSkWrEs8ds+FLa/FmuNaqHLoY3NVk0vnHG4FxYfoK6v0fAAi3iA2jcFkOM4dM7lXp2105/emMTenxnSe7PDGVej1tnShmYeBHru5KpldDQUW2PIzKVGWJt1M/qk+Q1AHdCcD5CNwYoh3UGNnO7eLqdHFAcixu3kSQAZRzayKN/6zDPjYyAukqjUk0mgNyTcyJKm1KFsSVWaXTrDhSECFIdH6m4XIGRJtjHKGJD0519yQ5NQsa0nM8XSUnnSjFm1JBsYeW1LX/Dvbkhzt2kT87sZkRCtN65W0xqQ1Jt3dXklOIVtjok9pK5OUsSPSoxCG8pM5pi3jc0wIhlbxqSgP4aLyPDfx0zBFg8+bkjdyD/HYi93IzOv4FqrTfdw61GfxcSQW2jYrh5PhF/rAFOfx8apOw3A7zniFPpwusWGndYFjcwm1cbOPEGpmP8nEpxXrzQI5iTwMo9DnJbU3zAh8OmPO+2CmXnSqCEsTJcaRWn0YbhvKYzt4dR27wGpuXWFZy3KTH4aJL23lMIF5K7jnxIFTEdq4AV50rnzPz44FMM/K3e56foDz3xzpElolDPHfu3Z8YCc5XRoHxHmgrotTk+jup5/jwEPnbkLmJ034Tz8r0YgSFmcmtsvP8mApNy48BMi3PqWFWQAzfrSS1psAp8g4cawWv6ZC2/11OB7I8Xgoe4OVJXrDxXTUE7Ype8KajiwxMKx+f/SbYl33X1qw9ccTNP3dgsI1k+tM5MVI3oRYx1JN9CbiRX8FBxLLlZyaDztpWKfkJQFMbFn315FpDweLxbJnW/aoN7TGZm86kuOeYUzFZLxaDQaLlRa25OU6i1eeAtL4Qs+7rR5Q2Dm7l1HKpPcYQbXNw+t1Vq9MXJ18ADLVdaXjGcuM9iohweM660dv7Ld/gNphAfM2ELAFK/i3OFV4iwPaf3t4SFO6ybZjKgkPD1/NI+PhYUMhf0hp7iP5ImtsbbV4JWnHTpJ3zPNGi5ZhC2EsxbLXHy5kb7gawo5NVqueWNlSSiFGpmG2ohXKPPvekGjZ6+XBonP8C062d/CdwnbZ4XxTwTxo6VkMhn0hR1ZvIPvL3lAOJ73FdDLtGWI6nUh7MDAXk1Z63oD0HGRZUjNVJxcHeUftgpVw4E9oVQ6SC3xDIV0fO7E4h8On9ZO1p7Pyg87nWccyLL2rkgxZW5L+dAqhmax647EJS2LCpkzssdUzBsZourJH8HH6rSX53ixJKjGpTWkiLVNzILDpvuoZ9sKG12IMe5PpyuwNlpOlLczBYLWwW2n53qTlRyfCB27hU92qY+HU1XCxghtrSNiQVV/0xGIy7g3t5WAhxEourUUrFd+bVHxa4OTntqeSOXlHXa8vg6m5EpPpsGfBQPSGy6nRWwgsMv2lGCyGUxtfwlutbHyfstH5t0Q4/r3OcsDVMEx7tOyZ/YHZGw7wt8lAyJ4pzNWiLybGVC5b6XgL0pFXfyc5jkWn+Oi0V/jw8ChfhhNzOkVy5caxIwS6eLjCKWiA9vrWS9862uAwdJq8U2lp8lirMy0Z32UMlzdOKucJ0XZI9IUlJ1iZJhCw3rA/nsIOiUnPHK1wIEqY/YXV5lvctyBph0gIPJfe6dVZnflZLPpSrPpYkpbI6g6McR9CYQ17piWtvpQrKRetULwFoSA7g3zrYyDWHVx2QaYFUw+jg/lXibi8YchaqH1vZiRO/fWft3X217/89r8= -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Scripts, Reg Files, and NTLite configs to debloat, fix, and optimize Windows....especially the headache that is Windows 11. 2 | *Please note that most of these optimizations are for if you have a RTX Nvidia card, alot of the registry changes are specifically for those because of different driver registry locations to GTX Nvidia cards. 3 | 4 | 5 | ![Desktop](https://github.com/gex581990/Windows-Optimizations/assets/129348281/8da1f2e5-2108-4da8-b701-792227dbbc88) 6 | ![Desktop2](https://github.com/gex581990/Windows-Optimizations/assets/129348281/92694806-bcd2-42d0-9f4b-4921b0d2b17b) 7 | 8 | 9 | ## My NTLite Configs: 10 | My configs were made with the goal of having the most debloated I could make the OS while also keeping compatibility in tact for gaming, general multi-tasking, VM's, and developing tools. Most debloated ISO's or configs are solely focused on gaming and break alot of OS features especially stuff like VM's, dev environments, or even stuff as simply as printing or using headphones. Some ISO's even break the start menu and Appx altogether making things really difficult. So I kept average useful stuff intact, somethings may be disabled but still intact just needing a setting changed. But even on high end systems my custom iso's alone make an enormous differerence even before apply all my tweaks. Especially with Windows 11. My Windows 10 config also makes an enormous difference just 11 is more bloated so my config goes even further on there 11 | 12 | ## Windows 11: 13 | Words cannot express how bloated Windows 11 is with useless junk, telemetry, and advertising. 11 uses SOOOOO much resources for no reason other than for Microsoft to appease sponsors, collect advertising info, and they get so deep that they want to require TPM so they feel their servers are safe as they tap into your system. TPM requirements are more for their security, not yours. I only recently switched to 11 cause I really wanted Auto-HDR, HDR calibration tool, better DirectStorage, and the full 12_2 feature set but it took so much work for me to get it to an acceptable level. They simplified stuff too much to appease tablet users and normies that only use their pc's for browsing the net. If you wanna do any serious multitasking of any kind you have to go through so many steps to do something that could have been as easy as right click or dragging a file into something like in previous versions. Even Pro is gimped with these simplifications when Pro is supposed to be a professional OS to make multi-tasking as easy as possible. It's mind boggling but I put in ALOT of work in debloating and optimizing the OS. I've made it as close to Windows 10 as possible but with all of the exclusive 11 improvements like multiple tabs in Explorer, Auto-HDR, and all that in tact. Pretty much what Windows 10 should be if Windows wasn't trying to get you to "upgrade" by locking these features to 11. With my changes I can finally say I enjoy Windows 11, especially the HDR improvements which are noticeable right away. HDR in 10 was definitely a headache. 14 | 15 | ## Anyone using Asus motherboards: 16 | Download your drivers from [here](https://rog-forum.asus.com/t5/hardware-build-advice/index-all-my-drivers-firmware-software-threads/m-p/827232). MoKiChU does great work debloating drivers and releasing driver updates Asus themselves are too lazy or slow to release themselves. Asus's site has some pretty old drivers, some don't even get updated and those that do are behind by like 6 months. Definitely important to have updated drivers, just always check changelogs and avoid troublesome driver updates. 17 | 18 | ## [C++ Redistributable All in One](https://github.com/abbodi1406/vcredist)- 19 | Almost all games and programs rely on these to work, this puts them all in one package with no bloat. Makes life simple. Important to download right after a clean install of Windows 20 | 21 | ## [Chris Titus's Windows Utility](https://github.com/ChrisTitusTech/winutil): 22 | Very useful tool especially right after a clean install of Windows. He makes it easy to download recommended apps like browsers, runtimes, dev tools, media players, or whatever you might need. Download all the .NET runtimes, just like the C++ Redistributables these are very important for programs and games to work properly. The big thing on this utility are some of the tweaks he has on there. Alot of the tweaks are included in my scripts and reg files but there are some I dont include that might be useful for you. I do recommend running my tweaks again after running his tho cause his include some registry changes that alter some of my priority settings and Ive found my settings improve a little bit better so running his tweaks then mine brings the best result. The utility doesn't need to be downloaded. You can simply paste the command below 23 | into an elevated Powershell and the utility will load. You can definitely pay for a download of the utility tho if you wanna show your support to Chris cause he definitely does deserve it and does great work. Also check out his YouTube [Chris Titus Tech](https://www.youtube.com/@ChrisTitusTech) for useful tips and recommendations. His main Github with his repositories is [https://github.com/ChrisTitusTech](https://github.com/ChrisTitusTech) 24 | 25 | ### Command to use Chris Titus Tech Windows Utility- 26 | ``` 27 | iwr -useb https://christitus.com/win | iex 28 | ``` 29 | Thank you again to @ChrisTitusTech for your helpful Youtube channel and all the open-source work you do. They have helped me alot perfecting and balancing Windows into my perfect OS. Anyone using his tool please subscribe to his channel and check out his repositories I have linked above. 30 | 31 | ## Compatibility 32 | One of my goals for the perfect OS is for the best compatibility with older games, programs, and maybe even stuff from other platforms. There are some amazing tools out there like hypervisors, VM's, emulators, and wrappers to make things compatible on modern Windows that might not properly work otherwise. An amazing resource for stuff like this is https://emulation.gametechwiki.com/index.php/Main_Page but I'll share some things I think are essential for compatibility. 33 | 34 | - #### [Compatibility Manager](https://github.com/nbusseneau/CompatibilityManager)- 35 | Speaking of Compatibility, the Compatibility Manager is a great place to start. Giving you the ability to change program settings in bulk to fix DPI issues, disable Fullscreen Optimizations, ect. My reg settings did do variable environment and reg tweaks meant to disable Fullscreen Optimizations system wide but sadly those tweaks don't work on everything. Even the official way of changing settings in Properties doesn't always work anymore, but the method this manager does works better in general. Stacked up with my tweaks I don't really get the odd issues like I used to. DWM and applications just don't get along, even DX12 games do some weird stuff with FSO so it's not just a retro game thing either. It's just better to let the game engines do their job based on the configs you set without DWM being a confusing middleman adding latency and bugs. 36 | - #### [WineVDM](https://github.com/otya128/winevdm)- 37 | Makes your 64-bit Windows install compatible with 16-bit games/programs or even 32-bit games/programs that might use a 16-bit installer. 64-bit Windows normally are not compatible with 16-bit programs at all. 32-bit versions of Windows include NTVDM which is an ancient tool Windows made to make Windows NT compatible with DOS environments and doesn't work on 64-bit Windows. Luckily Leecher1337 ported NTVDM to 64-bit Windows "NTVDMx64" but was a work in progress and had it's issues but the work they did helped otya128 who then implimented some of the well known Wine compatibility layer (used to make Windows games/programs compatible in Linux) into the equation which then surpassed NTVDMx64. It does look like [NTVDMx64](https://github.com/leecher1337/ntvdmx64) is getting updates again tho which is great news. Both projects are great, I've just had better luck with WineVDM tho NTVDMx64 has it's own plus and minuses so could depend on the usage. Leecher1337 themselves recommends WineVDM if your focus is just running 16-bit programs, seems he is more focused on the DOS side of things which is still awesome. 38 | - #### [Windows Subsystem for Linux (WSL2)](https://learn.microsoft.com/en-us/windows/wsl/install) - 39 | One of the few things I can actually praise Microsoft for is their WSL tool. It's essentially a way to natively run Linux programs and environments while still in your Windows desktop. If you do any kind of development this is a god send. You can easily pull up a Linux terminal inside Windows Terminal (which is the newest evolution of Powershell). It works like a VM but intertwined in your Windows desktop so you don't have to switch back and forth from a vm, plus it interacts with Windows. You can even have Linux programs in your start menu and desktop. 40 | - #### [Windows Subsystem for Android](https://learn.microsoft.com/en-us/windows/android/wsa/)- 41 | I don't personally use this but you might find it useful. It works the same way as WSL but with Android apps and environments. 42 | - #### [DgVoodoo2](https://github.com/dege-diosg/dgVoodoo2)- 43 | Very useful wrapper that makes majority of older games compatible on modern pc's by translating Glide 2.11-3.10, DirectDraw 1-7, and Direct3D 2-7 into DX11 or DX12. 44 | - #### [WineD3D](https://fdossena.com/?p=wined3d/index.frag)- 45 | Another wrapper that uses Wine more on the api side of things to translate DirectDraw 1-7 and Direct3D 2-7 into Vulkan or OpenGL. 46 | - #### [nGlide](https://www.zeus-software.com/downloads/nglide)- 47 | yet another wrapper that focuses on just the Voodoo Glide API. Translates Glide into Vulkan or DX9. 48 | Put this in Powershell as admin to download: 49 | ``` 50 | winget install ZeusSoftware.nGlide 51 | ``` 52 | 53 | ## Recommended Apps to Download: (My Winget Scripts contain most of these so you can quickly install these) 54 | 55 | - #### [Nvidia Profile Inspector](https://github.com/Orbmu2k/nvidiaProfileInspector)- 56 | This is a must. It's a tool for changing settings in the Nvidia driver for the base profile and game profiles. Most settings aren't included in the Control Panel, this tool shows nearly all possible settings in the driver even hidden ones. Even if Control Panel has the same settings, the options are more limited than on Profile Inspector. Also a useful tool for saving and import/exporting game profiles so you don't lose everything when you do a driver update. 57 | - #### [NTLite](https://www.ntlite.com/shop)- 58 | Tool to make custom Windows ISO's to debloat, customize your OS, alter online images, and remove any reinstalled bloat from an update. Purchasing the home version is a necessity and worth every penny. Free version is limited and I'm not sure what important features might be missing. 59 | - #### [Nilesoft Shell](https://github.com/moudey/Shell)- 60 | Make custom context menus (especially useful for replacing Windows 11's completely useless context menu and adding some flare). 61 | - #### [GoInterruptPolicy](https://github.com/spddl/GoInterruptPolicy)- 62 | Reduce latency and stutter by turning on MSI mode for drivers, associating which cores drivers are gonna be using, and change priorities. Can also increase performance in some cases, especially if you are using Intel Cpu's with E-cores or AMD Cpu's with 3d cache 63 | - #### [O&O Shut Up 10](https://www.oo-software.com/en/shutup10)- 64 | tell Windows to Shut Up, stop spying, and killing perf for no reason. 65 | - #### [NVCleanstall](https://www.techpowerup.com/nvcleanstall)- 66 | debloat Nvidia drivers to combat DPC latency, audio stutter, and lag in general. 67 | - #### [LatencyMon](https://www.resplendence.com/latencymon)- 68 | pretty much benchmarking how much lag is in your system, test changes, help troubleshoot, and point out problem areas. 69 | - #### [ExplorerPatcher](https://github.com/valinet/ExplorerPatcher)- 70 | An ABSOLUTE MUST if you are using Windows 11. This fixes that garbage start menu, context menu, and all the inconvenient 71 | changes made in 11. My shared settings makes it exactly like Windows 10 but with the advantages of Windows 11 like tabs in File Explorer. 72 | - #### [Nirsoft Utilities](https://www.nirsoft.net/utils)- 73 | There are so many useful utilities here but the ones I use most are ShellMenuView, ShellMenuNew, and ShellExView to easily make changes to the context menu. Mostly to remove some or move them to the Shift+RightClick extended context menu to reduce clutter. Can't really add programs to context menu with these sadly but that can be done with Nilesoft Shell but that also requires you to code a program in yourself (not for newbies) but that is definitely easier than doing it through the OS itself. 74 | - #### [Sysinternals Suite](https://learn.microsoft.com/en-us/sysinternals/downloads/sysinternals-suite)- 75 | I recommend downloading the whole suite. Everything here is useful and makes problem solving so much easier. Process Monitor and Process Explorer are must's and can help point out problem processes, malware, and test priorities easily. 76 | - #### [Microsoft Powertoys](https://learn.microsoft.com/en-us/windows/powertoys)- 77 | Makes life so much easier on Windows. Registry Preview, Powertoys Run, Always on Top, Color Picker, Fancy Zones, and Power Rename are some of my favorites that have saved me ALOT of time doing any kind of development and multitasking in general. 78 | - #### [NanaZip](https://github.com/M2Team/NanaZip)- 79 | By far the best free archiving program, is based on 7zip but much much better with more features, control, and much better compression. 80 | - #### [Driver Store Explorer (RAPR)](https://github.com/lostindark/DriverStoreExplorer)- 81 | Program that makes removing and adding drivers very easy. Device Manager doesn't fully remove drivers, it only stops associating with a driver (if it even works) while continuing to store the driver and might still leave some conflict. This program likes you fully remove the driver with easy, can also show you all drivers in system and what ones are currently associated. This pointed out to me that Intel's chipset driver installer was actually installing a few unrelated drivers while leaving the ones needed not installed or not associated. 82 | - #### [Link Shell Extension](https://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html)- 83 | An awesome program that makes creating Symbolics Links, Hard Links, and Juctions as easy as possible. It add's an option to your context menu to create Symbolic Links, Hard Links, Junctions and much more. This makes it so easy to organize your files however you want together without having to move them between drives. Essentially makes shortcuts without the programs or anything know that they are shortcuts. Also makes accessing network files easier. There is alot of other uses too but convenience is a big one. 84 | 85 | -------------------------------------------------------------------------------- /Useful Shortcut to Restart to Bios/RestartToBios.bat: -------------------------------------------------------------------------------- 1 | shutdown /r /fw /t 1 --------------------------------------------------------------------------------