├── .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('')
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('')
27 | $svg_mcase=image.svg('')
30 | $svg_ucase=image.svg('')
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('')
56 | $svg_spacesdots=image.svg('')
60 | $svg_underscoresspaces=image.svg('')
64 | $svg_spacesunderscores=image.svg('')
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('')
80 | $svg_suffix=image.svg('')
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 = ''
8 | $svg_triple_down = ''
12 | $svg_triple_left = ''
16 | $svg_triple_right = ''
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 | 
6 | 
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
--------------------------------------------------------------------------------