diff --git a/src-21H2-22H2/Configuration/custom.yml b/src-21H2-22H2/Configuration/custom.yml deleted file mode 100644 index 5746610..0000000 --- a/src-21H2-22H2/Configuration/custom.yml +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: Custom -description: Custom AME configuration -privilege: Admin -actions: [] -features: -- features\base\regedits.yml -- features\base\base.yml -- features\base\components.yml -- features\base\appx.yml -- features\base\services.yml -- features\base\files.yml -- features\base\login.yml -- features\base\shortcuts.yml -- features\base\silent.yml -- features\base\permission.yml -- features\base\admin.yml -- features\base\windowsterminal.yml -- features\base\choco.yml -- features\base\wallpaper.yml \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/admin.yml b/src-21H2-22H2/Configuration/features/base/admin.yml deleted file mode 100644 index 3f99d16..0000000 --- a/src-21H2-22H2/Configuration/features/base/admin.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Admin -description: Remove user from admin group, enable administrator account -privilege: Admin -actions: - - !run: - exeDir: true - exe: "ADMIN.bat" - weight: 10 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/base.yml b/src-21H2-22H2/Configuration/features/base/base.yml deleted file mode 100644 index 013813b..0000000 --- a/src-21H2-22H2/Configuration/features/base/base.yml +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Base -description: Base AME configuration -privilege: Admin -actions: - - !run: - exeDir: true - exe: "DNET.bat" - weight: 60 - - !run: - exeDir: true - exe: "SFCDEPLOY.bat" - weight: 5 - - !run: - exeDir: true - exe: "TILE.bat" - weight: 15 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/choco.yml b/src-21H2-22H2/Configuration/features/base/choco.yml deleted file mode 100644 index bbb2f8f..0000000 --- a/src-21H2-22H2/Configuration/features/base/choco.yml +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: Chocolatey -description: Chocolatey configuration -privilege: Admin -actions: - - !run: - exeDir: true - exe: "CHOC.bat" - weight: 250 - - !run: - exeDir: true - exe: "FIREFOXCONF.bat" - weight: 20 - - !run: - exeDir: true - exe: "FILEASSOC.bat" - weight: 50 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/components.yml b/src-21H2-22H2/Configuration/features/base/components.yml deleted file mode 100644 index 67bfd68..0000000 --- a/src-21H2-22H2/Configuration/features/base/components.yml +++ /dev/null @@ -1,55 +0,0 @@ -title: Components -description: Remove certain windows components -privilege: TrustedInstaller -actions: - - !taskKill: - name: "MicrosoftEdgeUpdate" - - !taskKill: - name: "msedge" - - !taskKill: - name: "MicrosoftEdge*" - - !taskKill: - name: "setup" - pathContains: "\\Edge" - - !taskKill: - name: "msedgewebview2" - - !service: - name: "edgeupdate" - operation: delete - - !service: - name: "edgeupdatem" - operation: delete - - !service: - name: "MicrosoftEdgeElevationService" - operation: delete - - !run: - exeDir: true - exe: "EDGE.bat" - weight: 20 - - !run: - exeDir: true - exe: "EDGEX.bat" - weight: 10 - - !taskKill: - name: "OneDriveStandaloneUpdater" - - !taskKill: - name: "OneDriveSetup" - - !taskKill: - name: "OneDrive*" - - !service: - name: "OneSyncSvc*" - operation: delete - - !taskKill: - name: "explorer" - - !run: - exeDir: true - exe: "ONED.bat" - weight: 20 - - !run: - exeDir: true - exe: "UPDHEALTH.bat" - weight: 20 - - !run: - exeDir: true - exe: "CONVERT.bat" - weight: 10 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/login.yml b/src-21H2-22H2/Configuration/features/base/login.yml deleted file mode 100644 index dc402a1..0000000 --- a/src-21H2-22H2/Configuration/features/base/login.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: Login -description: Modifies login screen -privilege: TrustedInstaller -actions: - - !run: - exeDir: true - exe: "LOGIN.bat" \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/permission.yml b/src-21H2-22H2/Configuration/features/base/permission.yml deleted file mode 100644 index 7220192..0000000 --- a/src-21H2-22H2/Configuration/features/base/permission.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Permission -description: Sets UAC level and user permissions -privilege: Admin -actions: - - !run: - exeDir: true - exe: "PERM.bat" - weight: 10 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/regedits.yml b/src-21H2-22H2/Configuration/features/base/regedits.yml deleted file mode 100644 index 26c0028..0000000 --- a/src-21H2-22H2/Configuration/features/base/regedits.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Registry Edits -description: Base AME Registry Edits -privilege: Admin -actions: - - !run: - exeDir: true - exe: "REGI.bat" - weight: 30 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/servicesOld.yml b/src-21H2-22H2/Configuration/features/base/servicesOld.yml deleted file mode 100644 index 6cdda38..0000000 --- a/src-21H2-22H2/Configuration/features/base/servicesOld.yml +++ /dev/null @@ -1,79 +0,0 @@ -title: services -description: services -privilege: Admin -actions: - - !service: - name: "DoSvc" - operation: stop - - !service: - name: "iphlpsvc" - operation: stop - - !service: - name: "Winmgmt" - operation: stop - - !service: - name: "ClipSVC" - operation: stop - - !service: - name: "DiagTrack" - operation: stop - - !service: - name: "RetailDemo" - operation: stop - - !service: - name: "diagnosticshub.standardcollector.service" - operation: stop - - !service: - name: "dmwappushservice" - operation: stop - - !service: - name: "InstallService" - operation: stop - - !service: - name: "LicenseManager" - operation: stop - - !service: - name: "lfsvc" - operation: stop - - !service: - name: "MapsBroker" - operation: stop - - !service: - name: "NetTcpPortSharing" - operation: stop - - !service: - name: "RemoteAccess" - operation: stop - - !service: - name: "RemoteRegistry" - operation: stop - - !service: - name: "SharedAccess" - operation: stop - - !service: - name: "StorSvc" - operation: stop - - !service: - name: "TrkWks" - operation: stop - - !service: - name: "UsoSvc" - operation: stop - - !service: - name: "WbioSrvc" - operation: stop - - !service: - name: "WMPNetworkSvc" - operation: stop - - !service: - name: "XblAuthManager" - operation: stop - - !service: - name: "XblGameSave" - operation: stop - - !service: - name: "XboxNetApiSvc" - operation: stop - - !service: - name: "wlidsvc" - operation: stop \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/shortcuts.yml b/src-21H2-22H2/Configuration/features/base/shortcuts.yml deleted file mode 100644 index 4abc0a1..0000000 --- a/src-21H2-22H2/Configuration/features/base/shortcuts.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Shortcuts -description: Remove and add shortcuts -privilege: Admin -actions: - - !run: - exeDir: true - exe: "SHRT.bat" - weight: 5 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/silent.yml b/src-21H2-22H2/Configuration/features/base/silent.yml deleted file mode 100644 index 4895441..0000000 --- a/src-21H2-22H2/Configuration/features/base/silent.yml +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: Silent Installers -description: Silent Installers for Windows 7 Calculator -privilege: Admin -actions: - - !run: - exeDir: true - exe: "UI.bat" - weight: 70 - - !run: - exeDir: true - exe: "SLNT.bat" - weight: 50 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/wallpaper.yml b/src-21H2-22H2/Configuration/features/base/wallpaper.yml deleted file mode 100644 index cf02cb1..0000000 --- a/src-21H2-22H2/Configuration/features/base/wallpaper.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Malte Wallpapers -description: Installs Malte Wallpapers -privilege: Admin -actions: - - !run: - exeDir: true - exe: "WALLPAPER.bat" - weight: 20 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/windowsterminal.yml b/src-21H2-22H2/Configuration/features/base/windowsterminal.yml deleted file mode 100644 index 127cf37..0000000 --- a/src-21H2-22H2/Configuration/features/base/windowsterminal.yml +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Windows Terminal -description: Installs Windows Terminal -privilege: Admin -actions: - - !run: - exeDir: true - exe: "WINTERM.bat" - weight: 120 \ No newline at end of file diff --git a/src-21H2-22H2/Executables/ADMIN.bat b/src-21H2-22H2/Executables/ADMIN.bat deleted file mode 100644 index 59bddde..0000000 --- a/src-21H2-22H2/Executables/ADMIN.bat +++ /dev/null @@ -1,13 +0,0 @@ -net user Administrator /active:yes -net user Administrator malte -@echo OFF -for /f "usebackq delims=" %%A in (`net localgroup administrators ^| findstr /V /X /I /R /c:"Alias name[ ].*" /c:"Comment[ ].*" /c:"Members" /c:"-*" /c:"The command completed.*" /c:"Administrator"`) do ( - echo net localgroup administrators "%%A" /delete - net localgroup administrators "%%A" /delete -) -@echo ON - -schtasks /create /tn "AME Admin Log-off" /tr "CMD /C 'SCHTASKS /run /tn 'AME Admin Log-off Msg' & Logoff'" /ru "Administrator" /sc ONLOGON /it /rl HIGHEST /f > NUL -PowerShell -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName 'AME Admin Log-off Msg' -Settings $TaskSet" > NUL -schtasks /create /tn "AME Admin Log-off Msg" /tr "PowerShell -NoP -C 'While($lim -lt 20){WMIC computersystem get username|findstr /c:'\Administrator ';if(!$?){Break};$lim++;Sleep 1};'''Logging in as the Administrator user is not supported on AME.`nPlease login using a different account.'''|Msg *'" /sc MONTHLY /f /rl HIGHEST /ru "SYSTEM" > NUL -PowerShell -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName 'AME Admin Log-off Msg' -Settings $TaskSet; $serv = New-Object -ComObject Schedule.Service; $serv.Connect($env:COMPUTERNAME); $folder = $serv.GetFolder('\'); $task = $folder.GetTask('AME Admin Log-off Msg'); $item = $task.Definition; $item.Triggers.Remove(1); $folder.RegisterTaskDefinition($task.Name, $item, 4, $null, $null, $null)" > NUL \ No newline at end of file diff --git a/src-21H2-22H2/Executables/EDGE.bat b/src-21H2-22H2/Executables/EDGE.bat deleted file mode 100644 index 7eb09db..0000000 --- a/src-21H2-22H2/Executables/EDGE.bat +++ /dev/null @@ -1,177 +0,0 @@ -taskkill /im msedge.exe /f - -@echo OFF -::for /f "usebackq delims=" %%A in (`dir /b /s "%PROGRAMFILES(x86)%\Microsoft\Edge\Application\*setup.exe" ^| findstr /c:"Installer\\setup.exe"`) do ( -:: echo PowerShell -NoP -C "Start-Process '%%A' -ArgumentList '--uninstall','--system-level','--verbose-logging','--force-uninstall' -NoNewWindow -Wait" -:: PowerShell -NoP -C "Start-Process '%%A' -ArgumentList '--uninstall','--system-level','--verbose-logging','--force-uninstall' -NoNewWindow -Wait" -::) - -taskkill /f /im "msedge.exe" - -for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"S-"`) do ( - reg query "HKU\%%A" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1 - if not errorlevel 1 ( - CALL :USERREG "%%A" - ) -) - -@echo ON - -for /f "usebackq tokens=1 delims= " %%E in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" ^| findstr /i /c:"MicrosoftEdge" /c:"msedge"`) do reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "%%E" /f - -reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "TaskbarMigratedBrowserPin" /f - -del /q /f "%ProgramData%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge.lnk" - -for /f "usebackq delims=" %%E in (`reg query "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /i /r /c:"Microsoft[ ]*Edge" /c:"msedge"`) do reg delete "%%E" /f - -reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\EdgeUpdate" /f - -reg delete "HKCR\CLSID\{1FCBE96C-1697-43AF-9140-2897C7C69767}" /f - -reg delete "HKCR\AppID\{1FCBE96C-1697-43AF-9140-2897C7C69767}" /f - -reg delete "HKCR\Interface\{C9C2B807-7731-4F34-81B7-44FF7779522B}" /f - -reg delete "HKCR\TypeLib\{C9C2B807-7731-4F34-81B7-44FF7779522B}" /f - -reg delete "HKCR\MSEdgeHTM" /f - -reg delete "HKCR\MSEdgePDF" /f - -reg delete "HKCR\MSEdgeMHT" /f - -reg delete "HKCR\AppID\{628ACE20-B77A-456F-A88D-547DB6CEEDD5}" /f - -reg delete "HKLM\SOFTWARE\Clients\StartMenuInternet\Microsoft Edge" /f - -reg delete "HKLM\SOFTWARE\RegisteredApplications" /v "Microsoft Edge" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\msedge.exe" /f - -reg delete "HKCR\.htm\OpenWithProgIds" /v "MSEdgeHTM" /f - -reg delete "HKCR\.html\OpenWithProgIds" /v "MSEdgeHTM" /f - -reg delete "HKCR\.shtml\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKCR\.svg\OpenWithProgIds" /v "MSEdgeHTM" /f - -reg delete "HKCR\.xht\OpenWithProgIds" /v "MSEdgeHTM" /f - -reg delete "HKCR\.xhtml\OpenWithProgIds" /v "MSEdgeHTM" /f - -reg delete "HKCR\.webp\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKCR\.xml\OpenWithProgIds" /v "MSEdgeHTM" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts" /v "MSEdgeHTM_microsoft-edge" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\EnterpriseMode" /v "MSEdgePath" /f - -reg delete "HKCR\AppID\ie_to_edge_bho.dll" /f - -reg delete "HKCR\AppID\{31575964-95F7-414B-85E4-0E9A93699E13}" /f - -reg delete "HKCR\CLSID\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}" /f - -reg delete "HKCR\WOW6432Node\CLSID\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}" /f - -reg delete "HKCR\ie_to_edge_bho.IEToEdgeBHO" /f - -reg delete "HKCR\ie_to_edge_bho.IEToEdgeBHO.1" /f - -:: -reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer" /f -reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\Internet Explorer" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}" /f - -reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}" /f - -reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Ext\PreApproved\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Ext\CLSID" /v "{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Edge" /f - -reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\Edge" /f - -reg delete "HKCR\CLSID\{3A84F9C2-6164-485C-A7D9-4B27F8AC009E}" /f - -reg delete "HKCR\WOW6432Node\CLSID\{3A84F9C2-6164-485C-A7D9-4B27F8AC009E}" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\PreviewHandlers" /v "{3A84F9C2-6164-485C-A7D9-4B27F8AC009E}" /f - -reg delete "HKCR\.pdf\ShellEx\{8895b1c6-b41f-4c1c-a562-0d564250836f}" /v "(Default)" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}" /f - -reg delete "HKU\S-1-5-21-3476428458-2503407758-626446112-1002\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}" /f - -reg delete "HKLM\System\CurrentControlSet\Services\EventLog\Application\Edge" /f - -reg delete "HKLM\SOFTWARE\Microsoft\MediaPlayer\ShimInclusionList\msedge.exe" /f - -rmdir /q /s "%ProgramFiles(x86)%\Microsoft\EdgeCore" - -reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge Update" /f - -::WebView -reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft EdgeWebView" /f -rmdir /q /s "%ProgramFiles(x86)%\Microsoft\EdgeWebView" - -@echo OFF - -for /f "usebackq delims=" %%A in (`dir /b /a:d "%SYSTEMDRIVE%\Users"`) do ( - ::WebView - echo rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\EdgeWebView" - rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\EdgeWebView" - - echo rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\Edge" - rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\Edge" - - echo rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\EdgeUpdate" - rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\EdgeUpdate" - - echo rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\EdgeCore" - rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\EdgeCore" -) - -exit /b 0 - -:USERREG - -@echo ON - -reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "Microsoft Edge Update" /f - -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Taskband" /v "FavoritesResolve" /t REG_BINARY /d 320300004C0000000114020000000000C0000000000000468300800020000000549E39A5246AD8012B113CA5246AD801A8B6C6DADDACD501970100000000000001000000000000000000000000000000A0013A001F80C827341F105C1042AA032EE45287D668260001002600EFBE1200000056F21270246AD8010F37A185246AD8012B113CA5246AD80114005600310000000000B154E29B11005461736B42617200400009000400EFBEB154C69BB154E29B2E000000F4940100000001000000000000000000000000000000D5BA89005400610073006B00420061007200000016000E01320097010000874F0749200046494C4545587E312E4C4E4B00007C0009000400EFBEB154E29BB154E29B2E00000097900100000002000000000000000000520000000000589C4400460069006C00650020004500780070006C006F007200650072002E006C006E006B00000040007300680065006C006C00330032002E0064006C006C002C002D003200320030003600370000001C00220000001E00EFBE02005500730065007200500069006E006E006500640000001C00120000002B00EFBE2B113CA5246AD8011C00420000001D00EFBE02004D006900630072006F0073006F00660074002E00570069006E0064006F00770073002E004500780070006C006F0072006500720000001C0000009B0000001C000000010000001C0000002D000000000000009A0000001100000003000000E4A63B761000000000433A5C55736572735C757365725C417070446174615C526F616D696E675C4D6963726F736F66745C496E7465726E6574204578706C6F7265725C517569636B204C61756E63685C557365722050696E6E65645C5461736B4261725C46696C65204578706C6F7265722E6C6E6B000060000000030000A058000000000000006465736B746F702D62356E36683339006E1A1EE27BFFA94ABB0361D86F25337E500764DB17D6EC11A598000C2907D6A06E1A1EE27BFFA94ABB0361D86F25337E500764DB17D6EC11A598000C2907D6A045000000090000A03900000031535053B1166D44AD8D7048A748402EA43D788C1D000000680000000048000000CE2181FCD4BF31408F25FF009E4345CA000000000000000000000000 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Taskband" /v Favorites /t REG_BINARY /d 00A40100003A001F80C827341F105C1042AA032EE45287D668260001002600EFBE1200000056F21270246AD8010F37A185246AD8012B113CA5246AD80114005600310000000000B154E29B11005461736B42617200400009000400EFBEB154C69BB154E29B2E000000F4940100000001000000000000000000000000000000D5BA89005400610073006B00420061007200000016001201320097010000874F0749200046494C4545587E312E4C4E4B00007C0009000400EFBEB154E29BB154E29B2E00000097900100000002000000000000000000520000000000589C4400460069006C00650020004500780070006C006F007200650072002E006C006E006B00000040007300680065006C006C00330032002E0064006C006C002C002D003200320030003600370000001C00120000002B00EFBE2B113CA5246AD8011C00420000001D00EFBE02004D006900630072006F0073006F00660074002E00570069006E0064006F00770073002E004500780070006C006F0072006500720000001C00260000001E00EFBE0200530079007300740065006D00500069006E006E006500640000001C000000FF /f - -reg delete "HKU\%~1\SOFTWARE\RegisteredApplications" /v "Microsoft Edge" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.htm\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.html\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.shtml\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.svg\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.xht\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.xhtml\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.webp\OpenWithProgids" /v "MSEdgeHTM" /f - -reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts" /v "MSEdgeHTM_microsoft-edge" /f - -reg delete "HKU\%~1\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}" /f - -reg delete "HKU\%~1\SOFTWARE\Microsoft\Edge" /f - -::WebView -reg delete "HKU\%~1\SOFTWARE\Microsoft\EdgeWebView" /f - -@echo OFF \ No newline at end of file diff --git a/src-21H2-22H2/Executables/ONED.bat b/src-21H2-22H2/Executables/ONED.bat deleted file mode 100644 index 6e34d81..0000000 --- a/src-21H2-22H2/Executables/ONED.bat +++ /dev/null @@ -1,446 +0,0 @@ - -@echo OFF -for /f "usebackq tokens=2 delims=\" %%E in (`reg query "HKEY_USERS" ^| findstr /c:"S-" /c:"AME_UserHive_"`) do ( - REM If the "Volatile Environment" key exists, that means it is a proper user. Built in accounts/SIDs don't have this key. - reg query "HKU\%%E" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1 - if not errorlevel 1 ( - call :USERREG "%%E" - ) -) - -taskkill /f /im "OneDrive.exe" - -for /f "usebackq delims=" %%A in (`dir /b /a:d "%SYSTEMDRIVE%\Users"`) do ( - echo rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\OneDrive" - rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\OneDrive" - echo rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\OneDrive" - rmdir /q /s "%SYSTEMDRIVE%\Users\%%A\OneDrive" - - echo del /q /f "%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\OneDrive.lnk" - del /q /f "%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\OneDrive.lnk" -) - -for /f "usebackq delims=" %%E in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SyncRootManager" ^| findstr /i /c:"OneDrive"`) do echo reg delete "%%E" /f & reg delete "%%E" /f - -reg delete "HKCR\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" /f - -exit /b 0 - -:USERREG - -@echo ON - -reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "OneDrive" /f - -reg delete "HKU\%~1\SOFTWARE\Microsoft\OneDrive" /f - -for /f "usebackq delims=" %%E in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\BannerStore" ^| findstr /i /c:"OneDrive"`) do reg delete "%%E" /f -for /f "usebackq delims=" %%E in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers" ^| findstr /i /c:"OneDrive"`) do reg delete "%%E" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.fluid" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.note" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.whiteboard" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\.loop" /f - -for /f "usebackq delims=" %%E in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths" ^| findstr /i /c:"OneDrive"`) do reg delete "%%E" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\TypeLib\{F904F88C-E60D-4327-9FA2-865AD075B400}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{A87958FF-B414-7748-9183-DBF183A25905}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{A87958FF-B414-7748-9183-DBF183A25905}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\NucleusNativeMessaging.NucleusNativeMessaging.1" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\NucleusNativeMessaging.NucleusNativeMessaging" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{917E8742-AA3B-7318-FA12-10485FB322A2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{917E8742-AA3B-7318-FA12-10485FB322A2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\NucleusToastActivator.NucleusToastActivator.1" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\NucleusToastActivator.NucleusToastActivator" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{47E6DCAF-41F8-441C-BD0E-A50D5FE6C4D1}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{47E6DCAF-41F8-441C-BD0E-A50D5FE6C4D1}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\mssharepointclient" /f - -reg delete "HKU\%~1\SOFTWARE\Google\Chrome\NativeMessagingHosts\com.microsoft.onedrive.nucleus.auth.provider" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\AppID\{EEABD3A3-784D-4334-AAFC-BB13234F17CF}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\AppID\OneDrive.EXE" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{6bb93b4e-44d8-40e2-bd97-42dbcf18a40f}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{AB807329-7324-431B-8B36-DBD581F56E0B}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{1EDD003E-C446-43C5-8BA0-3778CC4792CC}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{1EDD003E-C446-43C5-8BA0-3778CC4792CC}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\TypeLib\{4B1C80DA-FA45-468F-B42B-46496BDBE0C5}\1.0" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\SyncEngineStorageProviderHandlerProxy.SyncEngineStorageProviderHandlerProxy" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{A3CA1CF4-5F3E-4AC0-91B9-0D3716E1EAC3}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\TypeLib\{638805C3-4BA3-4AC8-8AAC-71A0BA2BC284}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\FileSyncClient.FileSyncClient.1" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\FileSyncClient.FileSyncClient" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{7B37E4E2-C62F-4914-9620-8FB5062718CC}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\FileSyncClient.AutoPlayHandler.1" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\FileSyncClient.AutoPlayHandler" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{5999E1EE-711E-48D2-9884-851A709F543D}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\BannerNotificationHandler.BannerNotificationHandler" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{2e7c0a19-0438-41e9-81e3-3ad3d64f55ba}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{F0AF7C30-EAE4-4644-961D-54E6E28708D6}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{F0AF7C30-EAE4-4644-961D-54E6E28708D6}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{9D613F8A-B30E-4938-8490-CB5677701EBF}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{9D613F8A-B30E-4938-8490-CB5677701EBF}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{79A2A54C-3916-41FD-9FAB-F26ED0BBA755}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{79A2A54C-3916-41FD-9FAB-F26ED0BBA755}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{0299ECA9-80B6-43C8-A79A-FB1C5F19E7D8}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{0299ECA9-80B6-43C8-A79A-FB1C5F19E7D8}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{0f872661-c863-47a4-863f-c065c182858a}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{0f872661-c863-47a4-863f-c065c182858a}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{da82e55e-fa2f-45b3-aec3-e7294106ef52}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{da82e55e-fa2f-45b3-aec3-e7294106ef52}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{e9de26a1-51b2-47b4-b1bf-c87059cc02a7}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{e9de26a1-51b2-47b4-b1bf-c87059cc02a7}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{2692D1F2-2C7C-4AE0-8E73-8F37736C912D}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{2692D1F2-2C7C-4AE0-8E73-8F37736C912D}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{5D5DD08F-A10E-4FEF-BCA7-E73E666FC66C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{5D5DD08F-A10E-4FEF-BCA7-E73E666FC66C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{EE15BBBB-9E60-4C52-ABCB-7540FF3DF6B3}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{EE15BBBB-9E60-4C52-ABCB-7540FF3DF6B3}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{8D3F8F15-1DE1-4662-BF93-762EABE988B2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{8D3F8F15-1DE1-4662-BF93-762EABE988B2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{2B865677-AC3A-43BD-B9E7-BF6FCD3F0596}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{2B865677-AC3A-43BD-B9E7-BF6FCD3F0596}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{50487D09-FFA9-45E1-8DF5-D457F646CD83}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{50487D09-FFA9-45E1-8DF5-D457F646CD83}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{D32F7B3A-DEC8-4F44-AF28-E9B7FEB62118}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{D32F7B3A-DEC8-4F44-AF28-E9B7FEB62118}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{ACDB5DB0-C9D5-461C-BAAA-5DCE0B980E40}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{ACDB5DB0-C9D5-461C-BAAA-5DCE0B980E40}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\TypeLib\{909A6CCD-6810-46C4-89DF-05BE7EB61E6C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{10C9242E-D604-49B5-99E4-BF87945EF86C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{10C9242E-D604-49B5-99E4-BF87945EF86C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{F062BA81-ADFE-4A92-886A-23FD851D6406}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{F062BA81-ADFE-4A92-886A-23FD851D6406}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{3A4E62AE-45D9-41D5-85F5-A45B77AB44E5}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{3A4E62AE-45D9-41D5-85F5-A45B77AB44E5}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{390AF5A7-1390-4255-9BC9-935BFCFA5D57}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{390AF5A7-1390-4255-9BC9-935BFCFA5D57}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{1196AE48-D92B-4BC7-85DE-664EC3F761F1}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{1196AE48-D92B-4BC7-85DE-664EC3F761F1}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{D0ED5C72-6197-4AAD-9B16-53FE461DD85C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{D0ED5C72-6197-4AAD-9B16-53FE461DD85C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{AF60000F-661D-472A-9588-F062F6DB7A0E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{AF60000F-661D-472A-9588-F062F6DB7A0E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{5d65dd0d-81bf-4ff4-aeea-6effb445cb3f}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{5d65dd0d-81bf-4ff4-aeea-6effb445cb3f}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{b5c25645-7426-433f-8a5f-42b7ff27a7b2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{b5c25645-7426-433f-8a5f-42b7ff27a7b2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{f0440f4e-4884-4a8F-8a45-ba89c00f96f2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{f0440f4e-4884-4a8F-8a45-ba89c00f96f2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{0776ae27-5ab9-4e18-9063-1836da63117a}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{0776ae27-5ab9-4e18-9063-1836da63117a}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{1b7aed4f-fcaf-4da4-8795-c03e635d8edc}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{1b7aed4f-fcaf-4da4-8795-c03e635d8edc}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{0d4e4444-cb20-4c2b-b8b2-94e5656ecae8}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{0d4e4444-cb20-4c2b-b8b2-94e5656ecae8}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{d8c80ebb-099c-4208-afa3-fbc4d11f8a3c}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{d8c80ebb-099c-4208-afa3-fbc4d11f8a3c}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{C2FE84F5-E036-4A07-950C-9BFD3EAB983A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{C2FE84F5-E036-4A07-950C-9BFD3EAB983A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{8B9F14F4-9559-4A3F-B7D0-312E992B6D98}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{8B9F14F4-9559-4A3F-B7D0-312E992B6D98}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{22A68885-0FD9-42F6-9DED-4FB174DC7344}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{22A68885-0FD9-42F6-9DED-4FB174DC7344}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{a7126d4c-f492-4eb9-8a2a-f673dbdd3334}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{a7126d4c-f492-4eb9-8a2a-f673dbdd3334}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{c1439245-96b4-47fc-b391-679386c5d40f}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{c1439245-96b4-47fc-b391-679386c5d40f}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{944903E8-B03F-43A0-8341-872200D2DA9C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{944903E8-B03F-43A0-8341-872200D2DA9C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{B54E7079-90C9-4C62-A6B8-B2834C33A04A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{B54E7079-90C9-4C62-A6B8-B2834C33A04A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{1B71F23B-E61F-45C9-83BA-235D55F50CF9}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{1B71F23B-E61F-45C9-83BA-235D55F50CF9}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{049FED7E-C3EA-4B66-9D92-10E8085D60FB}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{049FED7E-C3EA-4B66-9D92-10E8085D60FB}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{2387C6BD-9A36-41A2-88ED-FF731E529384}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{2387C6BD-9A36-41A2-88ED-FF731E529384}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{EA23A664-A558-4548-A8FE-A6B94D37C3CF}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{EA23A664-A558-4548-A8FE-A6B94D37C3CF}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{2F12C599-7AA5-407A-B898-09E6E4ED2D1E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{2F12C599-7AA5-407A-B898-09E6E4ED2D1E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{2EB31403-EBE0-41EA-AE91-A1953104EA55}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{2EB31403-EBE0-41EA-AE91-A1953104EA55}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{AEEBAD4E-3E0A-415B-9B94-19C499CD7B6A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{AEEBAD4E-3E0A-415B-9B94-19C499CD7B6A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{fac14b75-7862-4ceb-be41-f53945a61c17}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{fac14b75-7862-4ceb-be41-f53945a61c17}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\TypeLib\{BAE13F6C-0E2A-4DEB-AA46-B8F55319347C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{466F31F7-9892-477E-B189-FA5C59DE3603}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{466F31F7-9892-477E-B189-FA5C59DE3603}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{869BDA08-7ACF-42B8-91AE-4D8D597C0B33}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{869BDA08-7ACF-42B8-91AE-4D8D597C0B33}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{679EC955-75AA-4FB2-A7ED-8C0152ECF409}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{679EC955-75AA-4FB2-A7ED-8C0152ECF409}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{BBACC218-34EA-4666-9D7A-C78F2274A524}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{BBACC218-34EA-4666-9D7A-C78F2274A524}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{5AB7172C-9C11-405C-8DD5-AF20F3606282}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{5AB7172C-9C11-405C-8DD5-AF20F3606282}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{A78ED123-AB77-406B-9962-2A5D9D2F7F30}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{A78ED123-AB77-406B-9962-2A5D9D2F7F30}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{A0396A93-DC06-4AEF-BEE9-95FFCCAEF20E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{A0396A93-DC06-4AEF-BEE9-95FFCCAEF20E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{F241C880-6982-4CE5-8CF7-7085BA96DA5A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{F241C880-6982-4CE5-8CF7-7085BA96DA5A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{9AA2F32D-362A-42D9-9328-24A483E2CCC3}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{9AA2F32D-362A-42D9-9328-24A483E2CCC3}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{C5FF006E-2AE9-408C-B85B-2DFDD5449D9C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{C5FF006E-2AE9-408C-B85B-2DFDD5449D9C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{7AFDFDDB-F914-11E4-8377-6C3BE50D980C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{7AFDFDDB-F914-11E4-8377-6C3BE50D980C}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{82CA8DE3-01AD-4CEA-9D75-BE4C51810A9E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{82CA8DE3-01AD-4CEA-9D75-BE4C51810A9E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{1BF42E4C-4AF4-4CFD-A1A0-CF2960B8F63E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{1BF42E4C-4AF4-4CFD-A1A0-CF2960B8F63E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{20894375-46AE-46E2-BAFD-CB38975CDCE6}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{20894375-46AE-46E2-BAFD-CB38975CDCE6}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{0827D883-485C-4D62-BA2C-A332DBF3D4B0}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{0827D883-485C-4D62-BA2C-A332DBF3D4B0}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{CB3D0F55-BC2C-4C1A-85ED-23ED75B5106B}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{CB3D0F55-BC2C-4C1A-85ED-23ED75B5106B}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\ FileSyncEx" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Directory\Background\shellex\ContextMenuHandlers\ FileSyncEx" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Directory\shellex\ContextMenuHandlers\ FileSyncEx" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\IE.AssocFile.URL\shellex\ContextMenuHandlers\ FileSyncEx" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\lnkfile\shellex\ContextMenuHandlers\ FileSyncEx" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{021E4F06-9DCC-49AD-88CF-ECC2DA314C8A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{021E4F06-9DCC-49AD-88CF-ECC2DA314C8A}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{31508CC7-9BC7-494B-9D0F-7B1C7F144182}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{31508CC7-9BC7-494B-9D0F-7B1C7F144182}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\TypeLib\{C9F3F6BB-3172-4CD8-9EB7-37C9BE601C87}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\SyncEngineFileInfoProvider.SyncEngineFileInfoProvider.1" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\SyncEngineFileInfoProvider.SyncEngineFileInfoProvider" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{71DCE5D6-4B57-496B-AC21-CD5B54EB93FD}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{71DCE5D6-4B57-496B-AC21-CD5B54EB93FD}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\OOBERequestHandler.OOBERequestHandler.1" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\OOBERequestHandler.OOBERequestHandler" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{94269C4E-071A-4116-90E6-52E557067E4E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{94269C4E-071A-4116-90E6-52E557067E4E}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\TypeLib\{082D3FEC-D0D0-4DF6-A988-053FECE7B884}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{389510b7-9e58-40d7-98bf-60b911cb0ea9}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{389510b7-9e58-40d7-98bf-60b911cb0ea9}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{4410DC33-BC7C-496B-AA84-4AEA3EEE75F7}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{4410DC33-BC7C-496B-AA84-4AEA3EEE75F7}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{B05D37A9-03A2-45CF-8850-F660DF0CBF07}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{B05D37A9-03A2-45CF-8850-F660DF0CBF07}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{53de12aa-df96-413d-a25e-c75b6528abf2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{53de12aa-df96-413d-a25e-c75b6528abf2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{A926714B-7BFC-4D08-A035-80021395FFA8}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{A926714B-7BFC-4D08-A035-80021395FFA8}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{6A821279-AB49-48F8-9A27-F6C59B4FF024}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{6A821279-AB49-48F8-9A27-F6C59B4FF024}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{A91EFACB-8B83-4B84-B797-1C8CF3AB3DCB}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{A91EFACB-8B83-4B84-B797-1C8CF3AB3DCB}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\Interface\{C47B67D4-BA96-44BC-AB9E-1CAC8EEA9E93}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\Interface\{C47B67D4-BA96-44BC-AB9E-1CAC8EEA9E93}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{4410DC33-BC7C-496B-AA84-4AEA3EEE75F7}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{4410DC33-BC7C-496B-AA84-4AEA3EEE75F7}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\CLSID\{9489FEB2-1925-4D01-B788-6D912C70F7F2}" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\WOW6432Node\CLSID\{9489FEB2-1925-4D01-B788-6D912C70F7F2}" /f - -reg delete "HKU\%~1\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION" /v "OneDrive.exe" /f - -reg delete "HKU\%~1\SOFTWARE\Classes\odopen" /f - -reg delete "HKU\%~1\SOFTWARE\Microsoft\SkyDrive" /f - -reg delete "HKU\%~1\SOFTWARE\SyncEngines\Providers\OneDrive" /f - -for /f "usebackq delims=" %%E in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /i /c:"OneDrive"`) do reg delete "%%E" /f - -::reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\OneDriveSetup.exe" /f - -@echo OFF \ No newline at end of file diff --git a/src-21H2-22H2/Executables/OldClassicCalc-2.0-setup.exe b/src-21H2-22H2/Executables/OldClassicCalc-2.0-setup.exe deleted file mode 100644 index 2a0e848..0000000 Binary files a/src-21H2-22H2/Executables/OldClassicCalc-2.0-setup.exe and /dev/null differ diff --git a/src-21H2-22H2/Executables/OpenShellSetup_4_4_170.exe b/src-21H2-22H2/Executables/OpenShellSetup_4_4_170.exe deleted file mode 100644 index 811ff13..0000000 Binary files a/src-21H2-22H2/Executables/OpenShellSetup_4_4_170.exe and /dev/null differ diff --git a/src-21H2-22H2/Executables/PERM.bat b/src-21H2-22H2/Executables/PERM.bat deleted file mode 100644 index d07e0ab..0000000 --- a/src-21H2-22H2/Executables/PERM.bat +++ /dev/null @@ -1,8 +0,0 @@ -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorAdmin /t REG_DWORD /d 00000005 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ConsentPromptBehaviorUser /t REG_DWORD /d 00000003 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableInstallerDetection /t REG_DWORD /d 00000001 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableLUA /t REG_DWORD /d 00000001 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableVirtualization /t REG_DWORD /d 00000001 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v PromptOnSecureDesktop /t REG_DWORD /d 00000001 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v ValidateAdminCodeSignatures /t REG_DWORD /d 00000000 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v FilterAdministratorToken /t REG_DWORD /d 00000000 /f \ No newline at end of file diff --git a/src-21H2-22H2/Executables/REGI.bat b/src-21H2-22H2/Executables/REGI.bat deleted file mode 100644 index 043e185..0000000 --- a/src-21H2-22H2/Executables/REGI.bat +++ /dev/null @@ -1,440 +0,0 @@ -@echo OFF - -for /f "usebackq delims=" %%A in (`dir /b /a:d "%SYSTEMDRIVE%\Users" ^| findstr /V /I /X /c:"Public" /c:"Default User" /c:"All Users"`) do ( - for /f "usebackq tokens=2 delims=\" %%B in (`reg query "HKEY_USERS" ^| findstr /c:"S-"`) do ( - for /f "usebackq tokens=2* delims= " %%C in (`reg query "HKU\%%B\Volatile Environment" /v "USERPROFILE" 2^>^&1 ^| findstr /R /X /C:".*USERPROFILE[ ]*REG_SZ[ ].*"`) do ( - REM IF errorlevel 5 CMD /C "exit /b 5" - if /i "%SYSTEMDRIVE%\Users\%%A"=="%%D" cmd /c "exit /b 5" - ) - ) - if not errorlevel 5 ( - reg query "HKEY_USERS" | findstr /c:"AME_UserHive_" - if not errorlevel 1 ( - for /f "usebackq tokens=1 delims=:" %%D in (`echo :^>NUL ^& ^(reg query "HKEY_USERS" ^| findstr /c:"AME_UserHive_" ^& echo AME-Placeholder^) ^| findstr /N /c:"AME-Placeholder"`) do ( - if exist "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" ( - if /i "%%A"=="Default" ( - echo reg load "HKU\AME_UserHive_Default" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" - reg load "HKU\AME_UserHive_Default" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" - ) else ( - echo reg load "HKU\AME_UserHive_%%D" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" - reg load "HKU\AME_UserHive_%%D" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" - - if exist "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\Windows\UsrClass.dat" ( - echo reg load "HKU\AME_UserHive_%%D_Classes" "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\Windows\UsrClass.dat" - reg load "HKU\AME_UserHive_%%D_Classes" "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\Windows\UsrClass.dat" - ) - ) - ) - ) - ) else ( - if exist "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" ( - if /i "%%A"=="Default" ( - echo reg load "HKU\AME_UserHive_Default" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" - reg load "HKU\AME_UserHive_Default" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" - ) else ( - echo reg load "HKU\AME_UserHive_1" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" - reg load "HKU\AME_UserHive_1" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" - - if exist "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\Windows\UsrClass.dat" ( - echo reg load "HKU\AME_UserClassesHive_1_Classes" "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\Windows\UsrClass.dat" - reg load "HKU\AME_UserClassesHive_1_Classes" "%SYSTEMDRIVE%\Users\%%A\AppData\Local\Microsoft\Windows\UsrClass.dat" - ) - ) - ) - ) - ) else ( - cmd /c "exit /b 0" - ) -) - -for /f "usebackq tokens=2 delims=\" %%E in (`reg query "HKEY_USERS" ^| findstr /c:"S-" /c:"AME_UserHive_"`) do ( - REM If the "Volatile Environment" key exists, that means it is a proper user. Built in accounts/SIDs don't have this key. - reg query "HKU\%%E" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1 - if not errorlevel 1 ( - call :REGICALL "%%E" - ) -) -@echo ON - -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection" /v AllowTelemetry /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection" /v AllowTelemetry /t REG_DWORD /d 0 /f -reg add "HKLM\SYSTEM\CurrentControlSet\Control\WMI\AutoLogger\AutoLogger-Diagtrack-Listener" /v "Start" /t REG_DWORD /d 0 /f -reg add "HKLM\SYSTEM\CurrentControlSet\Control\WMI\AutoLogger\SQMLogger" /v "Start" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config" /v DownloadMode /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\SettingSync" /v DisableSettingSync /t REG_DWORD /d 2 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\SettingSync" /v DisableSettingSyncUserOverride /t REG_DWORD /d 1 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" /v DisabledByGroupPolicy /t REG_DWORD /d 1 /f - -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\EnhancedStorageDevices" /v TCGSecurityActivationDisabled /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\OneDrive" /v DisableFileSyncNGSC /t REG_DWORD /d 1 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\safer\codeidentifiers" /v authenticodeenabled /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Error Reporting" /v DontSendAdditionalData /t REG_DWORD /d 1 /f -reg add "HKLM\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting" /v value /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots" /v value /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\CurrentVersion\Software Protection Platform" /v NoGenTicket /t REG_DWORD /d 1 /f - -:: Remove SecurityHealth from startup -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "SecurityHealth" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run" /v "SecurityHealth" /f - -:: Turns off Windows blocking installation of files downloaded from the internet -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Attachments" /v SaveZoneInformation /t REG_DWORD /d 1 /f - -:: Disables SmartScreen -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" /v SmartScreenEnabled /t REG_SZ /d "Off" /f - -:: Remove Metadata Tracking -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Device Metadata" /f - -:: New Control Panel cleanup - List of commands: https://winaero.com/ms-settings-commands-in-windows-10/ -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v SettingsPageVisibility /t REG_SZ /d "showonly:display;nightlight;sound;notifications;quiethours;powersleep;batterysaver;tabletmode;multitasking;clipboard;remote-desktop;about;bluetooth;connecteddevices;printers;mousetouchpad;devices-touchpad;typing;pen;autoplay;usb;network-status;network-cellular;network-wifi;network-wificalling;network-wifisettings;network-ethernet;network-dialup;network-vpn;network-airplanemode;network-mobilehotspot;datausage;network-proxy;personalization-background;personalization-start;fonts;personalization-colors;colors;lockscreen;themes;taskbar;defaultapps;videoplayback;startupapps;dateandtime;regionformatting;gaming;gamemode;easeofaccess-display;easeofaccess-colorfilter;easeofaccess-audio;easeofaccess-easeofaccess-narrator;easeofaccess-magnifier;easeofaccess-highcontrast;easeofaccess-closedcaptioning;easeofaccess-speechrecognition;easeofaccess-eyecontrol;easeofaccess-keyboard;easeofaccess-mouse" /f - -:: Decrease shutdown time -reg add "HKLM\SYSTEM\CurrentControlSet\Control" /v WaitToKillServiceTimeout /t REG_SZ /d 2000 /f -reg add "HKLM\SYSTEM\CurrentControlSet\Control" /v HungAppTimeout /t REG_SZ /d 2000 /f -reg add "HKLM\SYSTEM\CurrentControlSet\Control" /v AutoEndTasks /t REG_SZ /d 1 /f - -:: Clean up the This PC Icon Selection -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{088e3905-0323-4b02-9826-5d99428e115f}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{1CF1260C-4DD0-4ebb-811F-33C572699FDE}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{24ad3ad4-a569-4530-98e1-ab02f9417aa8}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{374DE290-123F-4565-9164-39C4925E467B}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{3ADD1653-EB32-4cb0-BBD7-DFA0ABB5ACCA}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{3dfdf296-dbec-4fb4-81d1-6a3438bcf4de}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{A0953C92-50DC-43bf-BE83-3742FED03C9C}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{A8CDFF1C-4878-43be-B5FD-F8091C1C60D0}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{d3162b92-9365-467a-956b-92703aca08af}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}" /f - -:: Disable Windows Error Reporting -reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d /1 /f - -:: Enables full drive indexing (Enhanced Search) -NSudoLC -U:S -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg add "HKLM\SOFTWARE\Microsoft\Windows Search\Gather\Windows\SystemIndex" /v "EnableFindMyFiles" /t REG_DWORD /d 1 /f - -:: Search -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "DisableWebSearch" /t REG_DWORD /d 1 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "ConnectedSearchUseWeb" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "AllowIndexingEncryptedStoresOrItems" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "AllowSearchToUseLocation" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "AlwaysUseAutoLangDetection" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "AllowCortana" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "DisableWebSearch" /t REG_DWORD /d 1 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "ConnectedSearchUseWeb" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "ConnectedSearchUseWebOverMeteredConnections" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search" /v "AllowCloudSearch" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Microsoft\Speech_OneCore\Preferences" /v "VoiceActivationDefaultOn" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Microsoft\Speech_OneCore\Preferences" /v "VoiceActivationEnableAboveLockscreen" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Microsoft\Speech_OneCore\Preferences" /v "ModelDownloadAllowed" /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE" /v "DisableVoice" /t REG_DWORD /d 1 /f - -:: Firewall rules to prevent the startmenu from talking -reg add "HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules" /v "Block Search SearchApp.exe" /t REG_SZ /d "v2.30|Action=Block|Active=TRUE|Dir=Out|RA42=IntErnet|RA62=IntErnet|App=C:\Windows\SystemApps\Microsoft.Windows.Search_cw5n1h2txyewy\SearchApp.exe|Name=Block Search SearchUI.exe|Desc=Block Cortana Outbound UDP/TCP Traffic|" /f -::reg add "HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules" /v "Block Search Package" /t REG_SZ /d "v2.30|Action=Block|Active=TRUE|Dir=Out|RA42=IntErnet|RA62=IntErnet|Name=Block Search Package|Desc=Block Search Outbound UDP/TCP Traffic|AppPkgId=S-1-15-2-536077884-713174666-1066051701-3219990555-339840825-1966734348-1611281757|Platform=2:6:2|Platform2=GTEQ|" /f - -:: Disable Timeline -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\System" /v "EnableActivityFeed" /t REG_DWORD /d 0 /f - -:: Setup Windows Explorer -reg delete "HKEY_CLASSES_ROOT\CABFolder\CLSID" /f -reg delete "HKEY_CLASSES_ROOT\SystemFileAssociations\.cab\CLSID" /f -reg delete "HKEY_CLASSES_ROOT\CompressedFolder\CLSID" /f -reg delete "HKEY_CLASSES_ROOT\SystemFileAssociations\.zip\CLSID" /f - -:: Taskbar -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ImmersiveShell" /v UseActionCenterExperience /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v HideSCAHealth /t REG_DWORD /d 0x1 /f - -:: Remove the Open with Paint 3D from the explorer context menu -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.bmp\Shell\3D Edit" /f -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.jpeg\Shell\3D Edit" /f -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.jpe\Shell\3D Edit" /f -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.jpg\Shell\3D Edit" /f -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.jpg\Shell\3D Edit" /f -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.png\Shell\3D Edit" /f -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.gif\Shell\3D Edit" /f -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.tif\Shell\3D Edit" /f -reg delete "HKLM\SOFTWARE\Classes\SystemFileAssociations\.tiff\Shell\3D Edit" /f - - -:: Remove OneDrive from the Explorer Side Panel -reg delete "HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" /f -reg delete "HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}" /f - -:: Disable ActiveProbing/NCSI -:: reg add "HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet" /v EnableActiveProbing /t REG_DWORD /d 0 /f - -:: smb config -sc config lanmanworkstation depend= bowser/mrxsmb20/nsi - -:: Set Time reference to UTC -reg add "HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /t REG_DWORD /d 1 /f - -:: Disable Users On Login Screen -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v dontdisplaylastusername /t REG_DWORD /d 1 /f - -:: Disable The Lock Screen -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Personalization" /v NoLockScreen /t REG_DWORD /d 1 /f - -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\DataCollection" /v AllowTelemetry /t REG_DWORD /d 0 /f - -:: Prevent NVCP not found message after installing NVIDIA drivers -reg add "HKLM\System\CurrentControlSet\Services\nvlddmkm" /f -reg add "HKLM\System\CurrentControlSet\Services\nvlddmkm\Global" /f -reg add "HKLM\System\CurrentControlSet\Services\nvlddmkm\Global\NVTweak" /f -reg add "HKLM\System\CurrentControlSet\Services\nvlddmkm\Global\NVTweak" /v "DisableStoreNvCplNotifications" /t REG_DWORD /d 1 /f - -:: Improve new user login experience -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\OOBE" /v DisablePrivacyExperience /t REG_DWORD /d 1 /f > NUL 2>&1 -reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableFirstLogonAnimation /t REG_DWORD /d 0 /f > NUL 2>&1 - -:: Remove Windows Contacts showing up in default apps in W11 -reg delete "HKCR\certificate_wab_auto_file" /f -reg delete "HKCR\wab_auto_file" /f -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg delete "HKCR\contact_wab_auto_file" /f -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg delete "HKCR\group_wab_auto_file" /f -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg delete "HKCR\vcard_wab_auto_file" /f -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg delete "HKCR\WAB.AssocProtocol.LDAP" /f - -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg delete "HKCR\TIFImage.Document" /f -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg delete "HKCR\PhotoViewer.FileAssoc.Tiff" /f - -:: Remove Windows Media Player from default apps list -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait CMD /c "for /f "usebackq delims=" %%A in (`reg query "HKCR" /f "WMP11*" ^| findstr /c:"WMP11"`) do reg delete "%%A" /f" -@echo off -for /f "usebackq delims=" %%A in (`reg query "HKCR" /k /f "AppX" ^| findstr /c:"AppX"`) do ( - reg query "%%A" /v "" | findstr /c:"DesktopStickerEditorCentennial" /c:"LogonWebHost" > NUL - if not errorlevel 1 ( - echo reg delete "%%A" /f - reg delete "%%A" /f - ) -) -@echo on - -:: Make Ti explorer nicer -reg add "HKU\S-1-5-18\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "SearchboxTaskbarMode" /t REG_DWORD /d 0 /f -reg add "HKU\S-1-5-18\SOFTWARE\Policies\Microsoft\Windows\Explorer" /v DisableNotificationCenter /t REG_DWORD /d 1 /f -reg add "HKU\S-1-5-18\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowCortanaButton /t REG_DWORD /d 0 /f -reg add "HKU\S-1-5-18\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowTaskViewButton /t REG_DWORD /d 0 /f - -:: Disable News and Interests -reg add "HKLM\SOFTWARE\Microsoft\PolicyManager\default\NewsAndInterests" /v AllowNewsAndInterests /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Dsh" /v AllowNewsAndInterests /t REG_DWORD /d 0 /f -reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" /v EnableFeeds /t REG_DWORD /d 0 /f - -:: Removes MpOAV.dll link -::NSudoLC -U:T -P:E -M:S -Priority:RealTime -Wait reg delete "HKCR\CLSID\{2781761E-28E0-4109-99FE-B9D127C57AFE}\InprocServer32" /f - -:: Fix black screen issue with new users -:: start NSudoLC -U:T -P:E -M:S -Priority:RealTime -Wait reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore" /f - -:: Enable Legacy F8 Bootmenu -bcdedit /set {default} bootmenupolicy legacy -:: Disable Recovery -bcdedit /set {current} recoveryenabled no - -:: Disable Hibernation to make NTFS accessable outside of Windows -powercfg /h off -:: Set Performance Plan to High Performance and display to never turn off -powercfg /S 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c -powercfg /change monitor-timeout-ac 0 - -@exit /b 0 - -:REGICALL - -@echo ON - -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\AdvertisingInfo" /v Enabled /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\AppHost" /v EnableWebContentEvaluation /t REG_DWORD /d 0 /f -reg add "HKU\%~1\Control Panel\International\User Profile" /v HttpAcceptLanguageOptOut /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR" /v AppCaptureEnabled /t REG_DWORD /d 0 /f -reg add "HKU\%~1\System\GameConfigStore" /v GameDVR_Enabled /t REG_DWORD /d 0 /f - -:: Autorun -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoDriveTypeAutoRun /t REG_DWORD /d 181 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers" /v DisableAutoplay /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v NoAutorun /t REG_DWORD /d 1 /f - -:: Adobe Security Improvements -reg add "HKU\%~1\SOFTWARE\Adobe" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\JSPrefs" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\JSPrefs" /v "bEnableJS" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\Originals" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\Originals" /v "bAllowOpenFile" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\Originals" /v "bSecureOpenFile" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\Privileged" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\Privileged" /v "bProtectedMode" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\TrustManager" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\TrustManager" /v "iProtectedView" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\TrustManager" /v "bEnhancedSecurityInBrowser" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\DC\TrustManager" /v "bEnhancedSecurityStandalone" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\JSPrefs" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\JSPrefs" /v "bEnableJS" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\Originals" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\Originals" /v "bAllowOpenFile" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\Originals" /v "bSecureOpenFile" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\Privileged" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\Privileged" /v "bProtectedMode" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\TrustManager" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\TrustManager" /v "iProtectedView" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\TrustManager" /v "bEnhancedSecurityInBrowser" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Adobe\Acrobat Reader\XI\TrustManager" /v "bEnhancedSecurityStandalone" /t REG_DWORD /d 1 /f - -:: Office Security Improvements -reg add "HKU\%~1\SOFTWARE\Microsoft\Office" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Excel" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Excel\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Excel\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Excel\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Excel\Security" /v "WorkbookLinkWarnings" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\PowerPoint" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\PowerPoint\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\PowerPoint\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\PowerPoint\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Word" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Word\Options" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Word\Options\vpref" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Word\Options\vpref" /v "fNoCalclinksOnopen_90_1" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Word\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Word\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\12.0\Word\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Excel" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Excel\Options" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Excel\Options" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Excel\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Excel\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Excel\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Excel\Security" /v "WorkbookLinkWarnings" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\PowerPoint" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\PowerPoint\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\PowerPoint\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\PowerPoint\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word\Options" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word\Options" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word\Options\WordMail" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word\Options\WordMail" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\14.0\Word\Security" /v "AllowDDE" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Excel" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Excel\Options" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Excel\Options" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Excel\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Excel\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Excel\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Excel\Security" /v "WorkbookLinkWarnings" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\PowerPoint" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\PowerPoint\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\PowerPoint\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\PowerPoint\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word\Options" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word\Options" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word\Options\WordMail" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word\Options\WordMail" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\15.0\Word\Security" /v "AllowDDE" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Excel" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Excel\Options" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Excel\Options" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Excel\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Excel\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Excel\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Excel\Security" /v "WorkbookLinkWarnings" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\PowerPoint" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\PowerPoint\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\PowerPoint\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\PowerPoint\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word\Options" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word\Options" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word\Options\WordMail" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word\Options\WordMail" /v "DontUpdateLinks" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word\Security" /v "PackagerPrompt" /t REG_DWORD /d 2 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word\Security" /v "VBAWarnings" /t REG_DWORD /d 4 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\16.0\Word\Security" /v "AllowDDE" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\Common" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\Common\Security" /t REG_SZ /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Office\Common\Security" /v "DisableAllActiveX" /t REG_DWORD /d 1 /f - -:: Turns off Windows blocking installation of files downloaded from the internet -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Attachments" /v SaveZoneInformation /t REG_DWORD /d 1 /f - -:: Disables SmartScreen -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\AppHost" /v ContentEvaluation /t REG_DWORD /d 0 /f - -:: Decrease shutdown time -reg add "HKU\%~1\Control Panel\Desktop" /v WaitToKillAppTimeOut /t REG_SZ /d 2000 /f - -:: Disable Storage Sense -reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\StorageSense" /f - -:: Search -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "SearchboxTaskbarMode" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "BingSearchEnabled" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "CortanaConsent" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "CortanaInAmbientMode" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "HistoryViewEnabled" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "HasAboveLockTips" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "AllowSearchToUseLocation" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\SearchSettings" /v "SafeSearchMode" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Policies\Microsoft\Windows\Explorer" /v "DisableSearchBoxSuggestions" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\InputPersonalization" /v "RestrictImplicitTextCollection" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\InputPersonalization" /v "RestrictImplicitInkCollection" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore" /v "AcceptedPrivacyPolicy" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore" /v "HarvestContacts" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Personalization\Settings" /v "AcceptedPrivacyPolicy" /t REG_DWORD /d 0 /f - -:: Setup Windows Explorer -:: Removes the shake to minimze all other windows gesture -::reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "DisallowShaking" /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "NavPaneShowAllFolders" /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v LaunchTo /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v Hidden /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /V TaskbarGlomLevel /T REG_DWORD /D 2 /F -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "TaskbarDa" /t REG_DWORD /D 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "TaskbarAl" /t REG_DWORD /D 0 /f - -:: Taskbar -reg add "HKU\%~1\SOFTWARE\Policies\Microsoft\Windows\Explorer" /v DisableNotificationCenter /t REG_DWORD /d 1 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowCortanaButton /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowTaskViewButton /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" /v EnableAutoTray /t REG_DWORD /d 0 /f -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v HideSCAMeetNow /t REG_DWORD /d 1 /f -:: W11 Chat item -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v TaskbarMn /t REG_DWORD /d 0 /f - -:: Disable Security and Maintenance notifications -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Notifications\Settings\Windows.SystemToast.SecurityAndMaintenance" /v "Enabled" /t REG_DWORD /d 0 /f -:: Disable configue backup notifications -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Notifications\Settings\Windows.SystemToast.BackupReminder" /v "Enabled" /t REG_DWORD /d 0 /f -:: Disable "Let's Finish Setting Up Your Device" OOBE screen -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "SubscribedContent-310093Enabled" /t REG_DWORD /d 0 /f - -:: Disable item checkboxes -reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "AutoCheckSelect" /t REG_DWORD /d 0 /f - -@echo OFF -if "%~1"=="AME_UserHive_Default" ( - echo copy /y "UsrClass.dat" "%SYSTEMDRIVE%\Users\Default\AppData\Local\Microsoft\Windows" - copy /y "UsrClass.dat" "%SYSTEMDRIVE%\Users\Default\AppData\Local\Microsoft\Windows" -:: echo reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v "AME New User Msg" /t REG_EXPAND_SZ /d "msg """"%%username%%"""" Warning: Creating a new user after amelioration is not fully supported. The settings app will not work and certain UI elements will be broken." /f -:: reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v "AME New User Msg" /t REG_EXPAND_SZ /d "msg """"%%username%%"""" Warning: Creating a new user after amelioration is not fully supported. The settings app will not work and certain UI elements will be broken." /f -) -@exit /b 0 \ No newline at end of file diff --git a/src-21H2-22H2/Executables/Thumbs.db b/src-21H2-22H2/Executables/Thumbs.db deleted file mode 100644 index c62dcb7..0000000 Binary files a/src-21H2-22H2/Executables/Thumbs.db and /dev/null differ diff --git a/src-21H2-22H2/Executables/UPDATES.bat b/src-21H2-22H2/Executables/UPDATES.bat deleted file mode 100644 index 4812f42..0000000 --- a/src-21H2-22H2/Executables/UPDATES.bat +++ /dev/null @@ -1,4 +0,0 @@ -DISM.exe /Online /Remove-Package /PackageName:Package_for_RollupFix~31bf3856ad364e35~amd64~~19041.1645.1.11 /quiet /norestart -DISM.exe /Online /Remove-Package /PackageName:Package_for_RollupFix~31bf3856ad364e35~amd64~~19041.1586.1.7 /quiet /norestart -sc config wuauserv start= disabled -sc stop wuauserv \ No newline at end of file diff --git a/src-21H2-22H2/Executables/UPDHEALTH.bat b/src-21H2-22H2/Executables/UPDHEALTH.bat deleted file mode 100644 index aa23969..0000000 --- a/src-21H2-22H2/Executables/UPDHEALTH.bat +++ /dev/null @@ -1,31 +0,0 @@ -for /f "usebackq tokens=7 delims=\" %%E in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /d /f "Update Health Tools" /s ^| findstr /i /c:"CurrentVersion\Uninstall\\"`) do set "GUID=%%E" -for /f "usebackq tokens=4 delims=\" %%E in (`reg query "HKCR\Installer\Products" /d /f "Update Health Tools" /s ^| findstr /i /c:"Installer\Products\\"`) do set "ProdID=%%E" - -if "%GUID%"=="" goto :Prod - -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%GUID%" /f - -:Prod - -if "%ProdID%"=="" exit /b 0 - -for /f "usebackq delims=" %%E in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UpgradeCodes" /d /f "%ProdID%" /s ^| findstr /i /c:"Installer\UpgradeCodes\\"`) do reg delete "%%E" /f - -reg delete "HKCR\Installer\Products\%ProdID%" /f -reg delete "HKCR\Installer\Features\%ProdID%" /f -for /f "usebackq delims=" %%E in (`reg query "HKCR\Installer\UpgradeCodes" /d /f "%ProdID%" /s ^| findstr /i /c:"Installer\UpgradeCodes\\"`) do reg delete "%%E" /f - -for /f "usebackq delims=" %%E in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components" /d /f "%ProdID%" /s ^| findstr /i /c:"S-1-5-18\Components\\"`) do reg delete "%%E" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\%ProdID%" /f - -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\UpdateHealthTools" /f -reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\rempl" /f -reg delete "HKLM\SOFTWARE\Microsoft\CloudManagedUpdate" /f - -SETLOCAL ENABLEDELAYEDEXPANSION -for /f "usebackq delims=" %%E in (`PowerShell -NoP -C "(Get-Item 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders').Property" ^| findstr /i /c:"Update Health Tools"`) do ( - set "var=%%E" - if "!var:~-1!"=="\" set "var=%%E\" - reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders" /v "!var!" /f -) -ENDLOCAL \ No newline at end of file diff --git a/src-21H2-22H2/Executables/WINTERM.bat b/src-21H2-22H2/Executables/WINTERM.bat deleted file mode 100644 index 5905dd1..0000000 --- a/src-21H2-22H2/Executables/WINTERM.bat +++ /dev/null @@ -1,2 +0,0 @@ - -@PowerShell -NoP -ExecutionPolicy Bypass -File scoop.ps1 \ No newline at end of file diff --git a/src-21H2-22H2/playbook.conf b/src-21H2-22H2/playbook.conf deleted file mode 100644 index d089a3d..0000000 --- a/src-21H2-22H2/playbook.conf +++ /dev/null @@ -1,21 +0,0 @@ - - - Windows 11 - Ameliorated - Official AME Playbook for Windows 11 - Windows 11 Amelioration Playbook - The amelioration process makes heavy alterations to your installation. This Playbook assists you in quickly deploying AME with a default configuration. -
Ameliorated
- 0.3 - - 22000 - 22621 - - - Internet - NoPendingUpdates - Activation - DefenderDisabled - NoAntivirus - -
\ No newline at end of file diff --git a/src-21H2-22H2/playbook.png b/src-21H2-22H2/playbook.png deleted file mode 100644 index 10c6aa9..0000000 Binary files a/src-21H2-22H2/playbook.png and /dev/null differ diff --git a/src-SharedExecutables/Thumbs.db b/src-SharedExecutables/Thumbs.db deleted file mode 100644 index c62dcb7..0000000 Binary files a/src-SharedExecutables/Thumbs.db and /dev/null differ diff --git a/src-SharedExecutables/amecs.cmd b/src-SharedExecutables/amecs.cmd deleted file mode 100644 index 7acc2f7..0000000 --- a/src-SharedExecutables/amecs.cmd +++ /dev/null @@ -1,3948 +0,0 @@ -@ECHO OFF -GOTO SCRIPT-START -REM --------------------------DATABASE-------------------------- -REM DB-Languages -::1 |United States| |Chinese| |Hindi (Devanagari) Traditional| |Spanish| |French| -::2 |Arabic| |Russian| |Bangla| |Portuguese| |Albanian| -::3 |Amharic| |Armenian| |Assamese - Inscript| |Azerbaijani| |Bashkir| -::4 |Belarusian| |Belgian| |Bosnian (Cyrillic)| |Buginese| |Bulgarian| -::5 |Canadian| |Central Atlas Tamazight| |Central Kurdish| |Cherokee| |Croatian| -::6 |Czech| |Danish| |Divehi| |Dutch| |Dzongkha| -::7 |Estonian| |Faeroese| |Finnish| |Futhark| |Georgian| -::8 |German| |Gothic| |Greek| |Greenlandic| |Guarani| -::9 |Gujarati| |Hausa| |Hebrew| |Hungarian| |Icelandic| -::10 |Igbo| |Indian| |Inuktitut| |Irish| |Italian| -::11 |Japanese NON-FUNCTIONAL| |Javanese| |Kannada| |Kazakh| |Khmer| -::12 |Konkoni (Devanagari) - INSCRIPT| |Korean| |Kyrgyz Cyrillic| |Lao| |Latin American| -::13 |Latvian| |Lisu| |Lithuanian| |Luxembourgish| |Macedonia| -::14 |Malayalam| |Maltese| |Maori| |Marathi| |Mongolian| -::15 |Myanmar| |N'ko| |Nepali| |New Tai Lue| |Norwegian| -::16 |Odia| |Ol Chiki| |Old Italic| |Osmanya| |Pashto (Afghanistan)| -::17 |Persian| |Phags-pa| |Polish| |Punjabi| |Romanian| -::18 |Sakha| |Sami| |Scottish Gaelic| |Serbian| |Sesotho sa Leboa| -::19 |Setswana| |Sinhala| |Slovak| |Slovenian| |Sora| -::20 |Sorbian| |Swedish| |Swiss| |Syriac| |Tai Le| -::21 |Tajik| |Tamil| |Tatar| |Telugu| |Thai| -::22 |Tibetan| |Tifinagh| |Tigrinya| |Turkish| |Turkmen| -::23 |Uyghur| |Ukrainian| |United Kingdom| |Urdu| |Uzbek| -::24 |Vietnamese| |Wolof| |Yakut| |Yoruba| - - - - - - -REM DB-Corresponding Commands -::1 |US& GOTO KBLANG-SUBLANGS| |CHI& GOTO KBLANG-SUBLANGS| |0439:00010439| |SPA& GOTO KBLANG-SUBLANGS| |040c:0000040c| -::2 |ARA& GOTO KBLANG-SUBLANGS| |RUS& GOTO KBLANG-SUBLANGS| |BAN& GOTO KBLANG-SUBLANGS| |POR& GOTO KBLANG-SUBLANGS| |041c:0000041c| -::3 |045e:{E429B25A-E5D3-4D1F-9BE3-0C608477E3A1}{8F96574E-C86C-4bd6-9666-3F7327D4CBE8}| |ARM& GOTO KBLANG-SUBLANGS| |044d:0000044d| |AZ& GOTO KBLANG-SUBLANGS| |046d:0000046d| -::4 |0423:00000423| |BEL& GOTO KBLANG-SUBLANGS| |141a:00000201a| |0421:000b0c00| |BUL& GOTO KBLANG-SUBLANGS| -::5 |CAN& GOTO KBLANG-SUBLANGS| |085f:0000085f| |0429:00000429| |CHE& GOTO KBLANG-SUBLANGS| |041a:0000041a| -::6 |CZE& GOTO KBLANG-SUBLANGS| |0406:00000406| |DIV& GOTO KBLANG-SUBLANGS| |0413:00000413| |0C51:00000C51| -::7 |0425:00000425| |0438:00000438| |FIN& GOTO KBLANG-SUBLANGS| |0407:00120c00| |GEO& GOTO KBLANG-SUBLANGS| -::8 |GER& GOTO KBLANG-SUBLANGS| |0407:000c0c00| |GRE& GOTO KBLANG-SUBLANGS| |046f:0000046f| |0474:00000474| -::9 |0447:00000447| |0468:00000468| |040d:0000040d| |HUN& GOTO KBLANG-SUBLANGS| |040f:0000040f| -::10 |0470:00000470| |4009:00004009| |INU& GOTO KBLANG-SUBLANGS| |083C:000001809| |ITA& GOTO KBLANG-SUBLANGS| -::11 |0411:{03B5835F-F03C-411B-9CE2-AA23E1171E36}{A76C93D9-5523-4E90-AAFA-4DB112F9AC76}| |0421:00110c00| |044b:0000044b| |043f:0000043f| |KHM& GOTO KBLANG-SUBLANGS| -::12 |0457:00000439| |KOR& GOTO KBLANG-SUBLANGS| |0440:00000440| |0454:00000454| |080a:0000080a| -::13 |LAT& GOTO KBLANG-SUBLANGS| |LIS& GOTO KBLANG-SUBLANGS| |LIT& GOTO KBLANG-SUBLANGS| |046e:0000046e| |MAC& GOTO KBLANG-SUBLANGS| -::14 |044c:0000044c| |MAL& GOTO KBLANG-SUBLANGS| |0481:00000481| |044e:0000044e| |MON& GOTO KBLANG-SUBLANGS| -::15 |0455:00010c00| |0409:000090c00| |0461:00000461| |0409:00020c00| |NOR& GOTO KBLANG-SUBLANGS| -::16 |0448:00000448| |0409:d0c00| |0409:000f0c00| |0409:000e0c00| |0463:00000463| -::17 |PER& GOTO KBLANG-SUBLANGS| |0409:000a0c00| |POL& GOTO KBLANG-SUBLANGS| |0446:00000446| |ROM& GOTO KBLANG-SUBLANGS| -::18 |0485:00000485| |SAM& GOTO KBLANG-SUBLANGS| |0809:00011809| |SER& GOTO KBLANG-SUBLANGS| |046c:0000046c| -::19 |0432:00000432| |SIN& GOTO KBLANG-SUBLANGS| |SLO& GOTO KBLANG-SUBLANGS| |0424:00000424| |0409:00100c00| -::20 |SOR& GOTO KBLANG-SUBLANGS| |SWE& GOTO KBLANG-SUBLANGS| |SWI& GOTO KBLANG-SUBLANGS| |SYR& GOTO KBLANG-SUBLANGS| |0409:00030c00| -::21 |0428:00000428| |TAM& GOTO KBLANG-SUBLANGS| |TAT& GOTO KBLANG-SUBLANGS| |044a:0000044a| |THA& GOTO KBLANG-SUBLANGS| -::22 |TIB& GOTO KBLANG-SUBLANGS| |TIF& GOTO KBLANG-SUBLANGS| |0473:{E429B25A-E5D3-4D1F-9BE3-0C608477E3A1}{3CAB88B7-CC3E-46A6-9765-B772AD7761FF}| |TUR& GOTO KBLANG-SUBLANGS| |0442:00000442| -::23 |UYG& GOTO KBLANG-SUBLANGS| |UKR& GOTO KBLANG-SUBLANGS| |UK& GOTO KBLANG-SUBLANGS| |0420:00000420| |0843:00000843| -::24 |VIE& GOTO KBLANG-SUBLANGS| |0488:00000488| |0485:00000485| |046a:0000056a| - - - - - - -REM DB-Submenu Input Methods -:: |ARA| |Arabic (101)| |Arabic (102)| |Arabic (102 AZERTY)| -:: |ARM| |Armenian Eastern| |Armenian Phonetic| |Armenian Typewriter| |Armenian Western| -:: |AZE| |Azerbaijani (Standard)| |Azerbaijani Cyrillic| |Azerbaijani Latin| -:: |BEL| |Belgian (Comma)| |Belgian (Period)| |Belgian French| -:: |BAN| |Bangla (Bangladesh)| |Bangla (India)| |Bangla (India) - Legacy| -:: |BUL| |Bulgarian| |Bulgarian Latin| |Bulgarian (Phonetic Layout)| |Bulgarian (Phonetic Traditonal)| |Bulgarian (Typewriter)| -:: |CAN| |Canadian French| |Canadian French (Legacy)| |Canadian Multilingual Standard| -:: |CHE| |Cherokee Nation| |Cherokee Nation Phonetic| -:: |CHI| |Chineese (Simplified)| |Chineese (Traditional) NON-FUNCTIONAL| |Chineese (Traditional, Hong Kong S.A.R.)| |Chineese (Traditonal Macao S.A.R.)| |Chineese (Simplified, Singapore)| -:: |CZE| |Czech| |Czech (QWERTY)| |Czech Programmers| -:: |DIV| |Divehi Phonetic| |Divehi Typewriter| -:: |FIN| |Finnish| |Finnish with Sami| -:: |GEO| |Georgian| |Georgian (Ergonomic)| |Georgian (QWERTY)| |Georgian Ministry of Education and Science Schools| |Georgian (Old Alphabets)| -:: |GER| |German| |German (IBM)| -:: |GRE| |Greek| |Greek (220)| |Greek (220) Latin| |Greek (319)| |Greek (319) Latin| |Greek Latin| |Greek Polytonic| -:: |HUN| |Hungarian| |Hungarian 101-key| -:: |INU| |Inuktitut - Latin| |Inuktitut - Naqittaut| -:: |ITA| |Italian| |Italian (142)| -:: |KHM| |Khmer| |Khmer (NIDA)| -:: |KOR| |Korean (Hangul)| |Korean (Old Hangul)| -:: |LAT| |Latvian (Standard)| |Latvian (Legacy)| -:: |LIS| |Lisu (Basic)| |Lisu (Standard)| -:: |LIT| |Lithuanian| |Lithuanian IBM| |Lithuanian Standard| -:: |MAC| |Macedonian (FYROM)| |Macedonian (FYROM) - Standard| -:: |MAL| |Maltese 47-key| |Maltese 48-key| -:: |MON| |Mongoloian (Mongolian Script - Legacy)| |Mongolian (Mongolian Script - Standard)| |Mongolian Cyrillic| -:: |NOR| |Norwegian| |Norwegian with Sami| -:: |PER| |Persian| |Persian (Standard)| -:: |POL| |Polish (214)| |Polish (Programmers)| -:: |POR| |Portuguese| |Portuguese (Brazilian ABNT)| |Portuguese (Brazilian ABNT2)| -:: |ROM| |Romanian (Legacy)| |Romanian (Programmers) |Romanian (Standard)| -:: |RUS| |Russian| |Russian - Mnemonic| |Russian (Typewriter)| -:: |SAM| |Sami Extended Finland-Sweden| |Sami Extended Norway| -:: |SER| |Serbian (Cyrillic)| |Serbian (Latin)| -:: |SIN| |Sinhala| |Sinhala - wij 9| -:: |SLO| |Slovak| |Slovak (QWERTY)| -:: |SOR| |Sorbian Extended| |Sorbian Standard| |Sorbian Standard (Legacy)| -:: |SPA| |Spanish (Spain)| |Spanish (Mexico)| |Spanish Variation| -:: |SWE| |Swedish| |Swedish with Sami| -:: |SWI| |Swiss French| |Swiss German| -:: |SYR| |Syriac| |Syriac Phonetic| -:: |TAM| |Tamil| |Tamil (99 Keyboard)| -:: |TAT| |Tatar| |Tatar (Legacy)| -:: |THA| |Thai Kedmanee| |Thai Kedmanee (non-ShiftLock)| |Thai Pattachote| |Thai Pattachote (non-ShiftLock)| -:: |TIB| |Tibetan (PRC - Standard)| |Tibetan (PRC - Legacy)| -:: |TIF| |Tifinagh (Basic)| |Tifinagh (Full)| -:: |TUR| |Turkish F| |Turkish Q| -:: |UYG| |Uyghur| |Uygher (Legacy)| |Uyghur (Greek 220)| -:: |UKR| |Ukrainian| |Ukrainian (Enhanced)| -:: |UK| |United Kingdom| |United Kingdom Extended| -:: |US| |United States - English| |United States - International| |United States - Dvorak| |United States - Dvorak (Left Hand)| |United States - Dvorak (Right Hand)| -:: |VIE| |Vietnamese| |Vietnamese Telex| - - - - - - -REM DB-SubCorresponding Input Methods -:: |ARA| |0401:00000401| |0401:00010401| |0401:00020401| -:: |ARM| |042b:0000042b| |042b:0002042b| |042b:0003042b| |042b:0001042b| -:: |AZE| |042c:0001042c| |042c:0000082c| |042c:0000042c| -:: |BEL| |080c:0001080c| |080c:00000813| |080c:0000080c| -:: |BAN| |0445:00000445| |0445:00020445| |0445:00010445| -:: |BUL| |0402:00030402| |0402:00010402| |0402:00020402| |0402:00040402| |0402:00000402| -:: |CAN| |0c0c:00001009| |0c0c:00000c0c| |0c0c:00011009| -:: |CHE| |045c:0000045c| |045c:0001045c| -:: |CHI| |0804:{81D4E9C9-1D3B-41BC-9E6C-4B40BF79E35E}{FA550B04-5AD7-411f-A5AC-CA038EC515D7}| |0404:{B115690A-EA02-48D5-A231-E3578D2FDF80}{B2F9C502-1742-11D4-9790-0080C882687E}| |0404:00000c04| |0404:00001404| |0404:00001004| -:: |CZE| |2000:00000405| |2000:00010405| |2000:00020405| -:: |DIV| |0465:00000465| |0465:00010465| -:: |FIN| |040b:0000040b| |040b:0001083b| -:: |GEO| |0437:00020437| |0437:00010437| |0437:00030437| |0437:00040437| -:: |GER| |0407:00000407| |0407:00010407| -:: |GRE| |0408:00000408| |0408:00010408| |0408:00030408| |0408:00020408| |0408:00040408| |0408:00050408| |0408:00600408| -:: |HUN| |040e:0000040e| |040e:0001040e| -:: |INU| |085d:0000085d| |085d:0001045d| -:: |ITA| |0410:00000410| |0410:00010410| -:: |KHM| |0453:00000453| |0453:00010453| -:: |KOR| |0412:{A028AE76-01B1-46C2-99C4-ACD9858AE02F}{B5FE1F02-D5F2-4445-9C03-C568F23C99A1}| |0412:{a1e2b86b-924a-4d43-80f6-8a820df7190f}{b60af051-257a-46bc-b9d3-84dad819bafb}| -:: |LAT| |0426:00020426| |0426:00010426| -:: |LIS| |0409:00070c00| |0409:00080c00| -:: |LIT| |0427:00010427| |0427:00000427| |0427:00020427| -:: |MAC| |042f:0000042f| |042f:0001042f| -:: |MAL| |043a:0000043a| |043a:0001043a| -:: |MON| |0850:00000850| |0850:00020850| |0850:00000450| -:: |NOR| |0814:00000414| |0814:0000043b| -:: |PER| |0429:00000429| |0429:00050429| -:: |POL| |0415:00010415| |0415:00000415| -:: |POR| |0816:00000816| |0816:00000416| |0816:00010416| -:: |ROM| |0418:00000418| |0418:00020418| |0418:00010418| -:: |RUS| |0419:00000419| |0419:00020419| |0419:00010419| -:: |SAM| |083b:0002083b| |043b:0001043b| -:: |SER| |1C1A:00000c1a| |241A:0000081a| -:: |SIN| |045b:0000045b| |045b:0001045b| -:: |SLO| |041b:0000041b| |041b:0001041b| -:: |SOR| |042e:0001042e| |042e:0002042e| |042e:0000042e| -:: |SPA| |0c0a:0000040a| |080a:0000080a| |0c0a:0001040a| -:: |SWE| |041d:0000041d| |083b:0000083b| -:: |SWI| |100c:0000100c| |0807:00000807| -:: |SYR| |045a:0000045a| |045a:0001045a| -:: |TAM| |0449:00000449| |0449:00020449| -:: |TAT| |0444:00010444| |0444:00000444| -:: |THA| |041e:0000041e| |041e:0002041e| |041e:0001041e| |041e:0003041e| -:: |TIB| |0451:00010451| |0451:00000451| -:: |TIF| |0409:00050c00| |0409:00050c00| -:: |TUR| |041f:0001041f| |041f:0000041f| -:: |UYG| |0480:00010480| |0480:00000480| |0480:00010408| -:: |UKR| |0422:00000422| |0422:00020422| -:: |UK| |0809:00000809| |0809:00000452| -:: |US| |0409:00000409| |0409:00020409| |0409:00010409| |0409:00030409| |0409:00040409| -:: |VIE| |042a:0000042a| |042A:{C2CB2CF0-AF47-413E-9780-8BC3A3C16068}{5FB02EC5-0A77-4684-B4FA-DEF8A2195628}| -REM Marker -REM ------------------------DATABASE-END-------------------------- - - - -REM ---------------------------START---------------------------- -:SCRIPT-START - -IF NOT "%~1"=="-debug" ( - MODE 80, 26 -) -COLOR 70 -TITLE Central AME Script -SET "ver=v1.4" -IF "%~1"=="permsCheck" EXIT 0 - -REM Allows for more flexibility with these two variables -SET "dirPath=%~dp0" -SET "scriptPath=%~f0" -FOR /F %%A IN ('"prompt $H &echo on &for %%B in (1) do rem"') DO SET BS=%%A -SET /A "auxWaitCount=0" - -CALL :AUX-GETUSERNAME -IF /I "%~1"=="LangSet" GOTO DISPLANG-USERCHECK -IF /I "%~1"=="kbLangSet" GOTO KBLANG-PRESET -IF /I "%~1"=="kbLangRem" GOTO KBLANG-REMOVELANG -IF /I "%~1"=="wslInstall" GOTO ALTCHILD-WSL-DISTROINSTALL -IF /I "%~1"=="wslRemove" GOTO ALTCHILD-WSL-DISTROREMOVE - -:SCRIPT-ADMINCHECK1 - -POWERSHELL -NoP -C "[Console]::CursorVisible = $False" - -CALL :AUX-GENRND "7" -FOR /F "usebackq tokens=1 delims= " %%A IN (`WMIC process where "name='cmd.exe' and CommandLine like '%%%rndOut%%%'" get ParentProcessId 2^>^&1 ^| FINDSTR "1 2 3 4 5 6 7 8 9 0"`) DO SET "scriptPID=%%A" - IF "%scriptPID%"=="" ( - CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| - POWERSHELL -NoP -C "Write-Host """`n`n`n Failed to fetch script process ID.`n __________________________________________________________`n`n Press any key to Exit: """ -NoNewLine; [Console]::CursorVisible = $True; $NULL = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown')" - EXIT /B 0 - ) - -FOR /F "usebackq tokens=1 delims= " %%A IN (`WMIC useraccount where "name='%currentUsername:'=\'%'" get sid 2^>^&1 ^| FINDSTR "S-"`) DO SET "userSID=%%A" - -IF /I NOT "%username%"=="%currentUsername%" ( - CALL :AUX-GETUSERENV - SET "altRun=true" -) ELSE ( - SET "userTemp=%TEMP%" - SET "userLocalAppData=%LOCALAPPDATA%" - SET "userLocalAppData=%APPDATA%" -) - -CALL :AUX-ELEVATIONCHECK -NET SESSION > NUL 2>&1 - IF %ERRORLEVEL% GTR 0 GOTO SCRIPT-ADMINCHECK2 - -IF /I "%~1"=="wslUnattend" SET "wslDistro=%~2" & SET "wslGroups=%~3" & SET "wslUnattendRun=true" & GOTO WSL-DISTROINSTALL - -IF "%userRestart%"=="true" ( - CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| - POWERSHELL -NoP -C "Write-Host """`n`n`n Running this script after a username change`n may cause serious damage! Run anyways?`n [Y] [N]`n __________________________________________________________`n`n Choose an option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 EXIT /B 0 -) - -WMIC process where "name='cmd.exe' and ProcessId!='%scriptPID%' or name='WindowsTerminal.exe' and ProcessId!='%scriptPID%'" get name 2>&1 | FINDSTR /i /c:"cmd.exe" /c:"WindowsTerminal.exe" > NUL 2>&1 - IF %ERRORLEVEL% EQU 1 ( - DEL /Q /F "%TEMP%\[amecs]*" > NUL 2>&1 - DEL /Q /F "%userTemp%\[amecs]*" > NUL 2>&1 - ) - -GOTO HOME-MAINMENU - -:SCRIPT-ADMINCHECK2 - -IF /I "%~1"=="wslUnattend" SET "wslDistro=%~2" & SET "wslGroups=%~3" & SET "wslUnattendRun=true" & SET "adminPrivs=false" & GOTO WSL-DISTROINSTALL - -POWERSHELL -NoP -C "Start-Process '%scriptPath:'=''%' -Verb RunAs" > NUL 2>&1 -IF %ERRORLEVEL% GTR 0 ( - IF "%altRun%"=="true" ( - CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| - POWERSHELL -NoP -C "Write-Host """`n`n`n Script must be run as the current user`n or with administrator privilages.`n __________________________________________________________`n`n Press any key to Exit: """ -NoNewLine; [Console]::CursorVisible = $True; $NULL = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown')" - EXIT /B 0 - ) - CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| - POWERSHELL -NoP -C "Write-Host """`n`n`n Elevation canceled, run with limited functionality?`n [Y] [N]`n __________________________________________________________`n`n Choose an option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 ( - EXIT /B 0 - ) ELSE ( - SET "adminPrivs=false" - TASKLIST /FI "WINDOWTITLE eq Central AME Script" /FI "PID ne %scriptPID%" 2>&1 | FINDSTR /i /c:".exe">NUL 2>&1 || TASKLIST /FI "WINDOWTITLE eq Administrator: Central AME Script" /FI "PID ne %scriptPID%" 2>&1 | FINDSTR /i /c:".exe" > NUL 2>&1 - IF ERRORLEVEL 1 DEL /Q /F "%TEMP%\[amecs]*" > NUL 2>&1 - GOTO HOME-MAINMENU - ) -) - -EXIT /B 0 -REM -------------------------START-END-------------------------- - - - REM ------------ - REM Menu Section - REM ------------ - - -REM ----------------------------MENU---------------------------- -:HOME-MAINMENU - -IF "%adminPrivs%"=="false" GOTO HOME-LIMMAINMENU - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CALL :MO-CHOICE -InitChoices "1234567EX" "+GOTO USERPASS-MENU+GOTO LOCKSCREEN-GRABIMAGE+GOTO PFP-GRABIMAGE+GOTO HOME-LANGUAGE+GOTO !homeElevLoc!+GOTO !homeNULoc!+GOTO !homeALLoc!+GOTO HOME-EXTRA+EXIT /B 0+" -CALL :MO-MAINMENU -CALL :MO-CHOICE -StartChoices "$(' '.padleft(17, ' '))[1] Change Username or Password`n$(' '.padleft(17, ' '))[2] Change Lockscreen Image`n$(' '.padleft(17, ' '))[3] Change Profile Image`n$(' '.padleft(17, ' '))[4] Manage Language Settings`n$(' '.padleft(17, ' '))[5] %homeElevMsg%`n$(' '.padleft(17, ' '))[6] %homeNUMsg%`n$(' '.padleft(17, ' '))[7] %homeALMsg%`n`n$(' '.padleft(17, ' '))[E] Extra`n$(' '.padleft(17, ' '))[X] Exit`n" - -:HOME-EXTRA - -IF "%adminPrivs%"=="false" GOTO HOME-LIMEXTRA - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CALL :MO-CHOICE -InitChoices "1234567890X" "+GOTO HOME-WSL+GOTO !homeHIBLoc!+GOTO !homeNOTIFCENLoc!+GOTO !homeNOTIFLoc!+GOTO !homeWSHLoc!+GOTO !homeVBSLoc!+GOTO !homeNCSILoc!+CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO | Central AME Script %ver% | & POWERSHELL -NoP -C ""Write-Host """"""""`n`n`n$(' '.padleft(13, ' '))WARNING: This is a beta feature, use at your own risk.`n$(' '.padleft(11, ' '))__________________________________________________________`n`n$(' '.padleft(11, ' '))Press any key to continue: """""""" -NoNewLine; [Console]::CursorVisible = $True; $NULL = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown')"" & GOTO NEWUSER-MENU+GOTO !homeNVCPLoc!+GOTO HOME-MAINMENU+EXIT /B 0+" -CALL :MO-EXTRA -CALL :MO-CHOICE -StartChoices "$(' '.padleft(17, ' '))[1] Manage WSL%homeExtWSLMsg%`n$(' '.padleft(17, ' '))[2] %homeHIBMsg%`n$(' '.padleft(17, ' '))[3] %homeNOTIFCENMsg%`n$(' '.padleft(17, ' '))[4] %homeNOTIFMsg%`n$(' '.padleft(17, ' '))[5] %homeWSHMsg%`n$(' '.padleft(17, ' '))[6] %homeVBSMsg%`n$(' '.padleft(17, ' '))[7] %homeNCSIMsg%`n$(' '.padleft(17, ' '))[8] Create New User (Beta)""""; %homeNVCPMsg%; Write-Host """"`n$(' '.padleft(17, ' '))[0] Return to Menu`n$(' '.padleft(17, ' '))[X] Exit`n" - -:HOME-LANGUAGE - -IF "%adminPrivs%"=="false" GOTO HOME-LIMLANGUAGE - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CALL :MO-CHOICE -InitChoices "123450X" "+SET ""lpStatus="" & GOTO DISPLANG-MENUP1+SET ""kbLangLoc=:COMM:& GOTO KBLANG-PRESET"" & GOTO KBLANG-LANGS+SET ""kbLangLoc=:COMM:& GOTO KBLANG-REMOVELANG"" & GOTO KBLANG-LANGS+SET ""lpStatus=added"" & GOTO DISPLANG-MENUP1+SET ""lpStatus=removed"" & GOTO DISPLANG-MENUP1+GOTO HOME-MAINMENU+EXIT /B 0+" -CALL :MO-CHOICE -StartChoices "$(' '.padleft(17, ' '))[1] Change Display Language`n$(' '.padleft(17, ' '))[2] Add Keyboard Language`n$(' '.padleft(17, ' '))[3] Remove Keyboard Language`n$(' '.padleft(17, ' '))[4] Install Language Pack`n$(' '.padleft(17, ' '))[5] Uninstall Language Pack`n`n$(' '.padleft(17, ' '))[0] Return to Menu`n$(' '.padleft(17, ' '))[X] Exit`n" - -:HOME-WSL - -IF "%adminPrivs%"=="false" GOTO HOME-LIMWSL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CALL :MO-CHOICE -InitChoices "123U0X" "+GOTO !homeWSLLoc!+SET ""wslMenuLoc=WSL-DISTROINSTALL"" & GOTO WSL-DISTROMENUP1+SET ""wslMenuLoc=WSL-DISTROREMOVE"" & GOTO WSL-DISTROMENUP1+POWERSHELL -NoP -C ""[Console]::SetCursorPosition(17,10); Write-Host '[U] Unattended Distro Install (Enabled) ' -NoNewLine -ForegroundColor Green; [Console]::SetCursorPosition(17,7); Write-Host '[2] Install WSL Distro' -NoNewLine; [Console]::SetCursorPosition(0,!homeWSLChPos!); Write-Host ' Choose a menu option: ' -NoNewLine; [Console]::SetCursorPosition(33,!homeWSLChPos!)"" & SET ""wslUnattend=true"" & GOTO INTERNAL-HOME_WSL-MARKER+GOTO HOME-MAINMENU+EXIT /B 0+" -CALL :MO-WSL -CALL :MO-CHOICE -StartChoices "$(' '.padleft(17, ' '))[1] %homeWSLMsg%%homeWSLDistroMsgs%`n$(' '.padleft(17, ' '))[0] Return to Menu`n$(' '.padleft(17, ' '))[X] Exit%homeWSLStatus%" - -:INTERNAL-HOME_WSL-MARKER - -IF "%wslUnattend%"=="true" ( - POWERSHELL -NoP -C "[Console]::CursorVisible = $True; CHOICE /C 12U0X /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 5 EXIT /B 0 - IF ERRORLEVEL 4 GOTO HOME-MAINMENU - IF ERRORLEVEL 3 POWERSHELL -NoP -C "[Console]::SetCursorPosition(17,10); Write-Host '[U] Unattended Distro Install (Disabled)' -NoNewLine; [Console]::SetCursorPosition(17,7); Write-Host '[2] Install WSL Distro' -ForegroundColor DarkGray -NoNewLine; [Console]::SetCursorPosition(0,%homeWSLChPos%); Write-Host ' Choose a menu option: ' -NoNewLine; [Console]::SetCursorPosition(33,%homeWSLChPos%)" & SET "wslUnattend=false" & GOTO INTERNAL-HOME_WSL-MARKER - IF ERRORLEVEL 2 SET "wslMenuLoc=WSL-DISTROINSTALL" & GOTO WSL-DISTROMENUP1 - IF ERRORLEVEL 1 GOTO %homeWSLLoc% -) - -IF NOT "%wslUnattend%"=="" POWERSHELL -NoP -C "[Console]::CursorVisible = $True; CHOICE /C 1U0X /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 4 EXIT /B 0 - IF ERRORLEVEL 3 GOTO HOME-MAINMENU - IF ERRORLEVEL 2 POWERSHELL -NoP -C "[Console]::SetCursorPosition(17,10); Write-Host '[U] Unattended Distro Install (Enabled) ' -NoNewLine -ForegroundColor Green; [Console]::SetCursorPosition(17,7); Write-Host '[2] Install WSL Distro' -NoNewLine; [Console]::SetCursorPosition(0,%homeWSLChPos%); Write-Host ' Choose a menu option: ' -NoNewLine; [Console]::SetCursorPosition(33,%homeWSLChPos%)" & SET "wslUnattend=true" & GOTO INTERNAL-HOME_WSL-MARKER - IF ERRORLEVEL 1 GOTO %homeWSLLoc% - -:HOME-LIMMAINMENU - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CALL :MO-CHOICE -InitChoices "4EX" "+GOTO HOME-LIMLANGUAGE+GOTO HOME-EXTRA+EXIT /B 0+" -CALL :MO-LIMMAINMENU -CALL :MO-CHOICE -StartChoices "$(' '.padleft(17, ' '))[1] Change Username or Password"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[2] Change Lockscreen Image"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[3] Change Profile Image"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[4] Manage Language Settings""""; Write-Host """"$(' '.padleft(17, ' '))[5] %homeElevMsg%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[6] %homeNUMsg%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[7] %homeALMsg%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"`n$(' '.padleft(17, ' '))[E] Extra`n$(' '.padleft(17, ' '))[X] Exit`n" - -:HOME-LIMEXTRA - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CALL :MO-CHOICE -InitChoices "140X" "+GOTO HOME-LIMWSL+GOTO !homeNOTIFLoc!+GOTO HOME-MAINMENU+EXIT /B 0+" -CALL :MO-LIMEXTRA -CALL :MO-CHOICE -StartChoices "$(' '.padleft(17, ' '))[1] Manage WSL""""%homeExtWSLMsg%; Write-Host """"$(' '.padleft(17, ' '))[2] %homeHIBMsg%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[3] %%homeNOTIFCENMsg%%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[4] %%homeNOTIFMsg%%""""; Write-Host """"$(' '.padleft(17, ' '))[5] %homeWSHMsg%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[6] %homeVBSMsg%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[7] %homeNCSIMsg%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[8] Create New User (Beta)"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; %homeNVCPMsg%; Write-Host """"`n$(' '.padleft(17, ' '))[0] Return to Menu`n$(' '.padleft(17, ' '))[X] Exit`n" - -:HOME-LIMLANGUAGE - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CALL :MO-CHOICE -InitChoices "230X" "+SET ""kbLangLoc=:COMM:& GOTO KBLANG-PRESET"" & GOTO KBLANG-LANGS+SET ""kbLangLoc=:COMM:& GOTO KBLANG-REMOVELANG"" & GOTO KBLANG-LANGS+GOTO HOME-MAINMENU+EXIT /B 0+" -CALL :MO-CHOICE -StartChoices "$(' '.padleft(17, ' '))[1] Change Display Language"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[2] Add Keyboard Language`n$(' '.padleft(17, ' '))[3] Remove Keyboard Language""""; Write-Host """"$(' '.padleft(17, ' '))[4] Install Language Pack"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"$(' '.padleft(17, ' '))[5] Uninstall Language Pack"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"`n$(' '.padleft(17, ' '))[0] Return to Menu`n$(' '.padleft(17, ' '))[X] Exit`n" - -:HOME-LIMWSL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CALL :MO-CHOICE -InitChoices "230X" "+SET ""wslMenuLoc=WSL-DISTROINSTALL"" & GOTO WSL-DISTROMENUP1+SET ""wslMenuLoc=WSL-DISTROREMOVE"" & GOTO WSL-DISTROMENUP1+GOTO HOME-MAINMENU+EXIT /B 0+" -CALL :MO-LIMWSL -CALL :MO-CHOICE -StartChoices "$(' '.padleft(17, ' '))[1] %homeWSLMsg%"""" -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red; Write-Host """"%homeWSLDistroMsgs%`n$(' '.padleft(17, ' '))[0] Return to Menu`n$(' '.padleft(17, ' '))[X] Exit`n" -REM --------------------------MENU-END-------------------------- - - - REM ----------------- - REM Primary Functions - REM ----------------- - - -REM --------------------------USERPASS-------------------------- -:USERPASS-MENU - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -POWERSHELL -NoP -C "Write-Host """ [1] Change Username`n [2] Change Password`n [3] Change Administrator Password`n`n [0] Return to Menu`n [X] Exit`n`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C 1230X /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==1 GOTO USERPASS-USERNAME - IF %ERRORLEVEL%==2 GOTO USERPASS-PASSWORD - IF %ERRORLEVEL%==3 GOTO USERPASS-ADMINPASSWORD - IF %ERRORLEVEL%==4 ENDLOCAL & GOTO HOME-MAINMENU - IF %ERRORLEVEL%==5 EXIT /B 0 - -:USERPASS-USERNAME - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -CALL :AUX-INPUTLOOP "newUsername" "Enter new username, or 'Cancel' to quit" "0" "5" - IF %ERRORLEVEL% EQU 3 ENDLOCAL & GOTO HOME-MAINMENU - -ENDLOCAL & SET "currentUsername=%newUsername%" -CALL :AUX-RETURN "Username changed successfully" -HNR R:L.sign-out -L "A sign-out is recommended." - -:USERPASS-PASSWORD - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -SET "C4Username=%currentUsername%" -CALL :AUX-INPUTLOOP "newPassword" "Enter new password, or 'Cancel' to quit" "0" "4" -Secure - IF %ERRORLEVEL% EQU 3 ENDLOCAL & GOTO HOME-MAINMENU - -CALL :AUX-RETURN "Password changed successfully" -H - -:USERPASS-ADMINPASSWORD - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -SET "C4Username=Administrator" -CALL :AUX-INPUTLOOP "newPassword" "Enter new Administrator password, or 'Cancel' to quit" "0" "4" -Secure - IF %ERRORLEVEL% EQU 3 ENDLOCAL & GOTO HOME-MAINMENU - -CALL :AUX-RETURN "Administrator password changed successfully" -H -REM ------------------------USERPASS-END------------------------ - - - -REM -------------------------LOCKSCREEN------------------------- -:LOCKSCREEN-GRABIMAGE - -SETLOCAL -REM Original Author & Co-Author: Logan Darklock, lucid -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Select your image - -DIR /B "%SYSTEMDRIVE%\Users" | FINDSTR /x "%possibleUserDir%" > NUL 2>&1 - IF %ERRORLEVEL% LEQ 0 SET "UserPath=\%possibleUserDir%" - -FOR /F "usebackq delims=" %%I in (`POWERSHELL -NoP -C "Start-Sleep -Milliseconds 200; [System.Reflection.Assembly]::LoadWithPartialName('System.windows.forms')|Out-Null;$OFD = New-Object System.Windows.Forms.OpenFileDialog;$OFD.Multiselect = $False;$OFD.Filter = 'Image Files (*.jpg; *.jpeg; *.png; *.bmp; *.jfif)| *.jpg; *.jpeg; *.png; *.bmp; *.jfif';$OFD.InitialDirectory = '%SYSTEMDRIVE%\Users%UserPath%';$OFD.ShowDialog()|out-null;$OFD.FileNames"`) DO SET "lockImgPath=%%~I" - IF "%lockImgPath%"=="" CALL :AUX-RETURN "You must select an image." -H -E - -POWERSHELL -NoP -C "Write-Host """`n Remove lockscreen blur? (Y/N): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==1 REG ADD "HKLM\SOFTWARE\Policies\Microsoft\Windows\System" /v DisableAcrylicBackgroundOnLogon /t REG_DWORD /d 1 /f > NUL - IF %ERRORLEVEL%==2 REG DELETE "HKLM\SOFTWARE\Policies\Microsoft\Windows\System" /v DisableAcrylicBackgroundOnLogon /f > NUL 2>&1 - -:LOCKSCREEN-DEPLOY - -ECHO. & ECHO Setting lockscreen image... - -TIMEOUT /T 1 /NOBREAK > NUL -REM Necessary for updated 21H2+ versions if RotatingLockScreenEnabled is not already set to 0 -REG ADD "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Creative\%userSID%" /v "RotatingLockScreenEnabled" /t REG_DWORD /d 0 /f > NUL -REG ADD "HKU\%userSID%\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "RotatingLockScreenEnabled" /t REG_DWORD /d 0 /f > NUL - -REM Copy wallpaper to the right spot -TAKEOWN /F "%WINDIR%\Web\Screen\img100.jpg">NUL 2>&1 & TAKEOWN /F "%WINDIR%\Web\Screen\img103.png">NUL 2>&1 & TAKEOWN /F "%WINDIR%\Web\Wallpaper\Windows\img0.jpg" > NUL 2>&1 -ICACLS "%WINDIR%\Web\Screen\img100.jpg" /reSET>NUL & ICACLS "%WINDIR%\Web\Screen\img103.png" /reSET>NUL & ICACLS "%WINDIR%\Web\Wallpaper\Windows\img0.jpg" /reSET > NUL -COPY "%lockImgPath%" "%WINDIR%\Web\Screen\img100.jpg" /y>NUL & COPY "%lockImgPath%" "%WINDIR%\Web\Screen\img103.png" /y>NUL & COPY "%lockImgPath%" "%WINDIR%\Web\Wallpaper\Windows\img0.jpg" /y > NUL -REM Clear cache -TAKEOWN /R /D Y /F "%PROGRAMDATA%\Microsoft\Windows\SystemData" > NUL -ICACLS "%PROGRAMDATA%\Microsoft\Windows\SystemData" /reSET /t > NUL -FOR /D %%x in ("%PROGRAMDATA%\Microsoft\Windows\SystemData\*") do ( -FOR /D %%y in ("%%x\ReadOnly\LockScreen_*") do rd /s /q "%%y" ) - -CALL :AUX-RETURN "Lockscreen image changed successfully" -H -REM -----------------------LOCKSCREEN-END----------------------- - - - -REM ----------------------------PFP----------------------------- -:PFP-GRABIMAGE - -SETLOCAL -REM Original Author & Co-Author: Logan Darklock, lucid -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Select your image - -REM Used for default starting directory for file selection window -DIR /B "%SYSTEMDRIVE%\Users" | FINDSTR /x "%possibleUserDir%" > NUL 2>&1 - IF %ERRORLEVEL% LEQ 0 SET "UserPath=\%possibleUserDir%" - -FOR /F "usebackq delims=" %%I in (`POWERSHELL -NoP -C "Start-Sleep -Milliseconds 200; [System.Reflection.Assembly]::LoadWithPartialName('System.windows.forms')|Out-Null;$OFD = New-Object System.Windows.Forms.OpenFileDialog;$OFD.Multiselect = $False;$OFD.Filter = 'Image Files (*.jpg; *.jpeg; *.png; *.bmp; *.jfif)| *.jpg; *.jpeg; *.png; *.bmp; *.jfif';$OFD.InitialDirectory = '%SYSTEMDRIVE%\Users%UserPath%';$OFD.ShowDialog()|out-null;$OFD.FileNames"`) DO SET "pfpImgPath=%%~I" - IF "%pfpImgPath%"=="" CALL :AUX-RETURN "You must select an image." -H -E - -:PFP-DEPLOY - -ECHO. & ECHO Setting profile image... - -REM On recent Windows 10 versions, resolutions called for are: -REM 32x32, 40x40, 48x48, 64x64, 96x96, 192x192, 208x208, 240x240, 424x424, -REM 448x448, 1080x1080 -SET "usrPfpDir=%PUBLIC%\AccountPictures\%userSID%" - -MKDIR "%usrPfpDir%" > NUL 2>&1 -TAKEOWN /r /d Y /f "%usrPfpDir%" > NUL -ICACLS "%usrPfpDir%" /reset /t > NUL -DEL /Q /F "%usrPfpDir%\*" > NUL - -POWERSHELL -NoP -C "Add-Type -AssemblyName System.Drawing; $img = [System.Drawing.Image]::FromFile((Get-Item '%pfpImgPath%')); $a = New-Object System.Drawing.Bitmap(32, 32); $graph = [System.Drawing.Graphics]::FromImage($a); $graph.DrawImage($img, 0, 0, 32, 32); $a.Save('%usrPfpDir%\32x32.png'); $b = New-Object System.Drawing.Bitmap(40, 40); $graph = [System.Drawing.Graphics]::FromImage($b); $graph.DrawImage($img, 0, 0, 40, 40); $b.Save('%usrPfpDir%\40x40.png'); $c = New-Object System.Drawing.Bitmap(48, 48); $graph = [System.Drawing.Graphics]::FromImage($c); $graph.DrawImage($img, 0, 0, 48, 48); $c.Save('%usrPfpDir%\48x48.png'); $d = New-Object System.Drawing.Bitmap(64, 64); $graph = [System.Drawing.Graphics]::FromImage($d); $graph.DrawImage($img, 0, 0, 64, 64); $d.Save('%usrPfpDir%\64x64.png'); $e = New-Object System.Drawing.Bitmap(96, 96); $graph = [System.Drawing.Graphics]::FromImage($e); $graph.DrawImage($img, 0, 0, 96, 96); $e.Save('%usrPfpDir%\96x96.png'); $f = New-Object System.Drawing.Bitmap(192, 192); $graph = [System.Drawing.Graphics]::FromImage($f); $graph.DrawImage($img, 0, 0, 192, 192); $f.Save('%usrPfpDir%\192x192.png'); $g = New-Object System.Drawing.Bitmap(208, 208); $graph = [System.Drawing.Graphics]::FromImage($g); $graph.DrawImage($img, 0, 0, 208, 208); $g.Save('%usrPfpDir%\208x208.png'); $h = New-Object System.Drawing.Bitmap(240, 240); $graph = [System.Drawing.Graphics]::FromImage($h); $graph.DrawImage($img, 0, 0, 240, 240); $h.Save('%usrPfpDir%\240x240.png'); $i = New-Object System.Drawing.Bitmap(424, 424); $graph = [System.Drawing.Graphics]::FromImage($i); $graph.DrawImage($img, 0, 0, 424, 424); $i.Save('%usrPfpDir%\424x424.png'); $j = New-Object System.Drawing.Bitmap(448, 448); $graph = [System.Drawing.Graphics]::FromImage($j); $graph.DrawImage($img, 0, 0, 448, 448); $j.Save('%usrPfpDir%\448x448.png'); $k = New-Object System.Drawing.Bitmap(1080, 1080); $graph = [System.Drawing.Graphics]::FromImage($k); $graph.DrawImage($img, 0, 0, 1080, 1080); $k.Save('%usrPfpDir%\1080x1080.png')" - -SET "usrPfpRegKey=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AccountPicture\Users\%userSID%" - -REM Runs the reg delete command as SYSTEM -SCHTASKS /create /tn "[amecs]-PFPREG" /tr "CMD /C 'REG DELETE '%usrPfpRegKey%' /f'" /sc MONTHLY /f /rl HIGHEST /ru "SYSTEM" > NUL - IF %ERRORLEVEL% NEQ 0 SCHTASKS /DELETE /TN "[amecs]-PFPREG" /F>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (1)" -H -E -POWERSHELL -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName '[amecs]-PFPREG' -Settings $TaskSet" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 SCHTASKS /DELETE /TN "[amecs]-PFPREG" /F>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (2)" -H -E - -SCHTASKS /run /tn "[amecs]-PFPREG" > NUL -SCHTASKS /delete /tn "[amecs]-PFPREG" /f > NUL - -REG ADD "%usrPfpRegKey%" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image32 /t REG_SZ /d "%usrPfpDir%\32x32.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image40 /t REG_SZ /d "%usrPfpDir%\40x40.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image48 /t REG_SZ /d "%usrPfpDir%\48x48.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image64 /t REG_SZ /d "%usrPfpDir%\64x64.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image96 /t REG_SZ /d "%usrPfpDir%\96x96.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image192 /t REG_SZ /d "%usrPfpDir%\192x192.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image208 /t REG_SZ /d "%usrPfpDir%\208x208.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image240 /t REG_SZ /d "%usrPfpDir%\240x240.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image424 /t REG_SZ /d "%usrPfpDir%\424x424.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image448 /t REG_SZ /d "%usrPfpDir%\448x448.png" /f > NUL -REG ADD "%usrPfpRegKey%" /v Image1080 /t REG_SZ /d "%usrPfpDir%\1080x1080.png" /f > NUL -REG ADD "HKU\%userSID%\SOFTWARE\OpenShell\StartMenu\Settings" /v UserPicturePath /t REG_SZ /d "%usrPfpDir%\448x448.png" /f > NUL 2>&1 - -GPUPDATE /force > NUL - -CALL :AUX-RETURN "Profile image changed successfully" -H -REM --------------------------PFP-END--------------------------- - - - -REM -------------------------ELEVATION-------------------------- -:ELEVATE-ELEVATE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Granting Admin rights to the current user... - -IF "%userStatus%"=="Elevated" CALL :AUX-RETURN "The current user is already an Administrator." -H -E - -TIMEOUT /T 2 /NOBREAK > NUL -NET localgroup administrators "%currentUsername%" /add > NUL 2>&1 - IF %ERRORLEVEL% GTR 0 CALL :AUX-RETURN "Failed to change user permissions" -H -L "A restart may fix this." -E - IF %ERRORLEVEL% LEQ 0 ENDLOCAL & SET "userStatus=Elevated" & CALL :AUX-RETURN "The current user is now an Administrator" -HNR R:L.sign-out -L "A sign-out is required to take effect." - -:ELEVATE-REVOKE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Revoking Admin rights from the current user... - -IF "%userStatus%"=="Not Elevated" CALL :AUX-RETURN "The current user is not an Administrator." -H -E - -TIMEOUT /T 2 /NOBREAK > NUL 2>&1 -NET localgroup administrators "%currentUsername%" /delete > NUL 2>&1 - IF %ERRORLEVEL% GTR 0 CALL :AUX-RETURN "Failed to change user permissions" -H -L "A restart may fix this." -E - IF %ERRORLEVEL% LEQ 0 ENDLOCAL & SET "userStatus=Not Elevated" & CALL :AUX-RETURN "Admin rights have been revoked for the current user" -HNR R:L.sign-out -L "A sign-out is required to take effect." -REM -----------------------ELEVATION-END------------------------ - - - -REM --------------------------DISPLANG-------------------------- -:DISPLANG-MENUP1 - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. -POWERSHELL -NoP -C "Write-Host """ [1] Arabic (ar-SA)`n [2] Bulgarian (bg-BG)`n [3] Chineese [Simplified] (zh-CN)`n [4] Chineese [Traditional] (zh-TW)`n [5] Croatian (hr-HR)`n [6] Czech (cs-CZ)`n [7] Danish (da-DK)`n [8] Dutch (nl-NL)`n [9] English [US] (en-US)`n`n [N] Next Page`n [0] Return to Menu`n [X] Exit`n Page 1/6`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C 123456789N0X /N /M %BS%; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==1 SET "langSel=ar-SA" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==2 SET "langSel=bg-BG" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==3 SET "langSel=zh-CN" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==4 SET "langSel=zh-TW" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==5 SET "langSel=hr-HR" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==6 SET "langSel=cs-CZ" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==7 SET "langSel=da-DK" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==8 SET "langSel=nl-NL" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==9 SET "langSel=en-US" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==10 GOTO DISPLANG-MENUP2 - IF %ERRORLEVEL%==11 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==12 EXIT /B 0 - -:DISPLANG-MENUP2 - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. -POWERSHELL -NoP -C "Write-Host """ [1] English [UK] (en-GB)`n [2] Estonian (et-EE)`n [3] Finnish (fi-FI)`n [4] French [Canada] (fr-CA)`n [5] French [France] (fr-FR)`n [6] German (de-DE)`n [7] Greek (el-GR)`n [8] Hebrew (he-IL)`n [9] Hungarian (hu-HU)`n`n [N] Next Page`n [P] Previous Page`n [0] Return to Menu`n [X] Exit`n Page 2/5`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C 123456789NP0X /N /M %BS%; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==1 SET "langSel=en-GB" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==2 SET "langSel=et-EE" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==3 SET "langSel=fi-FI" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==4 SET "langSel=fr-CA" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==5 SET "langSel=fr-FR" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==6 SET "langSel=de-DE" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==7 SET "langSel=el-GR" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==8 SET "langSel=he-IL" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==9 SET "langSel=hu-HU" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==10 GOTO DISPLANG-MENUP3 - IF %ERRORLEVEL%==11 GOTO DISPLANG-MENUP1 - IF %ERRORLEVEL%==12 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==13 EXIT /B 0 - -:DISPLANG-MENUP3 - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. -POWERSHELL -NoP -C "Write-Host """ [1] Italian (it-IT)`n [2] Japanese (ja-JP)`n [3] Korean (ko-KR)`n [4] Latvian (lv-LV)`n [5] Lithuanian (lt-LT)`n [6] Norwegian (nb-NO)`n [7] Polish (pl-PL)`n [8] Portugeese [Brazil] (pt-BR)`n [9] Portugeese [Portugal] (pt-PT)`n`n [N] Next Page`n [P] Previous Page`n [0] Return to Menu`n [X] Exit`n Page 3/5`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C 123456789NP0X /N /M %BS%; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==1 SET "langSel=it-IT" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==2 SET "langSel=ja-JP" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==3 SET "langSel=ko-KR" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==4 SET "langSel=lv-LV" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==5 SET "langSel=lt-LT" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==6 SET "langSel=nb-NO" & SET "dispDl=2900000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==7 SET "langSel=pl-PL" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==8 SET "langSel=pt-BR" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==9 SET "langSel=pt-PT" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==10 GOTO DISPLANG-MENUP4 - IF %ERRORLEVEL%==11 GOTO DISPLANG-MENUP2 - IF %ERRORLEVEL%==12 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==13 EXIT /B 0 - -:DISPLANG-MENUP4 - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. -POWERSHELL -NoP -C "Write-Host """ [1] Romanian (ro-RO)`n [2] Russian (ru-RU)`n [3] Serbian (sr-Latn-RS)`n [4] Slovak (sk-SK)`n [5] Slovenian (sl-SI)`n [6] Spanish [Mexico] (es-MX)`n [7] Spanish [Spain] (es-ES)`n [8] Swedish (sv-SE)`n [9] Thai (th-TH)`n`n [N] Next Page`n [P] Previous Page`n [0] Return to Menu`n [X] Exit`n Page 4/5`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C 123456789NP0X /N /M %BS%; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==1 SET "langSel=ro-RO" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==2 SET "langSel=ru-RU" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==3 SET "langSel=sr-Latn-RS" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==4 SET "langSel=sk-SK" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==5 SET "langSel=sl-SI" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==6 SET "langSel=es-MX" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==7 SET "langSel=es-ES" & SET "dispDl=2480000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==8 SET "langSel=sv-SE" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==9 SET "langSel=th-TH" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==10 GOTO DISPLANG-MENUP5 - IF %ERRORLEVEL%==11 GOTO DISPLANG-MENUP3 - IF %ERRORLEVEL%==12 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==13 EXIT /B 0 - -:DISPLANG-MENUP5 - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. -POWERSHELL -NoP -C "Write-Host """ [1] Turkish (tr-TR)`n [2] Ukrainian (uk-UA)`n`n [P] Previous Page`n [0] Return to Menu`n [X] Exit`n Page 5/5`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C 12P0X /N /M %BS%; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==1 SET "langSel=tr-TR" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==2 SET "langSel=uk-UA" & SET "dispDl=3230000" & GOTO DISPLANG-DOWNLOAD - IF %ERRORLEVEL%==3 GOTO DISPLANG-MENUP4 - IF %ERRORLEVEL%==4 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==5 EXIT /B 0 - -:DISPLANG-DOWNLOAD - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -IF "%lpStatus%"=="removed" GOTO DISPLANG-LPREMOVE - -CALL :AUX-GENRND "7" - -REM Check if language pack is already installed -DISM /Online /Get-Intl /English | FINDSTR /I /R /c:"Installed language(s):.* %langSel%" /c:"Fallback Languages.* %langSel%[^ABCDEFGHIJKLMNOPQRSTUVWXYZ123456789]*" > NUL 2>&1 - IF %ERRORLEVEL% LEQ 0 GOTO DISPLANG-USERCHECK - -SET "ZIPLoc=7z.exe" -FOR /F "usebackq tokens=1,* delims=\" %%A IN (`WHERE 7z.exe 2^>^&1`) DO IF EXIST "%SYSTEMDRIVE%%%B" SET "dispSkip0=rem " - IF NOT "%dispSkip0%"=="rem " ( - IF EXIST "%SYSTEMDRIVE%\Program Files\7-Zip\7z.exe" ( - SET "ZIPLoc=%SYSTEMDRIVE%\Program Files\7-Zip\7z.exe" - SET "dispSkip0=rem " - ) ELSE ( - IF EXIST "%SYSTEMDRIVE%\Program Files (x86)\7-Zip\7z.exe" ( - SET "ZIPLoc=%SYSTEMDRIVE%\Program Files (x86)\7-Zip\7z.exe" - SET "dispSkip0=rem " - ) - ) - ) - -WHERE choco.exe>NUL 2>&1 && SET "dispChoco=true" - -IF NOT "%dispChoco%"=="true" ( - IF NOT "%dispSkip0%"=="rem " CALL :AUX-RETURN "7-Zip or Chocolatey must be installed." "HOME-LANGUAGE" -E -) - -TASKLIST /FI "IMAGENAME eq lpksetup.exe" 2>&1 | FINDSTR /i /c:"lpksetup.exe" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "All instances of lpksetup.exe must be closed." "HOME-LANGUAGE" -E -IF "%dispDl%"=="2480000" POWERSHELL -NoP -C "Write-Host """`n A ~2.5GB Language Packs ISO must be downloaded`n Continue? (Y/N): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" -IF "%dispDl%"=="2900000" POWERSHELL -NoP -C "Write-Host """`n A ~2.9GB Language Packs ISO must be downloaded`n Continue? (Y/N): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" -IF "%dispDl%"=="3230000" POWERSHELL -NoP -C "Write-Host """`n A ~3.2GB Language Packs ISO must be downloaded`n Continue? (Y/N): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==2 ENDLOCAL & GOTO HOME-MAINMENU - -IF "%altRun%"=="true" ( - SET "dispISOLoc=%userUserProfile%\Desktop" -) ELSE ( - SET "dispISOLoc=%USERPROFILE%\Desktop" -) -IF NOT EXIST "%dispISOLoc%" SET "dispISOLoc=%dirPath:~0,-1%" -FOR /F "tokens=2 delims==" %%A IN ('WMIC logicaldisk where "DeviceID='%dispISOLoc:~0,2%'" get FreeSpace /format:value') DO SET "dispISOSpace=%%A" - SET "dispISOSpace=%dispISOSpace:~0,-9%" - ECHO "%dispISOSpace%" | FINDSTR "1 2 3 4 5 6 7 8 9 0" > NUL - IF %ERRORLEVEL% GTR 0 CALL :AUX-RETURN "Failed to check free space of target drive (%dispISOLoc:~0,2%)." "HOME-LANGUAGE" -E - -IF %dispISOSpace% LEQ 80 CALL :AUX-RETURN "Not enough space available in target drive (%dispISOLoc:~0,2%)." "HOME-LANGUAGE" -E - -CALL :AUX-NETWORKCHECK - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Internet is required for this action." "HOME-LANGUAGE" -E - -CALL :AUX-GENRND "7" - -REM If 7zip must be installed, there will not be enough space to display everything in 25 lines (script height) without this line -%dispSkip0%CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. -ECHO. & ECHO Download Progress -IF "%dispDl%"=="2480000" CURL --range 0-2480000000 -L --progress-bar "https://software-download.microsoft.com/download/pr/19041.1.191206-1406.vb_release_CLIENTLANGPACKDVD_OEM_MULTI.iso" --output "%dispISOLoc%\LangPacks%rndOut%.ISO" -IF "%dispDl%"=="2900000" CURL --range 0-2900000000 -L --progress-bar "https://software-download.microsoft.com/download/pr/19041.1.191206-1406.vb_release_CLIENTLANGPACKDVD_OEM_MULTI.iso" --output "%dispISOLoc%\LangPacks%rndOut%.ISO" -IF "%dispDl%"=="3230000" CURL --range 0-3230000000 -L --progress-bar "https://software-download.microsoft.com/download/pr/19041.1.191206-1406.vb_release_CLIENTLANGPACKDVD_OEM_MULTI.iso" --output "%dispISOLoc%\LangPacks%rndOut%.ISO" -FOR %%A IN ("%dispISOLoc%\LangPacks%rndOut%.ISO") DO SET "langISOSize=%%~zA" - CALL :AUX-KILOBYTEFETCH "%dispDl%" -Compare "%langISOSize%" - IF %ERRORLEVEL% NEQ 0 ( - DEL /Q /F "%dispISOLoc%\LangPacks%rndOut%.ISO" > NUL 2>&1 - CALL :AUX-RETURN "Failed to download file." "HOME-LANGUAGE" -E - ) - -:DISPLANG-INSTALL - -%dispSkip0%ECHO. & ECHO Installing 7zip... & choco install -y --force --allow-empty-checksums "7zip" > NUL -POWERSHELL -NoP -C "Start-Process '%ZIPLoc:'=''%' -ArgumentList 'e','-y','-o""""%dispISOLoc:'=''%\LangPacks%rndOut%""""','""""%dispISOLoc:'=''%\LangPacks%rndOut%.ISO""""','x64\langpacks\*.cab' -NoNewWindow -Wait" > NUL 2>&1 -DEL /Q /F "%dispISOLoc%\LangPacks%rndOut%.ISO" > NUL - -ECHO. & ECHO Installing language pack, this may take awhile... -FOR /F "tokens=2" %%A IN ('DATE /T') DO SET "dateAfter=%%A" -SET "timeAfter=%TIME:~0,-3%" -LPKSETUP /i %langSel% /p "%dispISOLoc%\LangPacks%rndOut%\Microsoft-Windows-Client-Language-Pack_x64_%langSel%.cab" /r > NUL -:lpkInstLogLoop - TIMEOUT /T 1 /NOBREAK > NUL - POWERSHELL -NoP -C "$timeAfter = Get-Date -Date '%dateAfter% %timeAfter%'; Get-WinEvent -FilterHashtable @{Logname='Microsoft-Windows-LanguagePackSetup/Operational';StartTime=$timeAfter}" | FINDSTR "2014 2007" > NUL - IF %ERRORLEVEL% LSS 1 ( - %dispSkip0%ECHO. & ECHO Removing 7zip... & choco uninstall 7zip -y --force-dependencies --allow-empty-checksums>NUL & ECHO. - RMDIR /Q /S "%dispISOLoc%\LangPacks%rndOut%" & CALL :AUX-RETURN "lpksetup failed." "HOME-LANGUAGE" -E - ) - POWERSHELL -NoP -C "$timeAfter = Get-Date -Date '%dateAfter% %timeAfter%'; Get-WinEvent -FilterHashtable @{Logname='Microsoft-Windows-LanguagePackSetup/Operational';StartTime=$timeAfter}" | FINDSTR "2000" > NUL - IF %ERRORLEVEL% LSS 1 ( - %dispSkip0%ECHO. & ECHO Removing 7zip... & choco uninstall 7zip -y --force-dependencies --allow-empty-checksums>NUL & ECHO. - IF "%lpStatus%"=="added" RMDIR /Q /S "%dispISOLoc%\LangPacks%rndOut%" & GOTO DISPLANG-LPCOMPLETE - RMDIR /Q /S "%dispISOLoc%\LangPacks%rndOut%" & GOTO DISPLANG-USERCHECK - ) - GOTO :lpkInstLogLoop - -:DISPLANG-USERCHECK - -IF /I "%~1"=="LangSet" SET "langSel=%~2" & SET "rndOut=%~3" & SET "makeKBDef=%~4" & GOTO DISPLANG-SETLANG -POWERSHELL -NoP -C "Write-Host """`n Make default keyboard language? (Y/N): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==2 SET "makeKBDef=false" - -IF "%altRun%"=="true" GOTO DISPLANG-ALT - -:DISPLANG-SETLANG - -ECHO. & ECHO Setting language... -FOR /F "delims=" %%A IN ('POWERSHELL -NoP -C "Get-WinDefaultInputMethodOverride"') DO SET "possibleLangDef=%%A" - IF NOT "%possibleLangDef%"=="" ( - SET "currentLangDef=%possibleLangDef%" - ) ELSE ( - FOR /F "delims=" %%A IN ('POWERSHELL -NoP -C "(Get-WinUserLanguageList)[0].InputMethodTips"') DO SET "currentLangDef=%%A" - ) -SETLOCAL ENABLEDELAYEDEXPANSION -REM Accounts for zero input methods. Very unlikely scenario -POWERSHELL -NoP -c "(Get-WinUserLanguageList).InputMethodTips" | FINDSTR /c:":" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - FOR /F "delims=" %%A IN ('POWERSHELL -NoP -C "(Get-WinUserLanguageList).InputMethodTips"') DO SET "oldInputMethods=!oldInputMethods!;$LangList[0].InputMethodTips.Add('%%A')" - ) -POWERSHELL -NoP -C "Set-WinSystemLocale %langSel%; $LangList = New-WinUserLanguageList %langSel%%oldInputMethods%; Set-WinUserLanguageList $LangList -Force" -REM Clears override -IF "%makeKBDef%"=="" POWERSHELL -NoP -C "Set-WinDefaultInputMethodOverride" -IF "%makeKBDef%"=="false" POWERSHELL -NoP -C "Set-WinDefaultInputMethodOverride '%currentLangDef%'" -ENDLOCAL -IF /I "%~1"=="LangSet" ECHO Golden> "%TEMP%\[amecs]-LangComm%rndOut%.txt" & EXIT 0 - -CALL :AUX-RETURN "Display language changed to %langSel%" -H "R:R -T 0.restart" -L "A restart is required to take effect." - -:DISPLANG-LPCOMPLETE - -%dispSkip0%ECHO. & ECHO Removing 7zip... & choco uninstall 7zip.install -y --force > NUL -%dispSkip0%choco uninstall 7zip -y --force > NUL - -CALL :AUX-RETURN "Language Pack %langSel% installed successfully" -H -L "A restart is recommended." - -:DISPLANG-LPREMOVE - -SET "dispSkip0=rem " - -FOR /F tokens^=2^ delims^=^" %%A IN ('TASKLIST /FI "IMAGENAME eq lpksetup.exe" /NH /FO csv') DO SET "lpkStatus=%%A" - IF "%lpkStatus%"=="," CALL :AUX-RETURN "All instances of lpksetup.exe must be closed." "HOME-LANGUAGE" -E -FOR /F "tokens=2" %%A IN ('DATE /T') DO SET "dateAfter=%%A" -SET "timeAfter=%TIME:~0,-3%" -ECHO. & ECHO Uninstalling %langSel% LanguagePack... -LPKSETUP /u %langSel% /r -:LPREMOVE-LOOP - TIMEOUT /T 1 /NOBREAK > NUL - POWERSHELL -command "$timeAfter = Get-Date -Date '%dateAfter% %timeAfter%'; Get-WinEvent -FilterHashtable @{Logname='Microsoft-Windows-LanguagePackSetup/Operational';StartTime=$timeAfter}" | FINDSTR "2014 2008" > NUL - IF %ERRORLEVEL% LSS 1 CALL :AUX-RETURN "lpksetup.exe failed." "HOME-LANGUAGE" -E - POWERSHELL -command "$timeAfter = Get-Date -Date '%dateAfter% %timeAfter%'; Get-WinEvent -FilterHashtable @{Logname='Microsoft-Windows-LanguagePackSetup/Operational';StartTime=$timeAfter}" | FINDSTR "2001" > NUL - IF %ERRORLEVEL% LSS 1 CALL :AUX-RETURN "Language Pack %langSel% removed successfully" -H -L "A restart is recommended." - GOTO LPREMOVE-LOOP - -:DISPLANG-ALT - -CALL :AUX-ALTSTART "SetDispLang" "CMD /C 'START /min '' '|Script|' LangSet %langSel% |rndOut| %makeKBDef%'" - IF %ERRORLEVEL% EQU 1 CALL :AUX-RETURN "Failed to create scheduled task. (1)" "HOME-LANGUAGE" -E -C - IF %ERRORLEVEL% EQU 2 CALL :AUX-RETURN "Failed to create scheduled task. (2)" "HOME-LANGUAGE" -E -C - - CALL :AUX-WAITLOOP "-C:Golden" "%userTemp%\[amecs]-LangComm%rndOut%.txt" -TME "30" - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Failed to set language settings." "HOME-LANGUAGE" -C -E - CALL :AUX-RETURN "Display language changed to %langSel%" -H "R:R -T 0.restart" -L "A restart is required to take effect." -C -REM ------------------------DISPLANG-END------------------------ - - - -REM ---------------------------KBLANG--------------------------- -:KBLANG-LANGS - -SETLOCAL ENABLEDELAYEDEXPANSION -SET /A count=0 -SET "kbSub=false" -FOR /F "usebackq tokens=1, 2, 4, 6, 8, 10, 12, 14 skip=4 delims=|" %%A IN ("%~f0") DO ( - IF "%%A"=="REM DB-Corresponding Commands" GOTO KBLANG-CCOMMS - IF "%%B"=="" GOTO KBLANG-CCOMMS - IF NOT "%%B"=="spacer" SET /A count=!count!+1 & SET "lang!count!=%%B" - IF "%%C"=="" GOTO KBLANG-CCOMMS - IF NOT "%%C"=="spacer" SET /A "count=!count!+1" & SET "lang!count!=%%C" - IF "%%D"=="" GOTO KBLANG-CCOMMS - IF NOT "%%D"=="spacer" SET /A "count=!count!+1" & SET "lang!count!=%%D" - IF "%%E"=="" GOTO KBLANG-CCOMMS - IF NOT "%%E"=="spacer" SET /A "count=!count!+1" & SET "lang!count!=%%E" - IF "%%F"=="" GOTO KBLANG-CCOMMS - IF NOT "%%F"=="spacer" SET /A "count=!count!+1" & SET "lang!count!=%%F" - REM Overflow protecton, allows for more than 5 items per DB line - IF NOT "%%G"=="" SET /A "count=!count!+1" & SET "lang!count!=%%G" - IF NOT "%%H"=="" SET /A "count=!count!+1" & SET "lang!count!=%%H" -) - -:KBLANG-CCOMMS - -SET /A kbCCommCount=0 -FOR /F "usebackq tokens=1, 2, 4, 6, 8, 10, 12, 14 skip=35 delims=|" %%A IN ("%~f0") DO ( - IF "%%A"=="REM DB-Submenu Input Methods" GOTO KBLANG-PREMMS - IF "%%B"=="" GOTO KBLANG-PREMMS - IF NOT "%%B"=="spacer" SET /A kbCCommCount=!kbCCommCount!+1 & SET "kbComm!kbCCommCount!=SET kbLangSel=%%B" - IF "%%C"=="" GOTO KBLANG-PREMMS - IF NOT "%%C"=="spacer" SET /A "kbCCommCount=!kbCCommCount!+1" & SET "kbComm!kbCCommCount!=SET kbLangSel=%%C" - IF "%%D"=="" GOTO KBLANG-PREMMS - IF NOT "%%D"=="spacer" SET /A "kbCCommCount=!kbCCommCount!+1" & SET "kbComm!kbCCommCount!=SET kbLangSel=%%D" - IF "%%E"=="" GOTO KBLANG-PREMMS - IF NOT "%%E"=="spacer" SET /A "kbCCommCount=!kbCCommCount!+1" & SET "kbComm!kbCCommCount!=SET kbLangSel=%%E" - IF "%%F"=="" GOTO KBLANG-PREMMS - IF NOT "%%F"=="spacer" SET /A "kbCCommCount=!kbCCommCount!+1" & SET "kbComm!kbCCommCount!=SET kbLangSel=%%F" - REM Overflow protecton, allows for more than 5 items per DB line - IF NOT "%%G"=="" SET /A "count=!count!+1" & SET "lang!count!=SET kbLangSel=%%G" - IF NOT "%%H"=="" SET /A "count=!count!+1" & SET "lang!count!=SET kbLangSel=%%H" -) - -:KBLANG-SUBLANGS - -SETLOCAL ENABLEDELAYEDEXPANSION -SET /A count=0 -SET "kbSub=true" -FOR /F "usebackq tokens=1, 2, 4, 6, 8, 10, 12, 14, 16, 18 skip=66 delims=|" %%A IN ("%~f0") DO ( - IF "%%A"=="REM DB-SubCorresponding Input Methods" GOTO KBLANG-CCOMMS - IF "%%B"=="%kbLangSel%" ( - IF "%%C"=="" GOTO KBLANG-SUBCOMMS - SET /A count=!count!+1 & SET "lang!count!=%%C" - IF "%%D"=="" GOTO KBLANG-SUBCCOMMS - SET /A "count=!count!+1" & SET "lang!count!=%%D" - IF "%%E"=="" GOTO KBLANG-SUBCCOMMS - SET /A "count=!count!+1" & SET "lang!count!=%%E" - IF "%%F"=="" GOTO KBLANG-SUBCCOMMS - SET /A "count=!count!+1" & SET "lang!count!=%%F" - IF "%%G"=="" GOTO KBLANG-SUBCCOMMS - SET /A "count=!count!+1" & SET "lang!count!=%%G" - IF "%%H"=="" GOTO KBLANG-SUBCCOMMS - SET /A "count=!count!+1" & SET "lang!count!=%%H" - IF "%%I"=="" GOTO KBLANG-SUBCCOMMS - SET /A "count=!count!+1" & SET "lang!count!=%%I" - IF "%%J"=="" GOTO KBLANG-SUBCCOMMS - SET /A "count=!count!+1" & SET "lang!count!=%%J" - ) -) - -:KBLANG-SUBCCOMMS - -SET /A skbCCommCount=0 -FOR /F "usebackq tokens=1, 2, 4, 6, 8, 10, 12, 14, 16, 18 skip=125 delims=|" %%A IN ("%~f0") DO ( - IF "%%A"=="REM Marker" GOTO KBLANG-PREMMS - IF "%%B"=="%kbLangSel%" ( - IF "%%C"=="" GOTO KBLANG-PREMMS - SET /A skbCCommCount=!skbCCommCount!+1 & SET "kbComm!skbCCommCount!=SET kbLangSel=%%C" - IF "%%D"=="" GOTO KBLANG-PREMMS - SET /A "skbCCommCount=!skbCCommCount!+1" & SET "kbComm!skbCCommCount!=SET kbLangSel=%%D" - IF "%%E"=="" GOTO KBLANG-PREMMS - SET /A "skbCCommCount=!skbCCommCount!+1" & SET "kbComm!skbCCommCount!=SET kbLangSel=%%E" - IF "%%F"=="" GOTO KBLANG-PREMMS - SET /A "skbCCommCount=!skbCCommCount!+1" & SET "kbComm!skbCCommCount!=SET kbLangSel=%%F" - IF "%%G"=="" GOTO KBLANG-PREMMS - SET /A "skbCCommCount=!skbCCommCount!+1" & SET "kbComm!skbCCommCount!=SET kbLangSel=%%G" - IF "%%H"=="" GOTO KBLANG-PREMMS - SET /A "skbCCommCount=!skbCCommCount!+1" & SET "kbComm!skbCCommCount!=SET kbLangSel=%%H" - IF "%%I"=="" GOTO KBLANG-PREMMS - SET /A "skbCCommCount=!skbCCommCount!+1" & SET "kbComm!skbCCommCount!=SET kbLangSel=%%I" - IF "%%J"=="" GOTO KBLANG-PREMMS - SET /A "skbCCommCount=!skbCCommCount!+1" & SET "kbComm!skbCCommCount!=SET kbLangSel=%%J" - ) -) - -:KBLANG-PREMMS - -SET kbLangCount=0 -SET /A "kbLangPages=%count%/9" -SET /A "kbLangRemainder=%count%-(%kbLangPages%*9)"" -IF "%kbLangRemainder%" GTR "0" SET /A kbLangPages=%kbLangPages%+1 -SET kbLangPageLoc=1 - -:KBLANG-MMS -REM Modular menu system - -SET "lELs=9" -IF "%kbSub%"=="true" (SET "kb0Opt=Go Back") ELSE (SET "kb0Opt=Return to Menu") - -SET "kbDisablePrev=" & SET "kbPrevMsg=`n [P] Previous Page" & SET "lC10=N" & SET "kbDisableNext=" & SET "kbNextMsg=`n [N] Next Page" & SET "lC11=P" -IF "%kbLangPageLoc%" EQU "1" SET "kbDisablePrev=rem " & SET "kbPrevMsg=" & SET "lC11=" - -SET "lC1=1" & SET "lC2=2" & SET "lC3=3" & SET "lC4=4" & SET "lC5=5" & SET "lC6=6" & SET "lC7=7" & SET "lC8=8" & SET "lC9=9" -SET "kbLangSkip1=" & SET "kbLangSkip2=" & SET "kbLangSkip3=" & SET "kbLangSkip4=" & SET "kbLangSkip5=" & SET "kbLangSkip6=" & SET "kbLangSkip7=" & SET "kbLangSkip8=" -SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg1= [1] !lang%kbLangCount%!" & SET "kbCComm1=!kbComm%kbLangCount%!" & SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg2=`n [2] !lang%kbLangCount%!" & SET "kbCComm2=!kbComm%kbLangCount%!" & SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg3=`n [3] !lang%kbLangCount%!" & SET "kbCComm3=!kbComm%kbLangCount%!" & SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg4=`n [4] !lang%kbLangCount%!" & SET "kbCComm4=!kbComm%kbLangCount%!" & SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg5=`n [5] !lang%kbLangCount%!" & SET "kbCComm5=!kbComm%kbLangCount%!" & SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg6=`n [6] !lang%kbLangCount%!" & SET "kbCComm6=!kbComm%kbLangCount%!" & SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg7=`n [7] !lang%kbLangCount%!" & SET "kbCComm7=!kbComm%kbLangCount%!" & SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg8=`n [8] !lang%kbLangCount%!" & SET "kbCComm8=!kbComm%kbLangCount%!" & SET /A "kbLangCount=%kbLangCount%+1" -SET "kbLangMsg9=`n [9] !lang%kbLangCount%!" & SET "kbCComm9=!kbComm%kbLangCount%!" - -IF "%kbLangPageLoc%"=="%kbLangPages%" ( - SET "kbDisableNext=rem " & SET "kbNextMsg=" & SET "lC10=" - IF "%kbLangRemainder%" GTR "0" ( - SET "lR1=1" - SET "lELs=%kbLangRemainder%" - IF NOT "%kbLangRemainder%" GTR "1" (SET "kbLangSkip1=rem " & SET "kbLangMsg2=" & SET /A "kbLangCount=!kbLangCount!-1") ELSE (SET "lR2=2") - IF NOT "%kbLangRemainder%" GTR "2" (SET "kbLangSkip2=rem " & SET "kbLangMsg3=" & SET /A "kbLangCount=!kbLangCount!-1") ELSE (SET "lR3=3") - IF NOT "%kbLangRemainder%" GTR "3" (SET "kbLangSkip3=rem " & SET "kbLangMsg4=" & SET /A "kbLangCount=!kbLangCount!-1") ELSE (SET "lR4=4") - IF NOT "%kbLangRemainder%" GTR "4" (SET "kbLangSkip4=rem " & SET "kbLangMsg5=" & SET /A "kbLangCount=!kbLangCount!-1") ELSE (SET "lR5=5") - IF NOT "%kbLangRemainder%" GTR "5" (SET "kbLangSkip5=rem " & SET "kbLangMsg6=" & SET /A "kbLangCount=!kbLangCount!-1") ELSE (SET "lR6=6") - IF NOT "%kbLangRemainder%" GTR "6" (SET "kbLangSkip6=rem " & SET "kbLangMsg7=" & SET /A "kbLangCount=!kbLangCount!-1") ELSE (SET "lR7=7") - IF NOT "%kbLangRemainder%" GTR "7" (SET "kbLangSkip7=rem " & SET "kbLangMsg8=" & SET /A "kbLangCount=!kbLangCount!-1") ELSE (SET "lR8=8") - IF NOT "%kbLangRemainder%" GTR "8" (SET "kbLangSkip8=rem " & SET "kbLangMsg9=" & SET /A "kbLangCount=!kbLangCount!-1") ELSE (SET "lR9=9") - SET "lC1=!lR1!" & SET "lC2=!lR2!" & SET "lC3=!lR3!" & SET "lC4=!lR4!" & SET "lC5=!lR5!" & SET "lC6=!lR6!" & SET "lC7=!lR7!" & SET "lC8=!lR8!" & SET "lC9=!lR9!" - ) -) -SET "kbLangCommGo=" -IF "%kbSub%"=="true" (SET "kbPageMsg=`n") ELSE (SET "kbPageMsg=`n Page %kbLangPageLoc%/%kbLangPages%") - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. -POWERSHELL -NoP -C "Write-Host """%kbLangMsg1%%kbLangMsg2%%kbLangMsg3%%kbLangMsg4%%kbLangMsg5%%kbLangMsg6%%kbLangMsg7%%kbLangMsg8%%kbLangMsg9%`n%kbNextMsg%%kbPrevMsg%`n [0] %kb0Opt%`n [X] Exit%kbPageMsg%`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C %lC1%%lC2%%lC3%%lC4%%lC5%%lC6%%lC7%%lC8%%lC9%%lC10%%lC11%0X /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" -SET "kbChoice=%ERRORLEVEL%" -IF %kbLangPageLoc% LSS %kbLangPages% (SET /A kbLangCount=%kbLangCount%-9) ELSE (SET /A kbLangCount=%kbLangCount%-%kbLangRemainder%) - IF %kbChoice%==1 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm1%%%" & SET "kbChoice=NULL" - %kbLangSkip1%IF %kbChoice%==2 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm2%%%" & SET "kbChoice=NULL" - %kbLangSkip2%IF %kbChoice%==3 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm3%%%" & SET "kbChoice=NULL" - %kbLangSkip3%IF %kbChoice%==4 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm4%%%" & SET "kbChoice=NULL" - %kbLangSkip4%IF %kbChoice%==5 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm5%%%" & SET "kbChoice=NULL" - %kbLangSkip5%IF %kbChoice%==6 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm6%%%" & SET "kbChoice=NULL" - %kbLangSkip6%IF %kbChoice%==7 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm7%%%" & SET "kbChoice=NULL" - %kbLangSkip7%IF %kbChoice%==8 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm8%%%" & SET "kbChoice=NULL" - %kbLangSkip8%IF %kbChoice%==9 ENDLOCAL & CALL SET "kbLangCommGo=%%kbLangLoc::COMM:=%kbCComm9%%%" & SET "kbChoice=NULL" - %kbLangCommGo% - SET /A "lEL10=%lELs%" - %kbDisableNext%SET /A "lEL10=%lEL10%+1" - %kbDisableNext%IF %kbChoice%==%lEL10% ( - %kbDisableNext% SET /A kbLangPageLoc=%kbLangPageLoc%+1 - %kbDisableNext% SET /A kbLangCount=%kbLangCount%+9 - %kbDisableNext% GOTO KBLANG-MMS - %kbDisableNext%) - %kbDisablePrev%SET /A "lEL11=%lEL10%+1" & SET /A "lEL10=%lEL10%+1" - %kbDisablePrev%IF %kbChoice%==%lEL11% ( - %kbDisablePrev% SET /A kbLangPageLoc=%kbLangPageLoc%-1 - %kbDisablePrev% SET /A kbLangCount=%kbLangCount%-9 - %kbDisablePrev% GOTO KBLANG-MMS - %kbDisablePrev%) - SET /A "lEL12=%lEL10%+1" - IF %kbChoice%==%lEL12% ( - IF "%kbSub%"=="true" (ENDLOCAL & GOTO KBLANG-LANGS) ELSE (ENDLOCAL & GOTO HOME-MAINMENU) - ) - SET /A "lEL13=%lEL10%+2" - IF %kbChoice%==%lEL13% EXIT /B 0 -GOTO KBLANG-MMS - -:KBLANG-PRESET - -SETLOCAL - -IF /I "%~1"=="kbLangSet" SET "kbLangSel=%~2" & SET "rndOut=%~3" & SET "kbMakeDef=%~4" & GOTO KBLANG-SETLANG - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -POWERSHELL -NoP -C "Write-Host """`n Make default keyboard language? (Y/N): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==2 SET "kbMakeDef=false" - -IF "%altRun%"=="true" GOTO :KBLANG-ALTADD - -POWERSHELL -NoP -c "(Get-WinUserLanguageList).InputMethodTips" | FINDSTR /I /c:"%kbLangSel%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - IF /I "%~1"=="kbLangSet" ECHO AME-ERROR> "%TEMP%\[amecs]-LangComm%rndOut%.txt"& EXIT 0 - CALL :AUX-RETURN "Selected keyboard language is already installed." "HOME-LANGUAGE" -E - ) - -ECHO. & ECHO Adding keyboard language... - -:KBLANG-SETLANG - -IF NOT "%~1"=="kbLangSet" TIMEOUT /T 1 /NOBREAK > NUL -POWERSHELL -NoP -C "$NewLangs=Get-WinUserLanguageList; $NewLangs[0].InputMethodTips.Add('%kbLangSel%'); Set-WinUserLanguageList $NewLangs -Force" > NUL - IF %ERRORLEVEL% NEQ 0 ( - IF /I "%~1"=="kbLangSet" ECHO AME-ERROR1> "%TEMP%\[amecs]-LangComm%rndOut%.txt"& EXIT 0 - CALL :AUX-RETURN "Failed to set language settings." "HOME-LANGUAGE" -E - ) -IF NOT "%kbMakeDef%"=="false" POWERSHELL -NoP -C "Set-WinDefaultInputMethodOverride -InputTip '%kbLangSel%'" -IF /I "%~1"=="kbLangSet" ECHO Golden> "%TEMP%\[amecs]-LangComm%rndOut%.txt" & EXIT 0 - -CALL :AUX-RETURN "Keyboard language added successfully" -H - -:KBLANG-REMOVELANG - -SETLOCAL ENABLEDELAYEDEXPANSION - -IF /I "%~1"=="kbLangRem" SET "kbLangSel=%~2" & SET "rndOut=%~3" - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -IF "%altRun%"=="true" GOTO :KBLANG-ALTREMOVE - -ECHO. & ECHO Removing keyboard language... - -IF NOT "%~1"=="kbLangRem" TIMEOUT /T 1 /NOBREAK > NUL -REM Accounts for zero input methods. Very unlikely scenario -POWERSHELL -NoP -c "(Get-WinUserLanguageList).InputMethodTips" | FINDSTR /I /c:"%kbLangSel%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - FOR /F "usebackq delims=" %%A IN (`POWERSHELL -NoP -C "(Get-WinUserLanguageList).InputMethodTips" ^| FINDSTR /V /I /c:"%kbLangSel%"`) DO SET "oldInputMethods=!oldInputMethods!;$LangList[0].InputMethodTips.Add('%%A')" - ) ELSE ( - IF /I "%~1"=="kbLangRem" ECHO AME-ERROR> "%TEMP%\[amecs]-LangComm%rndOut%.txt"& EXIT 0 - CALL :AUX-RETURN "Selected keyboard language is not installed." "HOME-LANGUAGE" -E - ) -POWERSHELL -NoP -C "$LangTag = (Get-WinUserLanguageList)[0].LanguageTag; $LangList = New-WinUserLanguageList $LangTag%oldInputMethods%; Set-WinUserLanguageList $LangList -Force" - IF %ERRORLEVEL% NEQ 0 ( - IF /I "%~1"=="kbLangRem" ECHO AME-ERROR1> "%TEMP%\[amecs]-LangComm%rndOut%.txt"& EXIT 0 - CALL :AUX-RETURN "Failed to set language settings." "HOME-LANGUAGE" -E - ) -POWERSHELL -NoP -C "(Get-WinUserLanguageList).InputMethodTips" | FINDSTR /I /c:"%kbLangSel%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - IF /I "%~1"=="kbLangRem" ECHO AME-ERROR2> "%TEMP%\[amecs]-LangComm%rndOut%.txt"& EXIT 0 - CALL :AUX-RETURN "Selected keyboard language cannot be removed." "HOME-LANGUAGE" -E - ) - -IF /I "%~1"=="kbLangRem" ECHO Golden> "%TEMP%\[amecs]-LangComm%rndOut%.txt"& EXIT 0 - -CALL :AUX-RETURN "Keyboard language removed successfully" -H - -:KBLANG-ALTADD - -ECHO. & ECHO Adding keyboard language... - -CALL :AUX-ALTSTART "SetkbLang" "CMD /C 'START /min '' '|Script|' kbLangSet %kbLangSel% |rndOut| %kbMakeDef%'" - IF %ERRORLEVEL% EQU 1 CALL :AUX-RETURN "Failed to create scheduled task. (1)" "HOME-LANGUAGE" -E -C - IF %ERRORLEVEL% EQU 2 CALL :AUX-RETURN "Failed to create scheduled task. (2)" "HOME-LANGUAGE" -E -C - - CALL :AUX-WAITLOOP "-C:Golden" "%userTemp%\[amecs]-LangComm%rndOut%.txt" -TME "30" - IF %ERRORLEVEL% EQU 2 CALL :AUX-RETURN "Selected keyboard language is already installed." "HOME-LANGUAGE" -C -E - IF %ERRORLEVEL% EQU 3 CALL :AUX-RETURN "Failed to set language settings. (1)" "HOME-LANGUAGE" -C -E - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Failed to set language settings. (2)" "HOME-LANGUAGE" -C -E - CALL :AUX-RETURN "Keyboard language added successfully" -H -C - -:KBLANG-ALTREMOVE - -ECHO. & ECHO Removing keyboard language... - -CALL :AUX-ALTSTART "RemkbLang" "CMD /C 'START /min '' '|Script|' kbLangRem %kbLangSel% |rndOut|'" - IF %ERRORLEVEL% EQU 1 CALL :AUX-RETURN "Failed to create scheduled task. (1)" "HOME-LANGUAGE" -E -C - IF %ERRORLEVEL% EQU 2 CALL :AUX-RETURN "Failed to create scheduled task. (2)" "HOME-LANGUAGE" -E -C - - CALL :AUX-WAITLOOP "-C:Golden" "%userTemp%\[amecs]-LangComm%rndOut%.txt" -TME "30" - IF %ERRORLEVEL% EQU 2 CALL :AUX-RETURN "Selected keyboard language is not installed." "HOME-LANGUAGE" -C -E - IF %ERRORLEVEL% EQU 3 CALL :AUX-RETURN "Failed to set language settings. (1)" "HOME-LANGUAGE" -C -E - IF %ERRORLEVEL% EQU 4 CALL :AUX-RETURN "Selected keyboard language cannot be removed." "HOME-LANGUAGE" -C -E - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Failed to set language settings. (2)" "HOME-LANGUAGE" -C -E - CALL :AUX-RETURN "Keyboard language removed successfully" -H -C -REM -------------------------KBLANG-END------------------------- - - - -REM -------------------------NOUSERNAME------------------------- -:NOUSERNAME-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Disabling username login requirement... -TIMEOUT /T 2 /NOBREAK > NUL -REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v dontdisplaylastusername /f > NUL 2>&1 - -CALL :AUX-RETURN "The username login requirement is now disabled" -H - -:NOUSERNAME-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Enabling username login requirement... -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v dontdisplaylastusername /t REG_DWORD /d 1 /f > NUL 2>&1 - -CALL :AUX-RETURN "The username login requirement is now enabled" -H R:L.sign-out -L "A sign-out is required to take effect." -REM -----------------------NOUSERNAME-END----------------------- - - - -REM -------------------------AUTOLOGON-------------------------- -:AUTOLOGON-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -CALL :AUX-INPUTLOOP "userPassword" "Enter your password, or enter 'Cancel' to exit" "0" "9" -Secure - IF %ERRORLEVEL% EQU 3 ENDLOCAL & GOTO HOME-MAINMENU - -IF %inpLenOut% GEQ 11 CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Enabling AutoLogon... - -CERTUTIL /f /decode "%scriptPath%" "%TEMP%\[amecs]-AutoLogon%rndOut%.exe" > NUL 2>&1 - -POWERSHELL -NoP -C "EXIT (Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -Wait -NoNewWindow).ExitCode" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - IF %ERRORLEVEL% EQU 7 CALL :AUX-RETURN "Failed to enable AutoLogon. (1)" -H -E -C - CALL :AUX-RETURN "Failed to enable AutoLogon. (2)" -H -E -C - ) - -REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUsername" 2>&1 | FINDSTR /c:"%currentUsername%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" 2>&1 | FINDSTR /R /X /C:".*AutoAdminLogon[ ].*REG_SZ.*[ ]1" > NUL 2>&1 - IF NOT ERRORLEVEL 1 CALL :AUX-RETURN "Failed to enable AutoLogon. (3)" -H -E -C - ) - -IF NOT "%userPassword%"=="" ( - POWERSHELL -NoP -C "EXIT (Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '""""%currentUsername:'=''%""""','""""%userPassword:'=''%""""','/DISABLECAD' -Wait -NoNewWindow).ExitCode" > NUL 2>&1 -) ELSE ( - POWERSHELL -NoP -C "EXIT (Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '""""%currentUsername:'=''%""""','""""""','/DISABLECAD' -Wait -NoNewWindow).ExitCode" > NUL 2>&1 -) - IF %ERRORLEVEL% NEQ 0 ( - POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow" > NUL 2>&1 - IF %ERRORLEVEL% EQU 7 CALL :AUX-RETURN "Failed to enable AutoLogon. (4)" -H -E -C - CALL :AUX-RETURN "Failed to enable AutoLogon. (5)" -H -E -C - ) - -REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUsername" 2>&1 | FINDSTR /c:"%currentUsername%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" 2>&1 | FINDSTR /R /X /C:".*AutoAdminLogon[ ].*REG_SZ.*[ ]1" > NUL 2>&1 - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & CALL :AUX-RETURN "Failed to enable AutoLogon. (6)" -H -E -C - ) ELSE ( - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & CALL :AUX-RETURN "Failed to enable AutoLogon. (7)" -H -E -C - ) - -CALL :AUX-RETURN "Enabled AutoLogon successfully" -H -C - -:AUTOLOGON-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Disabling AutoLogon... - -CALL :AUX-GENRND "7" - -CERTUTIL /f /decode "%scriptPath%" "%TEMP%\[amecs]-AutoLogon%rndOut%.exe" > NUL 2>&1 - -POWERSHELL -NoP -C "EXIT (Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -Wait -NoNewWindow).ExitCode" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - IF %ERRORLEVEL% EQU 7 CALL :AUX-RETURN "Failed to disable AutoLogon. (1)" -H -E -C - CALL :AUX-RETURN "Failed to disable AutoLogon. (2)" -H -E -C - ) - -REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUsername" 2>&1 | FINDSTR /I /E /c:" %currentUsername%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" 2>&1 | FINDSTR /R /X /C:".*AutoAdminLogon[ ].*REG_SZ.*[ ]1" > NUL 2>&1 - IF NOT ERRORLEVEL 1 CALL :AUX-RETURN "Failed to disable AutoLogon. (3)" -H -E -C - ) - -CALL :AUX-RETURN "Disabled AutoLogon successfully" -H -C -REM -----------------------AUTOLOGON-END------------------------ - - - REM --------------- - REM Extra Functions - REM --------------- - - -REM ----------------------------WSL----------------------------- -:WSL-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -DISM /Online /Get-FeatureInfo /FeatureName:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /I /c:"State : Enabled" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - WHERE wsl.exe > NUL 2>&1 - IF NOT ERRORLEVEL 1 CALL :AUX-RETURN "WSL is already enabled." "HOME-WSL" -E - ) - -ECHO. & ECHO Enabling WSL... -DISM /Online /Enable-Feature /FeatureName:Microsoft-Windows-Subsystem-Linux -NoRestart /English | FINDSTR /I /c:"Error" - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Failed to enable WSL. (1)" "HOME-WSL" -E - -DISM /Online /Get-FeatureInfo /FeatureName:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /I /c:"State : Disabled" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Failed to enable WSL. (2)" "HOME-WSL" -E - -WHERE wsl.exe > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Enabled WSL successfully" -H - -CALL :AUX-RETURN "Enabled WSL successfully" -H "R:R -T 0.restart" -L "A restart is required to complete the setup." - -:WSL-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -DISM /Online /Get-FeatureInfo /FeatureName:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /I /c:"State : Disabled" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - WHERE wsl.exe > NUL 2>&1 - IF NOT ERRORLEVEL 1 CALL :AUX-RETURN "WSL is already disabled." "HOME-WSL" -E - ) -ECHO. & ECHO Disabling WSL... -DISM /Online /Disable-Feature /FeatureName:Microsoft-Windows-Subsystem-Linux -NoRestart /English | FINDSTR /I /c:"Error" - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Failed to disable WSL. (1)" "HOME-WSL" -E - -DISM /Online /Get-FeatureInfo /FeatureName:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /I /c:"State : Enabled" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Failed to disable WSL. (2)" "HOME-WSL" -E - -WHERE wsl.exe > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Disabled WSL successfully" -H - -CALL :AUX-RETURN "Disabled WSL successfully" -H "R:R -T 0.restart" -L "A restart is required to complete the setup." - -:WSL-DISTROMENUP1 - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -CURL store.rg-adguard.net 2>&1 | FINDSTR /I /c:"Cloudflare Ray ID" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeWSL1Ch=123456N0X" - SET "homeWSL2Ch=12345678NP0X" - SET "homeWSL3Ch=23P0X" - SET "homeWSLUnavailable1=""" -NoNewLine; Write-Host ' :REP:' -ForegroundColor DarkGray -NoNewLine; Write-Host ' [Server Unavailable]' -ForegroundColor Red -NoNewLine; Write-Host """" - SET "homeWSLUnavailable2= :REP:""" -ForegroundColor DarkGray -NoNewLine; Write-Host ' [Server Unavailable]' -ForegroundColor Red -NoNewLine; Write-Host """" - ) ELSE ( - SET "homeWSL1Ch=123456789N0X" - SET "homeWSL2Ch=123456789NP0X" - SET "homeWSL3Ch=123P0X" - SET "homeWSLUnavailable1= :REP:" - SET "homeWSLUnavailable2= :REP:" - ) - -POWERSHELL -NoP -C "Write-Host """ [1] Ubuntu 20.04 LTS`n [2] Ubuntu 18.04 LTS`n [3] Ubuntu 16.04 LTS`n [4] Debian Stable`n [5] Kali Linux`n [6] Fedora Remix`n%homeWSLUnavailable1::REP:=[7] Pengwin%`n%homeWSLUnavailable2::REP:=[8] Pengwin Enterprise 7%`n%homeWSLUnavailable2::REP:=[9] Alpine Linux%`n`n [N] Next Page`n [0] Return to Menu`n [X] Exit`n Page 1/3`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C %homeWSL1Ch% /N /M %BS%; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF "%homeWSL1Ch%"=="123456N0X" ( - IF %ERRORLEVEL%==1 SET "wslDistro=Ubuntu" & SET "wslGroups=adm,dialout,cdrom,floppy,sudo,audio,dip,video,plugdev,netdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==2 SET "wslDistro=Ubuntu-18.04" & SET "wslGroups=adm,dialout,cdrom,floppy,sudo,audio,dip,video,plugdev,lxd,netdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==3 SET "wslDistro=Ubuntu-16.04" & SET "wslGroups=adm,dialout,cdrom,floppy,sudo,audio,dip,video,plugdev,netdev,lxd" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==4 SET "wslDistro=Debian" & SET "wslGroups=adm,cdrom,sudo,dip,plugdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==5 SET "wslDistro=kali-linux" & SET "wslGroups=adm,cdrom,sudo,dip,plugdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==6 SET "wslDistro=fedoraremix" & SET "wslGroups=adm,wheel,cdrom" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==7 GOTO WSL-DISTROMENUP2 - IF %ERRORLEVEL%==8 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==9 EXIT /B 0 - ) - - IF %ERRORLEVEL%==1 SET "wslDistro=Ubuntu" & SET "wslGroups=adm,dialout,cdrom,floppy,sudo,audio,dip,video,plugdev,netdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==2 SET "wslDistro=Ubuntu-18.04" & SET "wslGroups=adm,dialout,cdrom,floppy,sudo,audio,dip,video,plugdev,lxd,netdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==3 SET "wslDistro=Ubuntu-16.04" & SET "wslGroups=adm,dialout,cdrom,floppy,sudo,audio,dip,video,plugdev,netdev,lxd" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==4 SET "wslDistro=Debian" & SET "wslGroups=adm,cdrom,sudo,dip,plugdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==5 SET "wslDistro=kali-linux" & SET "wslGroups=adm,cdrom,sudo,dip,plugdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==6 SET "wslDistro=fedoraremix" & SET "wslGroups=adm,wheel,cdrom" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==7 SET "wslDistro=WLinux" & SET "wslGroups=adm,cdrom,sudo,dip,plugdev" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==8 SET "wslDistro=WLE" & SET "wslGroups=adm,wheel,cdrom" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==9 SET "wslDistro=Alpine" & SET "wslGroups=adm,wheel,floppy,cdrom,tape,ping" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==10 GOTO WSL-DISTROMENUP2 - IF %ERRORLEVEL%==11 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==12 EXIT /B 0 - -:WSL-DISTROMENUP2 - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. -POWERSHELL -NoP -C "Write-Host """ [1] openSUSE 4.2`n [2] openSUSE Tumbleweed`n [3] openSUSE Leap 15.1`n [4] openSUSE Leap 15.2`n [5] openSUSE Leap 15.3`n [6] Oracle Linux 7.9`n [7] Oracle Linux 8.5`n [8] SLES 12 SP2`n%homeWSLUnavailable1::REP:=[9] SLES 12 SP5%`n`n [N] Next Page`n [P] Previous Page`n [0] Return to Menu`n [X] Exit`n Page 2/3`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C %homeWSL2Ch% /N /M %BS%; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF "%homeWSL2Ch%"=="12345678NP0X" ( - IF %ERRORLEVEL%==1 SET "wslDistro=openSUSE-42" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==2 SET "wslDistro=openSUSE-Tumbleweed" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==3 SET "wslDistro=openSUSE-Leap-15-1" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==4 SET "wslDistro=openSUSE-Leap-15.2" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==5 SET "wslDistro=openSUSE-Leap-15.3" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==6 SET "wslDistro=OracleLinux_7_9" & SET "wslGroups=adm,wheel,cdrom" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==7 SET "wslDistro=OracleLinux_8_5" & SET "wslGroups=adm,wheel,cdrom" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==8 SET "wslDistro=SLES-12" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==9 GOTO WSL-DISTROMENUP3 - IF %ERRORLEVEL%==10 GOTO WSL-DISTROMENUP1 - IF %ERRORLEVEL%==11 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==12 EXIT /B 0 - ) - IF %ERRORLEVEL%==1 SET "wslDistro=openSUSE-42" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==2 SET "wslDistro=openSUSE-Tumbleweed" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==3 SET "wslDistro=openSUSE-Leap-15-1" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==4 SET "wslDistro=openSUSE-Leap-15.2" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==5 SET "wslDistro=openSUSE-Leap-15.3" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==6 SET "wslDistro=OracleLinux_7_9" & SET "wslGroups=adm,wheel,cdrom" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==7 SET "wslDistro=OracleLinux_8_5" & SET "wslGroups=adm,wheel,cdrom" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==8 SET "wslDistro=SLES-12" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==9 SET "wslDistro=SUSE-Linux-Enterprise-Server-12-SP5" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==10 GOTO WSL-DISTROMENUP3 - IF %ERRORLEVEL%==11 GOTO WSL-DISTROMENUP1 - IF %ERRORLEVEL%==12 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==13 EXIT /B 0 - -:WSL-DISTROMENUP3 - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. -POWERSHELL -NoP -C "Write-Host """%homeWSLUnavailable2::REP:=[1] SLES 15 SP1%`n [2] SLES 15 SP2`n [3] SLES 15 SP3`n`n [P] Previous Page`n [0] Return to Menu`n [X] Exit`n Page 3/3`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C %homeWSL3Ch% /N /M %BS%; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF "%homeWSL3Ch%"=="23P0X" ( - IF %ERRORLEVEL%==1 SET "wslDistro=SUSE-Linux-Enterprise-Server-15-SP2" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==2 SET "wslDistro=SUSE-Linux-Enterprise-Server-15-SP3" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==3 GOTO WSL-DISTROMENUP2 - IF %ERRORLEVEL%==4 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==5 EXIT /B 0 - ) - IF %ERRORLEVEL%==1 SET "wslDistro=SLES-15-SP1" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==2 SET "wslDistro=SUSE-Linux-Enterprise-Server-15-SP2" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==3 SET "wslDistro=SUSE-Linux-Enterprise-Server-15-SP3" & SET "wslGroups=users" & GOTO %wslMenuLoc% - IF %ERRORLEVEL%==4 GOTO WSL-DISTROMENUP2 - IF %ERRORLEVEL%==5 GOTO HOME-MAINMENU - IF %ERRORLEVEL%==6 EXIT /B 0 - -:WSL-DISTROINSTALL - -IF "%altRun%"=="true" GOTO ALTPARENT-WSL-DISTROINSTALL - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -IF "%wslUnattend%"=="true" GOTO :WSL-DISTROUNATTEND - -CALL :AUX-GENRND "7" - -IF NOT "%adminPrivs%"=="false" ( - DISM /Online /Get-FeatureInfo:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /x /c:"State : Enabled" > NUL 2>&1 - IF ERRORLEVEL 1 ( - POWERSHELL -NoP -C "Write-Host """`n`n WSL is disabled.""" -ForegroundColor Red; Write-Host """ __________________________________________________________`n`n Would you like to enable it now? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 ENDLOCAL & GOTO HOME-WSL - IF ERRORLEVEL 1 ENDLOCAL & GOTO WSL-ENABLE - ) - WHERE wsl.exe > NUL 2>&1 - IF ERRORLEVEL 1 CALL :AUX-RETURN "A restart is required for WSL functionality." "HOME-WSL" -E -) ELSE ( - WHERE wsl.exe > NUL 2>&1 - IF ERRORLEVEL 1 CALL :AUX-RETURN "WSL is disabled." "HOME-WSL" -E -) - -POWERSHELL -NoP -C "[console]::OutputEncoding = [Text.UnicodeEncoding]::Unicode; WSL -l -q | FINDSTR /X /c:'%wslDistro%'">NUL 2>&1 && SET "distroReg=true" || SET "distroReg=false" - -IF "%distroReg%"=="" CALL :AUX-RETURN "Failed to check registered distros." "HOME-WSL" -E - -DIR /B /A:d "%LOCALAPPDATA%\AME-WSL" 2>&1 | FINDSTR /X /c:"%wslDistro%" > NUL 2>&1 && SET "distroFiles=true" - -IF "%distroReg%"=="true" ( - CALL :AUX-RETURN "Distro is already installed." "HOME-WSL" -E -) ELSE ( - IF "%distroFiles%"=="true" ( - POWERSHELL -NoP -C "Write-Host """`n`n Traces of previous distro installation found.""" -ForegroundColor Red; Write-Host """ __________________________________________________________`n`n Remove installation files and reinstall distro? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C NY /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 ( - CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - ECHO. & ECHO Removing installation files... - TIMEOUT /T 1 /NOBREAK > NUL 2>&1 - FOR /F "usebackq delims=" %%A IN (`DIR /B /A:d "%LOCALAPPDATA%\AME-WSL" 2^>^&1 ^| FINDSTR /X /c:"%wslDistro%"`) DO ( - FOR /F "usebackq delims=" %%B IN (`DIR /S /B "%LOCALAPPDATA%\AME-WSL\%%A\*.exe" 2^>^&1`) DO ( - FOR /F "usebackq delims=" %%C IN (`POWERSHELL -NoP -C "Get-Process | Where-Object {$_.Path -eq '%%~B'} | Select-Object -ExpandProperty Id" 2^>^&1`) DO ( - TASKKILL /F /T /PID "%%~C" > NUL 2>&1 - ) - ) - RMDIR /Q /S "%LOCALAPPDATA%\AME-WSL\%%A" > NUL - ) - ) ELSE ( - TASKKILL /F /T /PID "%distroAltPID%" > NUL 2>&1 - ENDLOCAL & GOTO HOME-WSL - ) - ) -) - -IF "%wslDistro%"=="Alpine" ( - SET "wslLShell=/bin/ash" - SET "sudo=" -) ELSE ( - SET "wslLShell=/bin/bash" - SET "sudo=sudo " -) - -IF NOT "%wslUnattendRun%"=="true" ( - POWERSHELL -NoP -C "Write-Host """`n A Linux distro must be downloaded`n Continue? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 ENDLOCAL & GOTO HOME-MAINMENU -) - -ECHO. & ECHO Fetching download link... - -IF "%wslUnattendRun%"=="true" CALL :AUX-NETWORKCHECK -L - -CALL :AUX-FETCHLINK "HOME-WSL" "%wslDistro%" -Download "%TEMP%\[amecs]-%wslDistro%%rndOut%.zip" "Downloading distro" - IF %ERRORLEVEL% EQU 5 CALL :AUX-RETURN "%fetchMsgOut%" "HOME-WSL" -E - -ECHO. & ECHO Preparing distro for installation... - -IF NOT EXIST "%LOCALAPPDATA%\AME-WSL" MKDIR "%LOCALAPPDATA%\AME-WSL" -RMDIR /Q /S "%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp" > NUL 2>&1 -MKDIR "%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp" - -POWERSHELL -NoP -C "Expand-Archive -LiteralPath '%TEMP%\[amecs]-%wslDistro%%rndOut%.zip' -DestinationPath '%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp'" -DEL /Q /F "%TEMP%\[amecs]-%wslDistro%%rndOut%.zip" -FOR /F "usebackq delims=" %%A IN (`DIR /B "%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp" ^| FINDSTR /i ".*_x64\.appx .*_x64\.msix .*\.exe"`) DO ( - IF /i "%%~xA"==".exe" ( - RENAME "%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp" "%wslDistro%" - SET "wslExe=%LOCALAPPDATA%\AME-WSL\%wslDistro%\%%~A" - SET "wslExeName=%%~nxA" - ) ELSE ( - RENAME "%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp\%%~A" "%%~nA.zip" - MKDIR "%LOCALAPPDATA%\AME-WSL\%wslDistro%" - POWERSHELL -NoP -C "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -LiteralPath '%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp\%%~nA.zip' -DestinationPath '%LOCALAPPDATA%\AME-WSL\%wslDistro%'" - RMDIR /Q /S "%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp" - - FOR /F "usebackq delims=" %%B IN (`DIR /B "%LOCALAPPDATA%\AME-WSL\%wslDistro%" ^| FINDSTR /i ".*\.exe"`) DO ( - IF /i "%%~B"=="PengwinUI.exe" ( - COPY "%LOCALAPPDATA%\AME-WSL\%wslDistro%\DistroLauncher\pengwin.exe" "%LOCALAPPDATA%\AME-WSL\%wslDistro%\pengwin.exe" /y > NUL - SET "wslExe=%LOCALAPPDATA%\AME-WSL\%wslDistro%\pengwin.exe" - SET "wslExeName=pengwin.exe" - ) ELSE ( - SET "wslExe=%LOCALAPPDATA%\AME-WSL\%wslDistro%\%%~B" - SET "wslExeName=%%~nxB" - ) - ) - ) -) - -IF "%wslExe%"=="" ( - DEL /Q /F "%TEMP%\%wslDistro%%rndOut%.zip" > NUL - RMDIR /Q /S "%LOCALAPPDATA%\AME-WSL\%wslDistro%%rndOut%-Tmp" > NUL 2>&1 - RMDIR /Q /S "%LOCALAPPDATA%\AME-WSL\%wslDistro%" > NUL 2>&1 - CALL :AUX-RETURN "Failed to locate distro executable." "HOME-WSL" -E -) - -ECHO. & ECHO Installing distro, this may take awhile... - -SET /A "count0=0" -SET /A "count1=0" - -POWERSHELL -NoP -C "(Start-Process 'CMD' -ArgumentList '/K','POWERSHELL -NoP -C """"(Start-Process ''%wslExe:'=''''%'' -NoNewWindow -PassThru).Id | Out-File -LiteralPath ''%TEMP:'=''''%\[amecs]-DistroPID%rndOut%.txt'' -Encoding default""""' -WindowStyle Hidden -PassThru).Id" 1> "%TEMP%\[amecs]-DistroHostPID%rndOut%.txt" - -:WSL-DISTROPROGRESS - -TIMEOUT /T 2 /NOBREAK > NUL - -IF %count0% GEQ 15 ( - TASKKILL /F /T /PID "%distroPID%" /PID "%distroHostPID%" > NUL 2>&1 - CALL :AUX-RETURN "Failed to fetch distro process IDs." "HOME-WSL" -C -E -) - -IF %count1% GTR 500 ( - TASKKILL /F /T /PID "%distroPID%" /PID "%distroHostPID%" > NUL 2>&1 - CALL :AUX-RETURN "Distro installation timed out." "HOME-WSL" -C -E -) - -FINDSTR "1 2 3 4 5 6 7 8 9 0" "%TEMP%\[amecs]-DistroHostPID%rndOut%.txt" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SET /A "count0=%count0%+1" - GOTO WSL-DISTROPROGRESS - ) ELSE ( - SET /P "distroHostPID=" < "%TEMP%\[amecs]-DistroHostPID%rndOut%.txt" - ) -FINDSTR "1 2 3 4 5 6 7 8 9 0" "%TEMP%\[amecs]-DistroPID%rndOut%.txt" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SET /A "count0=%count0%+1" - GOTO WSL-DISTROPROGRESS - ) ELSE ( - SET /P "distroPID=" < "%TEMP%\[amecs]-DistroPID%rndOut%.txt" - ) - -POWERSHELL -NoP -C "[console]::OutputEncoding = [Text.UnicodeEncoding]::Unicode; WSL -l -q | FINDSTR /X /c:'%wslDistro%'" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - TASKKILL /F /T /PID "%distroPID%" /PID "%distroHostPID%" > NUL 2>&1 - GOTO WSL-DISTROCONFIG - ) - -TASKLIST /FI "IMAGENAME eq cmd.exe" /FI "PID eq %distroHostPID%" 2>&1 | FINDSTR /i /c:"cmd.exe">NUL 2>&1 || SET /A "count1=%count1%+50" - -SET /A "count1=%count1%+1" -GOTO WSL-DISTROPROGRESS - - -:WSL-DISTROCONFIG - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -CALL :AUX-INPUTLOOP "wslRootPass" "Enter new root password" "0" "1" -Secure - -CALL :AUX-INPUTLOOP "wslUser" "Enter new UNIX username" "%inpLenOut%" "2" - -IF NOT "%wslUser%"==":None:" CALL :AUX-INPUTLOOP "wslUserPass" "Enter new UNIX password" "%inpLenOut%" "1" -Secure - -IF NOT "%wslRootPass%"==":None:" SET "wslRootArg=echo -e """"%wslRootPass%\n%wslRootPass%"""" | passwd """"root"""" && " - -IF NOT "%wslUser%"==":None:" SET "wslUserArg=useradd -m -G %wslGroups% -s %wslLShell% """"%wslUser%"""" && echo -e """"\n[user]\ndefault=%wslUser%"""" >> """"/etc/wsl.conf"""" && " - -IF NOT "%wslUserPass%"==":None:" SET "wslUserPassArg=echo -e """"%wslUserPass%\n%wslUserPass%"""" | passwd """"%wslUser%"""" && " - -POWERSHELL -NoP -C "Write-Host -NoNewLine '%wslRootArg%%sudo%%wslUserArg%%wslUserPassArg%echo """"Blank""""'" > "%TEMP%\[amecs]-WSLLin%rndOut%.txt" 2>&1 - -WSL -d %wslDistro% < "%TEMP%\[amecs]-WSLLin%rndOut%.txt" > NUL 2>&1 -WSL -t %wslDistro% > NUL 2>&1 - -:WSL-DISTROCOMPLETE - -ECHO "%wslDistro%" | FINDSTR /b /c:""""SUSE-Linux-Enterprise" /c:""""SLES-" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Distro installed successfully" -H -L "Use the SUSEConnect command to register this distro." -C - -CALL :AUX-RETURN "Distro installed successfully" -H -C - -:WSL-DISTROREMOVE - -IF "%altRun%"=="true" GOTO ALTPARENT-WSL-DISTROREMOVE - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -POWERSHELL -NoP -C "[console]::OutputEncoding = [Text.UnicodeEncoding]::Unicode; WSL -l -q | FINDSTR /X /c:'%wslDistro%'">NUL 2>&1 && SET "distroReg=true" || SET "distroReg=false" -IF "%distroReg%"=="" ( - TASKKILL /F /T /PID "%distroAltPID%" > NUL 2>&1 - CALL :AUX-RETURN "Failed to check registered distros." "HOME-WSL" -E -) - -DIR /B /A:d "%LOCALAPPDATA%\AME-WSL" 2>&1 | FINDSTR /X /c:"%wslDistro%" > NUL 2>&1 && SET "distroRemFiles=true" - -IF NOT "%distroReg%"=="true" ( - TASKKILL /F /T /PID "%distroAltPID%" > NUL 2>&1 - IF NOT "%distroRemFiles%"=="true" CALL :AUX-RETURN "Distro is not installed." "HOME-WSL" -E -) - -POWERSHELL -NoP -C "Write-Host """`n Are you sure you want to remove this distro? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==2 TASKKILL /F /T /PID "%distroAltPID%">NUL 2>&1 & ENDLOCAL & GOTO HOME-MAINMENU - -ECHO. & ECHO Removing distro... - -IF "%distroReg%"=="true" ( - WSL --unregister %wslDistro% > NUL 2>&1 - IF NOT ERRORLEVEL 0 CALL :AUX-RETURN "Failed to unregister distro." "HOME-WSL" -E -) -FOR /F "usebackq delims=" %%A IN (`DIR /B /A:d "%LOCALAPPDATA%\AME-WSL" 2^>^&1 ^| FINDSTR /X /c:"%wslDistro%"`) DO ( - FOR /F "usebackq delims=" %%B IN (`DIR /S /B "%LOCALAPPDATA%\AME-WSL\%%A\*.exe" 2^>^&1`) DO ( - FOR /F "usebackq delims=" %%C IN (`POWERSHELL -NoP -C "Get-Process | Where-Object {$_.Path -eq '%%~B'} | Select-Object -ExpandProperty Id" 2^>^&1`) DO ( - TASKKILL /F /T /PID "%%~C" > NUL 2>&1 - ) - ) - RMDIR /Q /S "%LOCALAPPDATA%\AME-WSL\%%A" > NUL -) -FOR /F "usebackq delims=" %%A IN (`DIR /B "%LOCALAPPDATA%\AME-WSL" 2^>^&1`) DO SET "contentsEmpty=false" -IF NOT "%contentsEmpty%"=="false" RMDIR /Q /S "%LOCALAPPDATA%\AME-WSL" > NUL 2>&1 - -TIMEOUT /T 1 /NOBREAK > NUL - -CALL :AUX-RETURN "Distro removed successfully" -H - -:WSL-DISTROUNATTEND - -CALL :AUX-NETWORKCHECK - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Internet is required for an unattended installation." "HOME-WSL" -E - -SET "unattendMsg=AutoLogon" -REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUsername" 2>&1 | FINDSTR /c:"%currentUsername%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" 2>&1 | FINDSTR /R /X /C:".*AutoAdminLogon[ ].*REG_SZ.*[ ]1" > NUL 2>&1 - IF NOT ERRORLEVEL 1 SET "autoLogon=enabled" & SET "unattendMsg=checks" - ) -CALL :AUX-CENTERTEXT "Unattended mode requires your password for %unattendMsg%" -POWERSHELL -NoP -C "Write-Host """`n%cenOut%"""; Write-Host ' YOUR COMPUTER WILL RESTART DURING THE PROCESS' -ForegroundColor Red" - -CALL :AUX-INPUTLOOP "userPassword" "Enter your password, or enter 'Cancel' to exit" "3" "9" -Secure - IF %ERRORLEVEL% EQU 3 ENDLOCAL & GOTO HOME-MAINMENU - -IF NOT "%userPassword%"=="" ( - POWERSHELL -NoP -C "$Pass = ConvertTo-SecureString -AsPlainText -String '%userPassword:'=''%' -Force; $Creds = New-Object System.Management.Automation.PSCredential '%currentUsername:'=''%',$Pass; Start-Process '%scriptPath:'=''%' -Credential $Creds -ArgumentList 'permsCheck' -WindowStyle Hidden" > NUL 2>&1 - IF ERRORLEVEL 1 CALL :AUX-RETURN "User %currentUsername% must be able to read and execute this script." "HOME-WSL" -E -) - -IF %inpLenOut% GEQ 11 CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & SET /A "inpLenOut=0" - -DISM /Online /Get-FeatureInfo /FeatureName:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /I /c:"State : Enabled" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - ECHO. & ECHO Enabling WSL... - SET /A "inpLenOut=%inpLenOut%+2" - - DISM /Online /Enable-Feature /FeatureName:Microsoft-Windows-Subsystem-Linux -NoRestart /English | FINDSTR /I /c:"Error" - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Failed to enable WSL. (1)" "HOME-WSL" -E - - DISM /Online /Get-FeatureInfo /FeatureName:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /I /c:"State : Disabled" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Failed to enable WSL. (2)" "HOME-WSL" -E -) - -CALL :AUX-GENRND "7" -IF NOT "%userPassword%"=="" SET "userPassword=%userPassword:'=''%" - -IF NOT "%autoLogon%"=="enabled" ( - IF %inpLenOut% GEQ 11 CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & SET /A "inpLenOut=0" - - ECHO. & ECHO Enabling AutoLogon... - SET /A "inpLenOut=%inpLenOut%+2" - - CERTUTIL /f /decode "%scriptPath%" "%TEMP%\[amecs]-AutoLogon%rndOut%.exe" > NUL 2>&1 - - POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -Wait -NoNewWindow" > NUL 2>&1 - - IF NOT "%userPassword%"=="" ( - POWERSHELL -NoP -C "EXIT (Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '""""%currentUsername:'=''%""""','""""%userPassword:'=''%""""','1','/DISABLECAD' -Wait -NoNewWindow).ExitCode" > NUL 2>&1 - ) ELSE ( - POWERSHELL -NoP -C "EXIT (Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '""""%currentUsername:'=''%""""','""""""','1','/DISABLECAD' -Wait -NoNewWindow).ExitCode" > NUL 2>&1 - ) - IF ERRORLEVEL 1 ( - POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow" > NUL 2>&1 - IF ERRORLEVEL 7 CALL :AUX-RETURN "Failed to enable AutoLogon. (4)" -H -E -C - CALL :AUX-RETURN "Failed to enable AutoLogon. (5)" -H -E -C - ) - SET "userPassword=" - - REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUsername" 2>&1 | FINDSTR /I /E /c:" %currentUsername%" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" 2>&1 | FINDSTR /R /X /C:".*AutoAdminLogon[ ].*REG_SZ.*[ ]1" > NUL 2>&1 - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & CALL :AUX-RETURN "Failed to enable AutoLogon. (6)" -H -E -C - ) ELSE ( - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & CALL :AUX-RETURN "Failed to enable AutoLogon. (7)" -H -E -C - ) -) - -IF %inpLenOut% GEQ 11 CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Creating task and restarting computer... - -IF "%userStatus%"=="Elevated" ( - SCHTASKS /CREATE /TN "[amecs]-WSLUNATTENDSTART" /TR "CMD /C 'SCHTASKS /DELETE /TN '[amecs]-WSLUNATTENDSTART' /F>NUL&'%scriptPath%' wslUnattend '%wslDistro%' '%wslGroups%''" /SC ONLOGON /RL HIGHEST /RU "%currentUsername%" /F> NUL 2>&1 < NUL - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & SCHTASKS /DELETE /TN "[amecs]-WSLUNATTENDSTART" /F>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (1)" -H -E -C - POWERSHELL -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName '[amecs]-WSLUNATTENDSTART' -Settings $TaskSet" > NUL 2>&1 - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & SCHTASKS /DELETE /TN "[amecs]-WSLUNATTENDSTART" /F>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (2)" -H -E -C -) ELSE ( - EVENTCREATE /L APPLICATION /T INFORMATION /ID 10 /D "Set up event source." /SO "AMECS" > NUL 2>&1 - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (1)" -H -E -C - - SCHTASKS /CREATE /TN "[amecs]-WSLUNATTENDTASKDEL" /TR "CMD /C 'SCHTASKS /DELETE /TN '[amecs]-WSLUNATTENDSTART' /F & SCHTASKS /DELETE /TN '[amecs]-WSLUNATTENDTASKDEL' /F & POWERSHELL -NoP -C 'Remove-EventLog -Source ''''AMECS'''''" /sc ONEVENT /MO "*[System[Provider[@Name='AMECS'] and EventID=10]]" /EC Application /RL HIGHEST /RU "SYSTEM" /F> NUL 2>&1 - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & SCHTASKS /DELETE /TN "[amecs]-WSLUNATTENDTASKDEL" /F>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (2)" -H -E -C - POWERSHELL -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName '[amecs]-WSLUNATTENDTASKDEL' -Settings $TaskSet" > NUL 2>&1 - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & SCHTASKS /DELETE /TN "[amecs]-WSLUNATTENDTASKDEL" /F>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (3)" -H -E -C - - SCHTASKS /CREATE /TN "[amecs]-WSLUNATTENDSTART" /TR "CMD /C 'EVENTCREATE /L APPLICATION /T INFORMATION /ID 10 /D TR /SO AMECS>NUL&'%scriptPath%' wslUnattend '%wslDistro%' '%wslGroups%''" /SC ONLOGON /RL HIGHEST /RU "%currentUsername%" /F > NUL 2>&1 - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & SCHTASKS /DELETE /TN "[amecs]-WSLUNATTENDSTART" /F>NUL 2>&1 & SCHTASKS /DELETE /TN "[amecs]-WSLUNATTENDTASKDEL" /F>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (4)" -H -E -C - POWERSHELL -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName '[amecs]-WSLUNATTENDSTART' -Settings $TaskSet" > NUL 2>&1 - IF ERRORLEVEL 1 POWERSHELL -NoP -C "Start-Process '%TEMP:'=''%\[amecs]-AutoLogon%rndOut%.exe' -ArgumentList '/DEL' -NoNewWindow">NUL 2>&1 & SCHTASKS /DELETE /TN "[amecs]-WSLUNATTENDSTART" /F>NUL 2>&1 & SCHTASKS /DELETE /TN "[amecs]-WSLUNATTENDTASKDEL" /F>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (5)" -H -E -C -) - -DEL /Q /F "%TEMP%\[amecs]*%rndOut%.*" > NUL 2>&1 - -SHUTDOWN -R -T 0 & EXIT 0 -REM --------------------------WSL-END--------------------------- - - - -REM ---------------------------NOTIF---------------------------- -:NOTIF-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Enabling desktop notifications... - -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKU\%userSID%\SOFTWARE\Microsoft\Windows\CurrentVersion\PushNotifications" /v ToastEnabled /t REG_DWORD /d 1 /f > NUL -CALL :AUX-RETURN "Desktop notifications are now enabled" -H R:L.sign-out -L "A sign-out is required to take effect." - -:NOTIF-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Disabling desktop notifications... - -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKU\%userSID%\SOFTWARE\Microsoft\Windows\CurrentVersion\PushNotifications" /v ToastEnabled /t REG_DWORD /d 0 /f > NUL -CALL :AUX-RETURN "Desktop notifications are now disabled" -H R:L.sign-out -L "A sign-out is required to take effect." -REM -------------------------NOTIF-END------------------------- - - - -REM -------------------------NOTIFCEN-------------------------- -:NOTIFCEN-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Enabling Notification Center... - -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKU\%userSID%\Software\Policies\Microsoft\Windows\Explorer" /v DisableNotificationCenter /t REG_DWORD /d 0 /f > NUL -CALL :AUX-RETURN "The Notification Center is now enabled" -H R:L.sign-out -L "A sign-out is required to take effect." - -:NOTIFCEN-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Disabling Notification Center... - -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKU\%userSID%\Software\Policies\Microsoft\Windows\Explorer" /v DisableNotificationCenter /t REG_DWORD /d 1 /f > NUL -CALL :AUX-RETURN "The Notification Center is now disabled" -H R:L.sign-out -L "A sign-out is required to take effect." -REM -----------------------NOTIFCEN-END------------------------ - - - -REM -------------------------HIBERNATE------------------------- -:HIBERNATE-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Enabling hibernation... - -TIMEOUT /T 2 /NOBREAK > NUL -POWERCFG /HIBERNATE /TYPE FULL > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Failed to enable hibernation." "HOME-EXTRA" -L "Hibernation may not be supported by your firmware." -E - -CALL :AUX-RETURN "Hibernation is now enabled" -H - -:HIBERNATE-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Disabling hibernation... - -TIMEOUT /T 2 /NOBREAK > NUL -POWERCFG /HIBERNATE OFF > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Failed to disable hibernation." "HOME-EXTRA" -E - -CALL :AUX-RETURN "Hibernation is now disabled" -H -REM -----------------------HIBERNATE-END----------------------- - - - -REM ----------------------------WSH----------------------------- -:WSH-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Enabling Windows Script Host... - -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKU\%userSID%\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 1 /f > NUL -REG ADD "HKCU\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 1 /f > NUL -REG ADD "HKLM\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 1 /f > NUL - -CALL :AUX-RETURN "WSH is now enabled" -H -REM R:L.sign-out -L "A sign-out is required to complete the setup." - -:WSH-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Disabling Windows Script Host... - -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKU\%userSID%\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 0 /f > NUL -REG ADD "HKCU\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 0 /f > NUL -REG ADD "HKLM\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled /t REG_DWORD /d 0 /f > NUL - -CALL :AUX-RETURN "WSH is now disabled" -H -REM "R:R -T 0.restart" -L "A sign-out is required to complete." -REM --------------------------WSH-END-------------------------- - - - -REM ----------------------------VBS----------------------------- -:VBS-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Enabling Visual Basic Script... - -TIMEOUT /T 2 /NOBREAK > NUL -ASSOC .vbs=VBSFile> NUL - -CALL :AUX-RETURN "VBS is now enabled" -H - -:VBS-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Disabling Visual Basic Script... - -TIMEOUT /T 2 /NOBREAK > NUL -ASSOC .vbs=> NUL - -CALL :AUX-RETURN "VBS is now disabled" -H -REM --------------------------VBS-END-------------------------- - - - -REM ---------------------------NCSI---------------------------- -:NCSI-ENABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Enabling NCSI Active Probing... - -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet" /v EnableActiveProbing /t REG_DWORD /d 1 /f > NUL -CALL :AUX-RETURN "NCSI Active Probing is now enabled" -H -R -L "A restart is required to take effect." - -:NCSI-DISABLE - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Disabling NCSI Active Probing... - -TIMEOUT /T 2 /NOBREAK > NUL -REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet" /v EnableActiveProbing /t REG_DWORD /d 0 /f > NUL -CALL :AUX-RETURN "NCSI Active Probing is now disabled" -H -R -L "A restart is required to take effect." -REM -------------------------NCSI-END-------------------------- - - - -REM --------------------------NEWUSER-------------------------- -:NEWUSER-MENU - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO. - -POWERSHELL -NoP -C "Write-Host """ [1] Create a New User`n [2] Remove Existing User`n`n [0] Return to Menu`n [X] Exit`n`n __________________________________________________________`n`n Choose a menu option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C 120X /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==1 GOTO NEWUSER-CREATE - IF %ERRORLEVEL%==2 GOTO NEWUSER-REMOVE - IF %ERRORLEVEL%==3 ENDLOCAL & GOTO HOME-MAINMENU - IF %ERRORLEVEL%==4 EXIT /B 0 - -:NEWUSER-CREATE - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -CALL :AUX-INPUTLOOP "newUsername" "Enter new username, or 'Cancel' to quit" "0" "7" - IF %ERRORLEVEL% EQU 3 ENDLOCAL & GOTO HOME-MAINMENU - -CALL :AUX-INPUTLOOP "newPassword" "Enter new password, or 'Cancel' to quit" "%inpLenOut%" "6" -Secure - IF %ERRORLEVEL% EQU 3 ENDLOCAL & GOTO HOME-MAINMENU - -IF %inpLenOut% GEQ 11 CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & SET /A "inpLenOut=0" - -ECHO. & ECHO Creating user... - -TIMEOUT /T 2 /NOBREAK > NUL 2>&1 -NET user "%newUsername%" "%newPassword%" /add /y > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 NET user "%newUsername%" /delete /y>NUL 2>&1 & CALL :AUX-RETURN "Failed to add new user." "NEWUSER-MENU" -E - -IF %inpLenOut% GEQ 9 CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Configuring new user... - -REM SCHTASKS /create /tn "[amecs]-NEWUSERREG" /tr "CMD /C 'FOR /F 'usebackq delims=' %%A IN (`REG QUERY HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\InboxApplications^^® QUERY HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Appx\AppxAllUserStore\Config`) DO REG DELETE '%%A' /f'" /sc MONTHLY /f /rl HIGHEST /ru "SYSTEM" > NUL - REM IF %ERRORLEVEL% NEQ 0 SCHTASKS /DELETE /TN "[amecs]-NEWUSERREG" /F>NUL 2>&1 & NET user "%newUsername%" /delete /y>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (1)" -H -E -REM POWERSHELL -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName '[amecs]-NEWUSERREG' -Settings $TaskSet" > NUL 2>&1 - REM IF %ERRORLEVEL% NEQ 0 SCHTASKS /DELETE /TN "[amecs]-NEWUSERREG" /F>NUL 2>&1 & NET user "%newUsername%" /delete /y>NUL 2>&1 & CALL :AUX-RETURN "Failed to create scheduled task. (2)" -H -E - -REM SCHTASKS /run /tn "[amecs]-NEWUSERREG" > NUL -REM SCHTASKS /delete /tn "[amecs]-NEWUSERREG" /f > NUL - -FOR /F "usebackq tokens=3 delims= " %%A IN (`SC queryex "AppReadiness" 2^>^&1 ^| FINDSTR /R /X /c:"[ ]*PID[ ]*:[ ].*"`) DO ( - IF NOT "%%A"=="0" TASKKILL /PID "%%A" /F > NUL 2>&1 - SC delete "AppReadiness" > NUL 2>&1 -) - -REG ADD "HKLM\SOFTWARE\Policies\Microsoft\Windows\OOBE" /v DisablePrivacyExperience /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableFirstLogonAnimation /t REG_DWORD /d 0 /f > NUL 2>&1 - -REG LOAD "HKU\DefaultHiveMount" "%SYSTEMDRIVE%\Users\Default\NTUSER.DAT" > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell" /t REG_SZ /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\OpenShell" /t REG_SZ /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\OpenShell\Settings" /t REG_SZ /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu" /t REG_SZ /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /t REG_SZ /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\ClassicExplorer" /t REG_SZ /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\ClassicExplorer\Settings" /t REG_SZ /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\ClassicExplorer" /v "ShowedToolbar" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\ClassicExplorer" /v "NewLine" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\ClassicExplorer\Settings" /v "ShowStatusBar" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu" /v "ShowedStyle2" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu" /v "CSettingsDlg" /t REG_BINARY /d c80100001a0100000000000000000000360d00000100000000000000 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu" /v "OldItems" /t REG_BINARY /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu" /v "ItemRanks" /t REG_BINARY /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\MRU" /v "0" /t REG_SZ /d "%SYSTEMDRIVE%\Windows\regedit.exe" /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "Version" /t REG_DWORD /d 04040098 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "AllProgramsMetro" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "RecentMetroApps" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "StartScreenShortcut" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "SearchInternet" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "GlassOverride" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "GlassColor" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "SkinW7" /t REG_SZ /d "Fluent-Metro" /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "SkinVariationW7" /t REG_SZ /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "SkipMetro" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "MenuItems7" /t REG_MULTI_SZ /d "Item1.Command=user_files"\0"Item1.Settings=NOEXPAND"\0"Item2.Command=user_documents"\0"Item2.Settings=NOEXPAND"\0"Item3.Command=user_pictures"\0"Item3.Settings=NOEXPAND"\0"Item4.Command=user_music"\0"Item4.Settings=NOEXPAND"\0"Item5.Command=user_videos"\0"Item5.Settings=NOEXPAND"\0"Item6.Command=downloads"\0"Item6.Settings=NOEXPAND"\0"Item7.Command=homegroup"\0"Item7.Settings=ITEM_DISABLED"\0"Item8.Command=separator"\0"Item9.Command=games"\0"Item9.Settings=TRACK_RECENT|NOEXPAND|ITEM_DISABLED"\0"Item10.Command=favorites"\0"Item10.Settings=ITEM_DISABLED"\0"Item11.Command=recent_documents"\0"Item12.Command=computer"\0"Item12.Settings=NOEXPAND"\0"Item13.Command=network"\0"Item13.Settings=ITEM_DISABLED"\0"Item14.Command=network_connections"\0"Item14.Settings=ITEM_DISABLED"\0"Item15.Command=separator"\0"Item16.Command=control_panel"\0"Item16.Settings=TRACK_RECENT"\0"Item17.Command=pc_settings"\0"Item17.Settings=TRACK_RECENT"\0"Item18.Command=admin"\0"Item18.Settings=TRACK_RECENT|ITEM_DISABLED"\0"Item19.Command=devices"\0"Item19.Settings=ITEM_DISABLED"\0"Item20.Command=defaults"\0"Item20.Settings=ITEM_DISABLED"\0"Item21.Command=help"\0"Item21.Settings=ITEM_DISABLED"\0"Item22.Command=run"\0"Item23.Command=apps"\0"Item23.Settings=ITEM_DISABLED"\0"Item24.Command=windows_security"\0"Item24.Settings=ITEM_DISABLED"\0"" /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\OpenShell\StartMenu\Settings" /v "SkinOptionsW7" /t REG_MULTI_SZ /d "DARK_MAIN=0"\0"METRO_MAIN=0"\0"LIGHT_MAIN=0"\0"AUTOMODE_MAIN=1"\0"DARK_SUBMENU=0"\0"METRO_SUBMENU=0"\0"LIGHT_SUBMENU=0"\0"AUTOMODE_SUBMENU=1"\0"SUBMENU_SEPARATORS=1"\0"DARK_SEARCH=0"\0"METRO_SEARCH=0"\0"LIGHT_SEARCH=0"\0"AUTOMODE_SEARCH=1"\0"SEARCH_FRAME=1"\0"SEARCH_COLOR=0"\0"MODERN_SEARCH=1"\0"SEARCH_ITALICS=0"\0"NONE=0"\0"SEPARATOR=0"\0"TWO_TONE=1"\0"CLASSIC_SELECTOR=1"\0"HALF_SELECTOR=0"\0"CURVED_MENUSEL=1"\0"CURVED_SUBMENU=0"\0"SELECTOR_REVEAL=1"\0"TRANSPARENT=0"\0"OPAQUE_SUBMENU=1"\0"OPAQUE_MENU=0"\0"OPAQUE=0"\0"STANDARD=0"\0"SMALL_MAIN2=1"\0"SMALL_ICONS=0"\0"COMPACT_SUBMENU=0"\0"PRESERVE_MAIN2=0"\0"LESS_PADDING=0"\0"EXTRA_PADDING=1"\0"24_PADDING=0"\0"LARGE_PROGRAMS=0"\0"TRANSPARENT_SHUTDOWN=0"\0"OUTLINE_SHUTDOWN=0"\0"BUTTON_SHUTDOWN=1"\0"EXPERIMENTAL_SHUTDOWN=0"\0"LARGE_FONT=0"\0"CONNECTED_BORDER=1"\0"FLOATING_BORDER=0"\0"LARGE_SUBMENU=0"\0"LARGE_LISTS=0"\0"THIN_MAIN2=0"\0"EXPERIMENTAL_MAIN2=1"\0"USER_IMAGE=1"\0"USER_OUTSIDE=0"\0"SCALING_USER=1"\0"56=0"\0"64=0"\0"TRANSPARENT_USER=0"\0"UWP_SCROLLBAR=0"\0"MODERN_SCROLLBAR=1"\0"SMALL_ARROWS=0"\0"ARROW_BACKGROUND=1"\0"ICON_FRAME=0"\0"SEARCH_SEPARATOR=0"\0"NO_PROGRAMS_BUTTON=0"\0"" /f > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v SearchboxTaskbarMode /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowTaskViewButton /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" /v EnableAutoTray /t REG_DWORD /d 0 /f > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\AdvertisingInfo" /v Enabled /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\AppHost" /v EnableWebContentEvaluation /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\Control Panel\International\User Profile" /v HttpAcceptLanguageOptOut /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Policies\Microsoft\Windows\Explorer" /v DisableNotificationCenter /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR" /v AppCaptureEnabled /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\System\GameConfigStore" /v GameDVR_Enabled /t REG_DWORD /d 0 /f > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Attachments" /v SaveZoneInformation /t REG_DWORD /d 1 /f > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\AppHost" /v ContentEvaluation /t REG_DWORD /d 0 /f > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\Control Panel\Desktop" /v WaitToKillAppTimeOut /t REG_SZ /d 2000 /f > NUL 2>&1 - -REG DELETE "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\StorageSense" /f > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "BingSearchEnabled" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "CortanaConsent" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "CortanaInAmbientMode" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "HistoryViewEnabled" /t REG_DWORD 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "HasAboveLockTips" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Search" /v "AllowSearchToUseLocation" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\SearchSettings" /v "SafeSearchMode" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Policies\Microsoft\Windows\Explorer" /v "DisableSearchBoxSuggestions" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\InputPersonalization" /v "RestrictImplicitTextCollection" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\InputPersonalization" /v "RestrictImplicitInkCollection" /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore" /v "AcceptedPrivacyPolicy" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore" /v "HarvestContacts" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Personalization\Settings" /v "AcceptedPrivacyPolicy" /t REG_DWORD /d 0 /f > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Policies\Microsoft\Windows\Explorer" /v "DisableSearchBoxSuggestions" /t REG_DWORD /d 1 /f > NUL 2>&1 - -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "NavPaneShowAllFolders" /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v LaunchTo /t REG_DWORD /d 1 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t REG_DWORD /d 0 /f > NUL 2>&1 -REG ADD "HKEY_USERS\DefaultHiveMount\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v Hidden /t REG_DWORD /d 1 /f > NUL 2>&1 - -REG UNLOAD "HKU\DefaultHiveMount" > NUL 2>&1 - -TIMEOUT /T 2 /NOBREAK > NUL 2>&1 - -CALL :AUX-RETURN "User created successfully" -H - -:NEWUSER-REMOVE - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -CALL :AUX-INPUTLOOP "usernameRemove" "Enter user to be removed, or 'Cancel' to quit" "0" "8" - IF %ERRORLEVEL% EQU 3 ENDLOCAL & GOTO HOME-MAINMENU - -IF "%usernameRemove%"=="%currentUsername%" ( - POWERSHELL -NoP -C "Write-Host """The specified user is the current user ^(""""%currentUsername%""""^)`n Continue anyways? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 ENDLOCAL & GOTO NEWUSER-MENU -) - -IF %inpLenOut% GEQ 11 CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Removing user... - -TIMEOUT /T 2 /NOBREAK > NUL 2>&1 - -NET user "%usernameRemove%" /delete /y > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "Failed to remove user." "NEWUSER-MENU" -E - -CALL :AUX-RETURN "User removed successfully" -H -REM ------------------------NEWUSER-END------------------------ - - - -REM ----------------------------NVCP--------------------------- -:NVCP-INSTALL - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -SC query "NVDisplay.ContainerLocalSystem" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "No NVIDIA driver detected." "HOME-EXTRA" -E - -IF EXIST "%SYSTEMDRIVE%\Program Files\WindowsApps" ( - FOR /F "usebackq delims=" %%A IN (`DIR /A:d /B "%SYSTEMDRIVE%\Program Files\WindowsApps" ^| FINDSTR /c:"NVIDIACorp.NVIDIAControlPanel"`) DO ( - DIR /B "%SYSTEMDRIVE%\Program Files\WindowsApps\%%A" | FINDSTR /i /x /c:"nvcplui.exe" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - ECHO. & ECHO Installing NVIDIA Control Panel... - TIMEOUT /T 2 /NOBREAK > NUL 2>&1 - TAKEOWN /f "%SYSTEMDRIVE%\Program Files\WindowsApps\%%A" /r /a > NUL 2>&1 - ICACLS "%SYSTEMDRIVE%\Program Files\WindowsApps\%%A" /grant Administrators:F /t > NUL 2>&1 - ICACLS "%SYSTEMDRIVE%\Program Files\WindowsApps\%%A" /grant Users:RX /t > NUL 2>&1 - RMDIR /Q /S "%SYSTEMDRIVE%\Program Files\%%A" > NUL 2>&1 - RMDIR /Q /S "%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel" > NUL 2>&1 - MOVE /Y "%SYSTEMDRIVE%\Program Files\WindowsApps\%%A" "%SYSTEMDRIVE%\Program Files" > NUL 2>&1 - IF ERRORLEVEL 1 GOTO NVCP-FETCH - RENAME "%SYSTEMDRIVE%\Program Files\%%A" "NVIDIA Control Panel" > NUL 2>&1 - GOTO NVCP-CONFIG - ) - ) -) - -:NVCP-FETCH - -POWERSHELL -NoP -C "Write-Host """`n NVIDIA Control Panel must be downloaded`n Continue? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==2 ENDLOCAL & GOTO HOME-MAINMENU - -ECHO. & ECHO Fetching download link... - -CALL :AUX-GENRND "7" - -CALL :AUX-FETCHLINK "HOME-EXTRA" "NVIDIA-Control-Panel" -Download "%TEMP%\[amecs]-NVCP%rndOut%.zip" "Downloading NVIDIA Control Panel" - IF %ERRORLEVEL% EQU 5 CALL :AUX-RETURN "%fetchMsgOut%" "HOME-WSL" -E - -ECHO. & ECHO Installing NVIDIA Control Panel... -IF EXIST "%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel" ( - TASKKILL /FI "IMAGENAME eq nvcplui.exe" /F > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - TIMEOUT /T 3 /NOBREAK > NUL 2>&1 - ) - RMDIR /Q /S "%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel" > NUL 2>&1 -) - -POWERSHELL -NoP -C "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -LiteralPath '%TEMP%\[amecs]-NVCP%rndOut%.zip' -DestinationPath '%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel'" - -IF NOT EXIST "%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel\nvcplui.exe" ( - RMDIR /Q /S "%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel" > NUL 2>&1 - - CALL :AUX-RETURN "Download is missing critical executable." "HOME-EXTRA" -E -) - -:NVCP-CONFIG - -DEL /Q /F "%SYSTEMDRIVE%\ProgramData\Microsoft\Windows\Start Menu\Programs\NVIDIA Control Panel.lnk" > NUL 2>&1 -POWERSHELL -NoP -C "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut('%SYSTEMDRIVE%\ProgramData\Microsoft\Windows\Start Menu\Programs\NVIDIA Control Panel.lnk'); $S.TargetPath = '%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel\nvcplui.exe'; $S.Save()" > NUL 2>&1 - -REG ADD "HKLM\System\CurrentControlSet\Services\nvlddmkm\Global\NVTweak" /v "DisableStoreNvCplNotifications" /t REG_DWORD /d 1 /f > NUL - -SC config "NVDisplay.ContainerLocalSystem" start=auto > NUL 2>&1 -SC start "NVDisplay.ContainerLocalSystem" > NUL 2>&1 - -CALL :AUX-RETURN "Installed NVIDIA Control Panel successfully" -H - -:NVCP-UNINSTALL - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Uninstalling NVIDIA Control Panel... -TASKKILL /FI "IMAGENAME eq nvcplui.exe" /F /T > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - TIMEOUT /T 2 /NOBREAK > NUL 2>&1 - ) -TIMEOUT /T 1 /NOBREAK > NUL 2>&1 -DEL /Q /F "%SYSTEMDRIVE%\ProgramData\Microsoft\Windows\Start Menu\Programs\NVIDIA Control Panel.lnk" > NUL 2>&1 -RMDIR /Q /S "%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel" > NUL 2>&1 - -CALL :AUX-RETURN "Uninstalled NVIDIA Control Panel successfully" -H -REM --------------------------NVCP-END------------------------- - - - REM ------------ - REM Menu Options - REM ------------ - - -REM ----------------------------------------------------------- -:MO-MAINMENU - -CALL :AUX-ELEVATIONCHECK - IF %ERRORLEVEL% EQU 0 ( - SET "homeElevMsg=De-elevate User" - SET "homeElevLoc=ELEVATE-REVOKE" - ) ELSE ( - SET "homeElevMsg=Elevate User to Administrator" - SET "homeElevLoc=ELEVATE-ELEVATE" - ) - -REG QUERY "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v dontdisplaylastusername 2>&1 | FINDSTR /R /X /C:".*dontdisplaylastusername[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeNUMsg=Disable Username Login Requirement" - SET "homeNULoc=NOUSERNAME-DISABLE" - ) ELSE ( - SET "homeNUMsg=Enable Username Login Requirement" - SET "homeNULoc=NOUSERNAME-ENABLE" - ) - - -REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUsername" 2>&1 | FINDSTR /c:"%currentUsername%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" 2>&1 | FINDSTR /R /X /C:".*AutoAdminLogon[ ].*REG_SZ.*[ ]1" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - SET "homeALMsg=Disable AutoLogon" - SET "homeALLoc=AUTOLOGON-DISABLE" - ) ELSE ( - SET "homeALMsg=Enable AutoLogon" - SET "homeALLoc=AUTOLOGON-ENABLE" - ) - ) ELSE ( - SET "homeALMsg=Enable AutoLogon" - SET "homeALLoc=AUTOLOGON-ENABLE" - ) -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:MO-EXTRA - -REG QUERY "HKU\%userSID%\SOFTWARE\Microsoft\Windows\CurrentVersion\PushNotifications" /v ToastEnabled 2>&1 | FINDSTR /R /X /C:".*ToastEnabled[ ].*REG_DWORD[ ].*0x0" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SET "homeNOTIFMsg=Disable Desktop Notifications" - SET "homeNOTIFLoc=NOTIF-DISABLE" - ) ELSE ( - SET "homeNOTIFMsg=Enable Desktop Notifications" - SET "homeNOTIFLoc=NOTIF-ENABLE" - ) - -REG QUERY "HKU\%userSID%\SOFTWARE\Policies\Microsoft\Windows\Explorer" /v DisableNotificationCenter 2>&1 | FINDSTR /R /X /C:".*DisableNotificationCenter[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeNOTIFCENMsg=Enable Notification Center" - SET "homeNOTIFCENLoc=NOTIFCEN-ENABLE" - ) ELSE ( - SET "homeNOTIFCENMsg=Disable Notification Center" - SET "homeNOTIFCENLoc=NOTIFCEN-DISABLE" - ) - -REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v HibernateEnabled 2>&1 | FINDSTR /R /X /C:".*HibernateEnabled[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v HiberFileType 2>&1 | FINDSTR /R /X /C:".*HiberFileType[ ].*REG_DWORD[ ].*0x2" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - SET "homeHIBMsg=Disable Hibernation" - SET "homeHIBLoc=HIBERNATE-DISABLE" - ) ELSE ( - SET "homeHIBMsg=Enable Hibernation" - SET "homeHIBLoc=HIBERNATE-ENABLE" - ) - ) ELSE ( - SET "homeHIBMsg=Enable Hibernation" - SET "homeHIBLoc=HIBERNATE-ENABLE" - ) - -REG QUERY "HKLM\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled 2>&1 | FINDSTR /R /X /C:".*Enabled[ ].*REG_DWORD[ ].*0x0" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKU\%userSID%\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled 2>&1 | FINDSTR /R /X /C:".*Enabled[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF ERRORLEVEL 1 ( - SET "homeWSHMsg=Enable Windows Script Host [WSH] (Legacy)" - SET "homeWSHLoc=WSH-ENABLE" - ) ELSE ( - SET "homeWSHMsg=Disable Windows Script Host [WSH] (Legacy)" - SET "homeWSHLoc=WSH-DISABLE" - - ) - ) ELSE ( - REG QUERY "HKU\%userSID%\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled 2>&1 | FINDSTR /R /X /C:".*Enabled[ ].*REG_DWORD[ ].*0x0" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - SET "homeWSHMsg=Enable Windows Script Host [WSH] (Legacy)" - SET "homeWSHLoc=WSH-ENABLE" - ) ELSE ( - SET "homeWSHMsg=Disable Windows Script Host [WSH] (Legacy)" - SET "homeWSHLoc=WSH-DISABLE" - - ) - ) - -ASSOC .vbs 2>&1| FINDSTR /I /X /c:".vbs=VBSFile" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeVBSMsg=Disable Visual Basic Script [VBS] (Legacy)" - SET "homeVBSLoc=VBS-DISABLE" - ) ELSE ( - SET "homeVBSMsg=Enable Visual Basic Script [VBS] (Legacy)" - SET "homeVBSLoc=VBS-ENABLE" - ) - -REG QUERY "HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet" /v EnableActiveProbing 2>&1 | FINDSTR /R /X /C:".*EnableActiveProbing[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeNCSIMsg=Disable NCSI Active Probing (Legacy)" - SET "homeNCSILoc=NCSI-DISABLE" - ) ELSE ( - SET "homeNCSIMsg=Enable NCSI Active Probing (Legacy)" - SET "homeNCSILoc=NCSI-ENABLE" - ) - -SET "homeNVCPMsg=Write-Host ' [9] Install NVIDIA Control Panel'" -IF EXIST "%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel\nvcplui.exe" ( - SET "homeNVCPLoc=NVCP-UNINSTALL" - SET "homeNVCPMsg=Write-Host ' [9] Uninstall NVIDIA Control Panel'" -) ELSE ( - SET "homeNVCPLoc=NVCP-INSTALL" - WMIC path win32_VideoController get name | FINDSTR "NVIDIA GeForce GTX RTX" > NUL 2>&1 - IF ERRORLEVEL 1 ( - CALL :MO-CHOICE -DelChoice 9 - SET "homeNVCPMsg=Write-Host ' [9] Install NVIDIA Control Panel' -NoNewLine -ForegroundColor DarkGray; Write-Host ' [No NVIDIA GPU]' -ForegroundColor Red" - ) ELSE ( - SC query "NVDisplay.ContainerLocalSystem" > NUL 2>&1 - IF ERRORLEVEL 1 ( - CALL :MO-CHOICE -DelChoice 9 - SET "homeNVCPMsg=Write-Host ' [9] Install NVIDIA Control Panel' -NoNewLine -ForegroundColor DarkGray; Write-Host ' [No NVIDIA Driver]' -ForegroundColor Red" - ) ELSE ( - IF EXIST "%SYSTEMDRIVE%\Program Files\WindowsApps" ( - DIR /A:d /B "%SYSTEMDRIVE%\Program Files\WindowsApps" | FINDSTR /c:"NVIDIACorp.NVIDIAControlPanel" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - FOR /F "usebackq delims=" %%A IN (`DIR /A:d /B "%SYSTEMDRIVE%\Program Files\WindowsApps" ^| FINDSTR /c:"NVIDIACorp.NVIDIAControlPanel"`) DO ( - DIR /B "%SYSTEMDRIVE%\Program Files\WindowsApps\%%A" | FINDSTR /i /x /c:"nvcplui.exe" > NUL 2>&1 - IF ERRORLEVEL 1 ( - CURL store.rg-adguard.net 2>&1 | FINDSTR /I /c:"Cloudflare Ray ID" > NUL 2>&1 - IF NOT ERRORLEVEL 1 CALL :MO-CHOICE -DelChoice 9 & SET "homeNVCPMsg=Write-Host ' [9] Install NVIDIA Control Panel' -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Server Unavailable]' -ForegroundColor Red" - ) - ) - ) ELSE ( - CURL store.rg-adguard.net 2>&1 | FINDSTR /I /c:"Cloudflare Ray ID" > NUL 2>&1 - IF NOT ERRORLEVEL 1 CALL :MO-CHOICE -DelChoice 9 & SET "homeNVCPMsg=Write-Host ' [9] Install NVIDIA Control Panel' -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Server Unavailable]' -ForegroundColor Red" - ) - ) - ) - ) -) -CMD /C WSL --help 2>&1 | FINDSTR /I /R /c:"-.-.i.n.s.t.a.l.l.*<.O.p.t.i.o.n.s.>" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - CALL :MO-CHOICE -DelChoice 1 - SET "homeExtWSLMsg="""" -ForegroundColor DarkGray -NoNewLine; Write-Host ' [Not Supported]' -ForegroundColor Red -NoNewLine; Write-Host """"" - ) ELSE ( - SET "homeExtWSLMsg=" - ) -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:MO-LANGUAGE - -REM NULL -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:MO-WSL - - -SET "wslUnattend=" -SET "homeWSLChPos=16" -SET "homeWSLStatus=`n" - -DISM /Online /Get-FeatureInfo:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /x /c:"State : Enabled" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SET "homeWSLMsg=Enable WSL" - SET "homeWSLLoc=WSL-ENABLE" - ) ELSE ( - SET "homeWSLMsg=Disable WSL" - SET "homeWSLLoc=WSL-DISABLE" - WHERE WSL.exe > NUL 2>&1 - IF ERRORLEVEL 1 ( - SET "homeWSLStatus=""""; Write-Host """"`n$(' '.padleft('18', ' '))A restart is required for WSL functionality."""" -ForegroundColor Red -NoNewLine; Write-Host """"" - SET "homeWSLChPos=17" - ) - ) - -WHERE WSL.exe > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - CALL :MO-CHOICE -DelChoice 2 - CALL :MO-CHOICE -DelChoice 3 - SET "homeWSLDistroMsgs=""""; Write-Host """"$(' '.padleft('17', ' '))[2] Install WSL Distro`n$(' '.padleft('17', ' '))[3] Remove WSL Distro`n"""" -ForegroundColor DarkGray; Write-Host """"$(' '.padleft('17', ' '))[U] Unattended Distro Install [Disabled]"""" -NoNewLine; Write-Host """" " - ) ELSE ( - CALL :MO-CHOICE -DelChoice U - SET "homeWSLDistroMsgs=`n$(' '.padleft('17', ' '))[2] Install WSL Distro`n$(' '.padleft('17', ' '))[3] Remove WSL Distro`n" - ) -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:MO-LIMMAINMENU - -CALL :AUX-ELEVATIONCHECK - IF %ERRORLEVEL% EQU 0 ( - SET "homeElevMsg=De-elevate User" - ) ELSE ( - SET "homeElevMsg=Elevate User to Administrator" - ) - -REG QUERY "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v dontdisplaylastusername 2>&1 | FINDSTR /R /X /C:".*dontdisplaylastusername[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeNUMsg=Disable Username Login Requirement" - ) ELSE ( - SET "homeNUMsg=Enable Username Login Requirement" - ) - -REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "DefaultUsername" 2>&1 | FINDSTR /c:"%currentUsername%" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "AutoAdminLogon" 2>&1 | FINDSTR /R /X /C:".*AutoAdminLogon[ ].*REG_SZ.*[ ]1" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - SET "homeALMsg=Disable AutoLogon" - ) ELSE ( - SET "homeALMsg=Enable AutoLogon" - ) - ) ELSE ( - SET "homeALMsg=Enable AutoLogon" - ) -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:MO-LIMEXTRA - -REG QUERY "HKU\%userSID%\SOFTWARE\Microsoft\Windows\CurrentVersion\PushNotifications" /v ToastEnabled 2>&1 | FINDSTR /R /X /C:".*ToastEnabled[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeNOTIFMsg=Disable Desktop Notifications" - SET "homeNOTIFLoc=NOTIF-DISABLE" - ) ELSE ( - SET "homeNOTIFMsg=Enable Desktop Notifications" - SET "homeNOTIFLoc=NOTIF-ENABLE" - ) - -REG QUERY "HKU\%userSID%\SOFTWARE\Policies\Microsoft\Windows\Explorer" /v DisableNotificationCenter 2>&1| FINDSTR /R /X /C:".*DisableNotificationCenter[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeNOTIFCENMsg=Enable Notification Center" - ) ELSE ( - SET "homeNOTIFCENMsg=Disable Notification Center" - ) - -REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v HibernateEnabled 2>&1 | FINDSTR /R /X /C:".*HibernateEnabled[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKLM\SYSTEM\CurrentControlSet\Control\Power" /v HiberFileType 2>&1 | FINDSTR /R /X /C:".*HiberFileType[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - SET "homeHIBMsg=Disable Hibernation" - ) ELSE ( - SET "homeHIBMsg=Enable Hibernation" - ) - ) ELSE ( - SET "homeHIBMsg=Enable Hibernation" - ) - -REG QUERY "HKLM\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled 2>&1 | FINDSTR /R /X /C:".*Enabled[ ].*REG_DWORD[ ].*0x0" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - REG QUERY "HKEY_USERS\%userSID%\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled 2>&1 | FINDSTR /R /X /C:".*Enabled[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF ERRORLEVEL 1 ( - SET "homeWSHMsg=Enable Windows Script Host [WSH] (Legacy)" - ) ELSE ( - SET "homeWSHMsg=Disable Windows Script Host [WSH] (Legacy)" - - ) - ) ELSE ( - REG QUERY "HKEY_USERS\%userSID%\SOFTWARE\Microsoft\Windows Script Host\Settings" /v Enabled 2>&1 | FINDSTR /R /X /C:".*Enabled[ ].*REG_DWORD[ ].*0x0" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - SET "homeWSHMsg=Enable Windows Script Host [WSH] (Legacy)" - ) ELSE ( - SET "homeWSHMsg=Disable Windows Script Host [WSH] (Legacy)" - ) - ) - -ASSOC .vbs 2>&1| FINDSTR /I /X /c:".vbs=VBSFile" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeVBSMsg=Disable Visual Basic Script [VBS] (Legacy)" - SET "homeVBSLoc=VBS-DISABLE" - ) ELSE ( - SET "homeVBSMsg=Enable Visual Basic Script [VBS] (Legacy)" - SET "homeVBSLoc=VBS-ENABLE" - ) - -REG QUERY "HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet" /v EnableActiveProbing 2>&1 | FINDSTR /R /X /C:".*EnableActiveProbing[ ].*REG_DWORD[ ].*0x1" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeNCSIMsg=Disable NCSI Active Probing (Legacy)" - ) ELSE ( - SET "homeNCSIMsg=Enable NCSI Active Probing (Legacy)" - ) - -SET "homeNVCPMsg=Write-Host ' [9] Install NVIDIA Control Panel' -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red" -IF EXIST "%SYSTEMDRIVE%\Program Files\NVIDIA Control Panel\nvcplui.exe" ( - SET "homeNVCPMsg=Write-Host ' [9] Uninstall NVIDIA Control Panel' -NoNewLine -ForegroundColor DarkGray; Write-Host ' [Admin Required]' -ForegroundColor Red" -) - -CMD /C WSL --help 2>&1 | FINDSTR /I /R /c:"-.-.i.n.s.t.a.l.l.*<.O.p.t.i.o.n.s.>" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - SET "homeExtWSLMsg= -ForegroundColor DarkGray -NoNewLine; Write-Host ' [Not Supported]' -ForegroundColor Red" - ) ELSE ( - SET "homeExtWSLMsg=" - ) -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:MO-LIMLANGUAGE - -REM NULL -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:MO-LIMWSL - -WHERE WSL.exe > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SET "homeWSLMsg=Enable WSL" - ) ELSE ( - SET "homeWSLMsg=Disable WSL" - ) - -SET "homeLIMWSLCh=230X" - -WHERE WSL.exe > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - CALL :MO-CHOICE -DelChoice 2 - CALL :MO-CHOICE -DelChoice 3 - SET "homeWSLDistroMsgs=$(' '.padleft(17, ' '))[2] Install WSL Distro`n$(' '.padleft(17, ' '))[3] Remove WSL Distro`n`n$(' '.padleft(17, ' '))[U] Unattended Distro Install"""" -ForegroundColor DarkGray -NoNewLine; Write-Host ' [Admin Required]' -ForegroundColor Red -NoNewLine; Write-Host """"" - ) ELSE ( - SET "homeWSLDistroMsgs=$(' '.padleft(17, ' '))[2] Install WSL Distro`n$(' '.padleft(17, ' '))[3] Remove WSL Distro`n" - ) -EXIT /B 0 -REM ----------------------------------------------------------- -:MO-CHOICE - -IF "%~1"=="-InitChoices" CALL :INTERNAL-MO_CHOICE-InitChoices "%~2" "%~3" -IF "%~1"=="-DelChoice" CALL :INTERNAL-MO_CHOICE-DelChoice "%~2" -IF "%~1"=="-StartChoices" CALL :INTERNAL-MO_CHOICE-StartChoices "%~2" - -EXIT /B 0 -:INTERNAL-MO_CHOICE-InitChoices - -SET "moChoices=%~1" -FOR /F "usebackq tokens=2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17 delims=+" %%A IN (`ECHO "%~2"`) DO SET "MOCHI1=%%A" & SET "MOCHI2=%%B" & SET "MOCHI3=%%C" & SET "MOCHI4=%%D" & SET "MOCHI5=%%E" & SET "MOCHI6=%%F" & SET "MOCHI7=%%G" & SET "MOCHI8=%%H" & SET "MOCHI9=%%I" & SET "MOCHI10=%%J" & SET "MOCHI11=%%K" & SET "MOCHI12=%%L" & SET "MOCHI13=%%M" & SET "MOCHI14=%%N" & SET "MOCHI15=%%O" & SET "MOCHI16=%%P" - -EXIT /B 0 - -:INTERNAL-MO_CHOICE-DelChoice - -FOR /F "usebackq tokens=1,2 delims=%~1" %%A IN (`ECHO %moChoices%`) DO ( - SET "moChoices=%%A%%B" - IF NOT "%%B"=="" ( - CALL :AUX-LENGTHFETCH "%%A:" - ) ELSE ( - IF "%moChoices:~0,1%"=="%~1" ( - SET "chRemove=1" - ) ELSE ( - CALL :AUX-LENGTHFETCH "%%A:" - ) - ) -) -IF NOT "%chRemove%"=="1" SET "chRemove=%lenOut%" - -SET /A "chShift=%chRemove%+1" -CALL SET "MOCHI%chRemove%=%%MOCHI%chShift%%%" -SET /A "chShiftAlt=%chShift%+1" -CALL SET "MOCHI%chShift%=%%MOCHI%chShiftAlt%%%" -SET /A "chShift=%chShiftAlt%+1" -CALL SET "MOCHI%chShiftAlt%=%%MOCHI%chShift%%%" -SET /A "chShiftAlt=%chShift%+1" -CALL SET "MOCHI%chShift%=%%MOCHI%chShiftAlt%%%" -SET /A "chShift=%chShiftAlt%+1" -CALL SET "MOCHI%chShiftAlt%=%%MOCHI%chShift%%%" -SET /A "chShiftAlt=%chShift%+1" -CALL SET "MOCHI%chShift%=%%MOCHI%chShiftAlt%%%" -SET /A "chShift=%chShiftAlt%+1" -CALL SET "MOCHI%chShiftAlt%=%%MOCHI%chShift%%%" -SET /A "chShiftAlt=%chShift%+1" -CALL SET "MOCHI%chShift%=%%MOCHI%chShiftAlt%%%" -SET /A "chShift=%chShiftAlt%+1" -CALL SET "MOCHI%chShiftAlt%=%%MOCHI%chShift%%%" -SET /A "chShiftAlt=%chShift%+1" -CALL SET "MOCHI%chShift%=%%MOCHI%chShiftAlt%%%" -SET /A "chShift=%chShiftAlt%+1" -CALL SET "MOCHI%chShiftAlt%=%%MOCHI%chShift%%%" -SET /A "chShiftAlt=%chShift%+1" -CALL SET "MOCHI%chShift%=%%MOCHI%chShiftAlt%%%" -SET /A "chShift=%chShiftAlt%+1" -CALL SET "MOCHI%chShiftAlt%=%%MOCHI%chShift%%%" -SET /A "chShiftAlt=%chShift%+1" -CALL SET "MOCHI%chShift%=%%MOCHI%chShiftAlt%%%" -SET /A "chShift=%chShiftAlt%+1" -CALL SET "MOCHI%chShiftAlt%=%%MOCHI%chShift%%%" -SET /A "chShiftAlt=%chShift%+1" -CALL SET "MOCHI%chShift%=%%MOCHI%chShiftAlt%%%" - -EXIT /B 0 - -:INTERNAL-MO_CHOICE-StartChoices - -SETLOCAL ENABLEDELAYEDEXPANSION -POWERSHELL -NoP -C "Write-Host """"%~1`n$(' '.padleft(11, ' '))__________________________________________________________`n`n$(' '.padleft(11, ' '))Choose a menu option: """" -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C %moChoices% /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" -CALL SET "moChoice=%%MOCHI%ERRORLEVEL%%%" -SET "moChoice=%moChoice:|=^|%" - -ENDLOCAL & (GOTO) 2>NUL & (GOTO) 2>NUL & %moChoice:""="% -REM ----------------------------------------------------------- - - - REM ---------------- - REM Script Functions - REM ---------------- - - -REM ----------------------------------------------------------- -:AUX-RETURN - -SETLOCAL - -IF /I "%~3"=="-C" ( - DEL /Q /F "%TEMP%\[amecs]*%rndOut%.*" > NUL 2>&1 - DEL /Q /F "%userTemp%\[amecs]*%rndOut%.*" > NUL 2>&1 -) ELSE ( - IF /I "%~4"=="-C" ( - DEL /Q /F "%TEMP%\[amecs]*%rndOut%.*" > NUL 2>&1 - DEL /Q /F "%userTemp%\[amecs]*%rndOut%.*" > NUL 2>&1 - ) ELSE ( - IF /I "%~5"=="-C" ( - DEL /Q /F "%TEMP%\[amecs]*%rndOut%.*" > NUL 2>&1 - DEL /Q /F "%userTemp%\[amecs]*%rndOut%.*" > NUL 2>&1 - ) ELSE ( - IF /I "%~6"=="-C" ( - DEL /Q /F "%TEMP%\[amecs]*%rndOut%.*" > NUL 2>&1 - DEL /Q /F "%userTemp%\[amecs]*%rndOut%.*" > NUL 2>&1 - ) ELSE ( - IF /I "%~7"=="-C" ( - DEL /Q /F "%TEMP%\[amecs]*%rndOut%.*" > NUL 2>&1 - DEL /Q /F "%userTemp%\[amecs]*%rndOut%.*" > NUL 2>&1 - ) - ) - ) - ) -) - -CALL :AUX-CENTERTEXT "%~1" - SET "returnOutComm=%cenout%" - -IF /I "%~3"=="-E" ( - SET "errorColor= -ForegroundColor Red" -) ELSE ( - IF /I "%~4"=="-E" ( - SET "errorColor= -ForegroundColor Red" - ) ELSE ( - IF /I "%~5"=="-E" ( - SET "errorColor= -ForegroundColor Red" - ) ELSE ( - IF /I "%~6"=="-E" ( - SET "errorColor= -ForegroundColor Red" - ) ELSE ( - IF /I "%~7"=="-E" ( - SET "errorColor= -ForegroundColor Red" - ) ELSE ( - SET "errorColor=" - ) - ) - ) - ) -) - -SET "cenOut=" - -IF /I "%~3"=="-L" ( - CALL :AUX-CENTERTEXT "%~4" -) ELSE ( - IF /I "%~4"=="-L" ( - CALL :AUX-CENTERTEXT "%~5" - ) ELSE ( - IF /I "%~5"=="-L" ( - CALL :AUX-CENTERTEXT "%~6" - ) ELSE ( - IF /I "%~6"=="-L" ( - CALL :AUX-CENTERTEXT "%~7" - ) ELSE ( - IF /I "%~7"=="-L" ( - CALL :AUX-CENTERTEXT "%~8" - ) - ) - ) - ) -) - -IF "%cenOut%"=="" ( - SET "returnMsg=Write-Host """`n"""; Write-Host '%returnOutComm%'%errorColor%; Write-Host """ __________________________________________________________`n"""; " -) ELSE ( - SET "returnMsg=Write-Host """`n"""; Write-Host '%returnOutComm%'%errorColor%; Write-Host '%cenOut%'%errorColor%; Write-Host """ __________________________________________________________`n"""; " -) - -IF /I "%~d3"=="R:" ( - POWERSHELL -NoP -C "%returnMsg%Write-Host """ Would you like to $^('%~x3'.replace^('.'^, ''^).replace('-',' '^)^) now? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C NY /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 SHUTDOWN -%~n3 & EXIT 0 -) ELSE ( - IF /I "%~d4"=="R:" ( - POWERSHELL -NoP -C "%returnMsg%Write-Host """ Would you like to $^('%~x4'.replace^('.'^, ''^).replace('-',' '^)^) now? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C NY /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 SHUTDOWN -%~n4 & EXIT 0 - ) ELSE ( - IF /I "%~d5"=="R:" ( - POWERSHELL -NoP -C "%returnMsg%Write-Host """ Would you like to $^('%~x5'.replace^('.'^, ''^).replace('-',' '^)^) now? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C NY /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 SHUTDOWN -%~n5 & EXIT 0 - ) ELSE ( - IF /I "%~d6"=="R:" ( - POWERSHELL -NoP -C "%returnMsg%Write-Host """ Would you like to $^('%~x6'.replace^('.'^, ''^).replace('-',' '^)^) now? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C NY /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 SHUTDOWN -%~n6 & EXIT 0 - ) ELSE ( - IF /I "%~d7"=="R:" ( - POWERSHELL -NoP -C "%returnMsg%Write-Host """ Would you like to $^('%~x7'.replace^('.'^, ''^).replace('-',' '^)^) now? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C NY /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 SHUTDOWN -%~n7 & EXIT 0 - ) ELSE ( - POWERSHELL -NoP -C "%returnMsg%Write-Host -NoNewLine ' Press any key to return to the Menu: '; [Console]::CursorVisible = $True; $NULL = $Host.UI.RawUI.ReadKey('NoEcho,IncludeKeyDown'); [Console]::CursorVisible = $False" - ) - ) - ) - ) -) - -IF "%wslUnattendRun%"=="true" ( - SET "wslUnattendRun=false" - IF "%adminPrivs%"=="false" ( - POWERSHELL -NoP -C "Start-Process '%scriptPath:'=''%' -Verb RunAs" > NUL 2>&1 - IF ERRORLEVEL 1 ( - CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| - POWERSHELL -NoP -C "Write-Host """`n`n`n Elevation canceled, run with limited functionality?`n [Y] [N]`n __________________________________________________________`n`n Choose an option: """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 ( - EXIT 0 - ) - ) ELSE ( - EXIT 0 - ) - ) -) -IF /I "%~2"=="-H" ( - ENDLOCAL & (GOTO) 2>NUL & ENDLOCAL & GOTO HOME-MAINMENU -) ELSE ( - IF "%~2"=="-HNR" ( - ENDLOCAL & (GOTO) 2>NUL & GOTO HOME-MAINMENU - ) ELSE ( - ENDLOCAL & (GOTO) 2>NUL & ENDLOCAL & GOTO %~2 - ) -) -REM ----------------------------------------------------------- -:AUX-CENTERTEXT - -SETLOCAL -SET "spaces= " -SET "cenSize=58" -SET /A "LEN=0" - -CALL :AUX-LENGTHFETCH "%~1" -IF NOT "%~2"=="" ( - IF %lenOut% GEQ 59 ENDLOCAL & ENDLOCAL & SET "cenOut= Output Error" & EXIT /B 0 -) ELSE ( - IF %lenOut% GEQ 59 CALL :AUX-LENGTHFETCH "%~2" -) -IF %lenOut% GEQ 59 ENDLOCAL & ENDLOCAL & SET "cenOut= Output Error" & EXIT /B 0 - -SET /A "oddCheck=%lenOut% %% 2" -IF "%oddCheck%"=="0" (SET "space=") ELSE (SET "space= ") -IF "%lenOut%"=="58" SET "space=" - -SET /A "pref_len=%cenSize%-%lenOut%" & SET /A "pref_len/=2" -CALL SET "cenOut=%space% %%spaces:~0,%pref_len%%%%~1" -ENDLOCAL & SET "cenOut=%cenOut%" -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-GETUSERNAME - -REM Grabs current username. %username% can be problematic and %userprofile% -REM is hard to filter properly, thus why this method is used. -FOR /F "usebackq tokens=1,* delims=\" %%A IN (`WMIC computersystem get username ^| FINDSTR /c:"\\"`) DO SET "currentUsername=%%B" - SET "currentUsername=%currentUsername:~0,-3%" - REM Detection for if user changed their username without restarting - IF "%currentUsername%"=="~0,-3" SET "currentUsername=RestartRequired" - SET "possibleUserDir=%currentUsername%" -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-GETUSERENV - -FOR /F "usebackq tokens=2,* delims= " %%A IN (`REG QUERY "HKU\%userSID%\Volatile Environment" /v "APPDATA" 2^>^&1 ^| FINDSTR /R /X /C:".*APPDATA[ ]*REG_SZ[ ].*"`) DO SET "userAppData=%%B" -FOR /F "usebackq tokens=2,* delims= " %%A IN (`REG QUERY "HKU\%userSID%\Volatile Environment" /v "LOCALAPPDATA" 2^>^&1 ^| FINDSTR /R /X /C:".*LOCALAPPDATA[ ]*REG_SZ[ ].*"`) DO SET "userLocalAppData=%%B" -FOR /F "usebackq tokens=2,* delims= " %%A IN (`REG QUERY "HKU\%userSID%\Environment" /v "TEMP" 2^>^&1 ^| FINDSTR /R /X /C:".*TEMP[ ]*REG_EXPAND_SZ[ ].*"`) DO SET "userTemp=%%B" -FOR /F "usebackq tokens=2,* delims= " %%A IN (`REG QUERY "HKU\%userSID%\Volatile Environment" /v "USERPROFILE" 2^>^&1 ^| FINDSTR /R /X /C:".*USERPROFILE[ ]*REG_SZ[ ].*"`) DO SET "userUserProfile=%%B" - -SET "userUserProfileTmp=%userUserProfile:!=:AINV:%" -SETLOCAL ENABLEDELAYEDEXPANSION -SET "userTemp=!userTemp:%%USERPROFILE%%=%userUserProfileTmp%!" -ENDLOCAL & SET "userTemp=%userTemp::AINV:=!%" - -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-ELEVATIONCHECK - -IF "%currentUsername%"=="RestartRequired" SET "userStatus=Unknown" & SET "userRestart=true" & EXIT /B 0 -NET user "%currentUsername%" /y | FINDSTR /R /X /C:".*[ ][ ][ ][ ][ ][ ]\*Administrators[ ][ ][ ][ ][ ][ ][ ].*" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SET "userStatus=Not Elevated" & EXIT /B 1 - ) ELSE ( - SET "userStatus=Elevated" & EXIT /B 0 - ) -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-NETWORKCHECK - -IF NOT "%firstLoop%"=="true" SETLOCAL & SET "firstLoop=true" & SET /A "count=0" - -IF %count% GTR 8 EXIT /B 1 - -PING -n 1 archlinux.org -w 20000 > NUL 2>&1 - IF %ERRORLEVEL% GTR 0 ( - PING -n 1 wikipedia.org -w 20000 > NUL 2>&1 - IF ERRORLEVEL 1 ( - PING -n 1 github.com -w 20000 > NUL 2>&1 - IF ERRORLEVEL 1 ( - IF /I "%~1"=="-L" SET /A "count=%count%+1" & TIMEOUT /T 3 /NOBREAK>NUL 2>&1 & GOTO :AUX-NETWORKCHECK - ENDLOCAL & EXIT /B 1 - ) - ) - ) - -ENDLOCAL & EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-BACKLINE - -POWERSHELL -NoP -C "$posY = $host.UI.RawUI.CursorPosition.Y; $origPosY = $posY - 1; [Console]::SetCursorPosition(%~1,$origPosY); Write-Host """None`r""" -ForegroundColor DarkGray" -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-INPUTLOOP - -SET "lenOut=" - -IF NOT "%firstLoop%"=="false" ( - SETLOCAL - - SET /A "count=%~3" - SET /A "countAdd=0" - SET "input=%inpTextOut%" - SET "varSet=%~1" - SET "prompt=%~2" - CALL :AUX-LENGTHFETCH "%~2" - SET "filter=%~4" - SET "firstLoop=false" - SET "tmpRND=%rndOut%" - CALL :AUX-GENRND "15" -) - -IF NOT "%lenOut%"=="" ( - SET /A "promptLen=%lenOut%+2" - SET "inpOutFile=%rndOut%" - SET "rndOut=%tmpRND%" -) - -SET "input=%input::AINV:=''''%" - -IF %count% GEQ 12 CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. & ECHO.%input::QUOTE:="%%relayMsg% & SET /A "count=2+%countAdd%" - -SET /A "countAdd=0" -SET /A "count=%count%+2" -SET "relayMsg=" -SET "tmpVar=" -SET "tmpVarDec=" - -IF "%~5"=="-Secure" ( - POWERSHELL -NoP -C "Write-Host """`n %prompt%: """ -NoNewLine; [Console]::CursorVisible = $True; $SecIn = Read-Host -AsSecureString; [Console]::CursorVisible = $False; $SecConv = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($SecIn); [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($SecConv) | Out-File '%TEMP%\%inpOutFile%' -Encoding default" & SET /P "tmpVar=" < "%TEMP%\%inpOutFile%" -) ELSE ( - POWERSHELL -NoP -C "Write-Host """`n %prompt%: """ -NoNewLine; [Console]::CursorVisible = $True; Read-Host | Out-File '%TEMP%\%inpOutFile%' -Encoding default; [Console]::CursorVisible = $False" & SET /P "tmpVar=" < "%TEMP%\%inpOutFile%" -) -DEL /Q /F "%TEMP%\%rndOut%" > NUL 2>&1 -SET "tmpVar=%tmpVar:"=:AINV:%" -SET "tmpVar=%tmpVar:"=:AINV:%" -IF "%tmpVar%"==":AINV:=:AINV:" SET "tmpVar=" - -CALL :AUX-LENGTHFETCH "%tmpVar%" -SET /A "lineLen=%lenOut%+%promptLen%" -IF %lineLen% GEQ 69 SET /A "count=%count%+1" & SET /A "countAdd=%countAdd%+1" -SET /A "extLen=%lineLen%-69" -SET /A "extLenDiv=%extLen%/80" - -IF NOT "%extLen:~0,1%"=="-" SET /A "count=%count%+%extLenDiv%+1" & SET /A "countAdd=%countAdd%+1" - -SET /A "inSpace=69-%promptLen%" -IF %lenOut% GTR %inSpace% SET "tmpVarDec=..." & SET /A "inSpace=%inSpace%-4" - -IF %count% GEQ 11 ( - SET "cancelOut= > NUL" -) ELSE ( - SET "cancelOut=" -) - -CALL :FILTERCALL-%filter% - IF %ERRORLEVEL% EQU 5 ( - ENDLOCAL & SET "inpLenOut=%count%" & SET "inpTextOut=%input%" & SET "%varSet%=:None:" & EXIT /B 5 - ) - IF %ERRORLEVEL% EQU 3 ( - ENDLOCAL & EXIT /B 3 - ) - IF %ERRORLEVEL% EQU 1 ( - SET /A "count=%count%+1" - SET /A "countAdd=%countAdd%+1" - ECHO %relayMsg:~8%%cancelOut% - GOTO :AUX-INPUTLOOP - ) ELSE ( - ENDLOCAL & SET "inpLenOut=%count%" & SET "inpTextOut=%input%" & SET "%varSet%=%tmpVar%" - EXIT /B 0 - ) -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-LENGTHFETCH - -SET "auxLenStr=%~1" -IF "%auxLenStr%"=="" SET "lenOut=0" & SET "lenAstOut=" & EXIT /B 0 -SET "auxLenStr=%auxLenStr::AINV:=.%" -IF /I "%~2"=="-L" ( - SET "auxLenStr=%auxLenStr:\\=.%" -) ELSE ( - IF /I "%~3"=="-L" SET "auxLenStr=%auxLenStr:\\=.%" -) -SET /A "auxLen=0" -SET "auxAsterisks=****************************************************************************************************" - -FOR /F "usebackq delims=" %%A IN (`POWERSHELL -NoP -C "'%auxLenStr:'=''%'.Length"`) DO SET "auxLen=%%A" - -SET /A "auxLenRem=%auxLen%%%100" -SET /A "auxAstDiv=%auxLen%/100" -CALL SET "auxLenAst=%%auxAsterisks:~0,%auxLenRem%%%" - -:LENGTHFETCH-LOOP - -IF %auxAstDiv% LEQ 0 GOTO LENGTHFETCH-LOOPEND - -SET /A "auxAstDiv=%auxAstDiv%-1" -CALL SET "auxLenAst=%auxLenAst%%auxAsterisks%" - -GOTO :LENGTHFETCH-LOOP - -:LENGTHFETCH-LOOPEND - -IF /I "%~2"=="-Mask" ( - ENDLOCAL & SET "lenAstOut=%auxLenAst%" & SET "lenOut=%auxLen%" - EXIT /B 0 -) ELSE ( - IF /I "%~3"=="-Mask" ( - ENDLOCAL & SET "lenAstOut=%auxLenAst%" & SET "lenOut=%auxLen%" - EXIT /B 0 - ) -) - -ENDLOCAL & SET "lenOut=%auxLen%" -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-WAITLOOP - -SETLOCAL - -SET "arg1=%~1" -SET "arg1=%arg1:-C:=%" - IF NOT "%arg1%"=="%~1" SET "findArgs=/c:" -SET "arg1Tmp=%arg1:-X:=%" - IF NOT "%arg1%"=="%arg1Tmp%" SET "findArgs=/X /c:" - -IF "%~3"=="-TME" ( - SET "time=%~4" -) ELSE ( - IF "%~5"=="-TME" ( - SET "time=%~6" - ) ELSE ( - IF "%~7"=="-TME" ( - SET "time=%~8" - ) ELSE ( - SET "time=1500" - ) - ) -) -IF "%~3"=="-ALT" ( - SET "alt=%~4" -) ELSE ( - IF "%~5"=="-ALT" ( - SET "alt=%~6" - ) ELSE ( - IF "%~7"=="-ALT" ( - SET "alt=%~8" - ) ELSE ( - SET "alt=|:AME-NULL:|" - ) - ) -) - -:WAITLOOP-MARKER - -SET /A "auxWaitCount=%auxWaitCount%+1" - -IF %auxWaitCount% GTR %time% ENDLOCAL & EXIT /B 1 - -TIMEOUT /T 1 /NOBREAK > NUL 2>&1 - -IF "%~3"=="-PID" ( - WMIC process where "name='cmd.exe' and ProcessId='%~4' or name='WindowsTerminal.exe' and ProcessId='%~4'" get name 2>&1 | FINDSTR /c:"No Instance(s) Available.">NUL 2>&1 && SET /A "auxWaitCount=%auxWaitCount%+500" -) ELSE ( - IF "%~5"=="-PID" ( - WMIC process where "name='cmd.exe' and ProcessId='%~6' or name='WindowsTerminal.exe' and ProcessId='%~6'" get name 2>&1 | FINDSTR /c:"No Instance(s) Available.">NUL 2>&1 && SET /A "auxWaitCount=%auxWaitCount%+500" - ) ELSE ( - IF "%~7"=="-PID" ( - WMIC process where "name='cmd.exe' and ProcessId='%~8' or name='WindowsTerminal.exe' and ProcessId='%~8'" get name 2>&1 | FINDSTR /c:"No Instance(s) Available.">NUL 2>&1 && SET /A "auxWaitCount=%auxWaitCount%+500" - ) - ) -) - -IF /i "%arg1:"=:AINV:%"=="-WindowTitle" ( - FOR /F "usebackq tokens=2 delims= " %%A IN (`TASKLIST /FI "IMAGENAME eq cmd.exe" /FI "WINDOWTITLE eq %~2" /FO list /svc ^| FINDSTR /b /c:"PID: " ^|^| ECHO RESULT NULL`) DO ( - IF NOT "%%A"=="NULL" ( - ECHO "%%A" | FINDSTR "1 2 3 4 5 6 7 8 9 0">NUL 2>&1 && ENDLOCAL && SET "waitPIDOut=%%A" && EXIT /B 0 - ENDLOCAL & EXIT /B 1 - - ) - ) - GOTO WAITLOOP-MARKER -) - -FINDSTR /c:"%alt%" "%~2" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - WSL -d %wslDistro% < "%TEMP%\[amecs]-WSLLin%rndOut%.txt" 2>&1 | FINDSTR /c:"|AME-WSLUSERTAKEN|" /c:"|AME-WSLGROUPTAKEN|">NUL 2>&1 && ECHO UserGroupCheck: Taken> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" || ECHO UserGroupCheck: Open> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" - ) - -FINDSTR %findArgs%"%arg1%" "%~2" > NUL 2>&1 && ENDLOCAL && EXIT /B 0 - -FINDSTR /X /c:"AME-ERROR" "%~2" > NUL 2>&1 && ENDLOCAL && EXIT /B 2 -FINDSTR /X /c:"AME-ERROR1" "%~2" > NUL 2>&1 && ENDLOCAL && EXIT /B 3 -FINDSTR /X /c:"AME-ERROR2" "%~2" > NUL 2>&1 && ENDLOCAL && EXIT /B 4 -GOTO WAITLOOP-MARKER -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-FETCHLINK - -SETLOCAL - -SET /A "count0=0" - -CALL :AUX-NETWORKCHECK - IF %ERRORLEVEL% NEQ 0 ENDLOCAL & SET "fetchMsgOut=Internet is required for this action." & EXIT /B 5 - -SET "name=%~2" - -PING -n 1 git.ameliorated.info -w 20000 > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - ENDLOCAL & SET "fetchMsgOut=Link database unavailable." - EXIT /B 5 - ) - -FOR /F "usebackq tokens=2,4,6,8,10 delims=|" %%A IN (`POWERSHELL -NoP -C "$ProgressPreference = 'SilentlyContinue'; (Invoke-WebRequest https://git.ameliorated.info/Styris/amecs/src/branch/master/links.txt -UseBasicParsing | Select-Object -Property Content).Content" ^| FINDSTR /i /c:"%name% ="`) DO ( - SET "link=%%~A" - SET "arg=%%~B" - IF NOT "%%~C"=="" ( - SET "alt=true" - SET "altLink=%%~C" - SET "altArg=%%~D" - SET "altName=%%~E" - ) -) - -:FETCHLINK-MARKER - -SET "link=%link:"=:AINV:%" -SET "link=%link:"=:AINV:%" - - ECHO "%link%" | FINDSTR /c:""""""" " /c:":AINV:" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ENDLOCAL & SET "fetchMsgOut=Download link is invalid." & EXIT /B 5 - - IF "%link%"=="REMOVED" ENDLOCAL & SET "fetchMsgOut=Download no longer available." & EXIT /B 5 - -ECHO "%link%" | FINDSTR /i /c:"apps.microsoft.com" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - PING -n 1 store.rg-adguard.net -w 20000 > NUL 2>&1 - IF ERRORLEVEL 1 ( - ENDLOCAL & SET "fetchMsgOut=Failed to fetch download link. (2)" & EXIT /B 5 - ) - FOR /F usebackq^ tokens^=4^,13^ delims^=^" %%A IN (`POWERSHELL -NoP -C "$ProgressPreference = 'SilentlyContinue'; (Invoke-WebRequest -Method 'POST' -Uri 'https://store.rg-adguard.net/api/GetFiles' -Body 'type=url&url=%link%&ring=Retail' -UseBasicParsing | Select-Object -Property Content).Content" ^| FINDSTR /i "%arg%"`) DO ( - SET "link=%%~A" - SET "size=%%~B" - SET "haveLink=true" - ) - ) ELSE ( - SET "size=%Arg%" - SET "haveLink=true" - ) -IF %count0% GEQ 3 ( - IF NOT "%retry1%"=="true" ( - IF "%alt%"=="true" ( - ECHO. & ECHO Failed to process link, trying another link... - SET "retry1=true" - SET "link=%altLink%" - SET "arg=%altArg%" - SET "name=%altName%" - GOTO FETCHLINK-MARKER - ) - ) - ENDLOCAL & SET "fetchMsgOut=Failed to fetch download link. (1)" & EXIT /B 5 -) -IF NOT "%haveLink%"=="true" SET /A "count0=%count0%+1" & GOTO FETCHLINK-MARKER - -SET "size=%size:=%" -SET "size=%size:>=%" -ECHO "%size%" | FINDSTR "MB KB GB">NUL 2>&1 || SET "size=0 MB" - -IF NOT "%~3"=="-Download" ENDLOCAL & SET "linkOut=%link%" & SET "sizeOut=%size%" & SET "wslDistro=%name%" & EXIT /B 0 - -CALL :AUX-CENTERTEXT "%~5 (%size%)..." -ECHO. & ECHO %cenOut% -DEL /Q /F "%~4" > NUL 2>&1 -CURL -L --progress-bar "%link%" --output "%~4" - FOR %%A IN ("%~4") DO SET "compareSize=%%~zA" - IF "%compareSize%"=="" SET "compareSize=0" - CALL :AUX-KILOBYTEFETCH "%size%" -Compare "%compareSize%" - IF %ERRORLEVEL% EQU 1 ( - IF NOT "%retry2%"=="true" ( - IF "%alt%"=="true" ( - ECHO "%altLink%" | FINDSTR /i /c:"apps.microsoft.com" > NUL 2>&1 - IF NOT ERRORLEVEL 1 ( - IF NOT "%homeWSLUnavailable1%"==" :REP:" ENDLOCAL & SET "fetchMsgOut=Failed to download files. (2)" & EXIT /B 5 - ) - ECHO. & ECHO Download failed, trying another link... - SET "retry2=true" - SET "link=%altLink%" - SET "arg=%altArg%" - SET "name=%altName%" - SET /A "count0=0" - GOTO FETCHLINK-MARKER - ) - ) - DEL /Q /F "%~4" > NUL - ENDLOCAL & SET "fetchMsgOut=Failed to download files. (1)" & EXIT /B 5 - ) - -ENDLOCAL & SET "wslDistro=%name%" -EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-KILOBYTEFETCH - -SETLOCAL ENABLEDELAYEDEXPANSION - -SET "num1=%~1" -SET "num1=%num1: =.%" - -FOR /F "usebackq delims=. tokens=1,2,3" %%A IN (`ECHO %num1%`) DO ( - SET "whole=%%A" - IF "%%C"=="" ( - SET "type=%%B" - ) ELSE ( - CALL :AUX-LENGTHFETCH "%%B" - SET "deci=%%B" - SET "type=%%C" - ) - -) -IF "%type%"=="MB" SET "zeros=000" -IF "%type%"=="GB" SET "zeros=000000" -SET "add=!zeros:~%lenOut%!" -ECHO "%add%" | FINDSTR /c:"~">NUL 2>&1 && SET "add=" - -SET "kilobytes=%whole%%deci%%add%" - -IF NOT "%~2"=="-Compare" ENDLOCAL & SET "kiloOut=%kilobytes%" & EXIT /B 0 - -SET /A "num1Div=%kilobytes%/10" -SET /A "num1=%kilobytes%-%num1Div%" - -SET "num2=%~3" -IF "%num2%"=="" SET "num2=0" -SET "num2=%num2:~0,-3%" -IF "%num2%"=="" SET "num2=0" - -IF "%num2%" LSS "%num1%" ( - ENDLOCAL & EXIT /B 1 -) ELSE ( - ENDLOCAL & EXIT /B 0 -) -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-GENRND - -SETLOCAL ENABLEDELAYEDEXPANSION - -:GENRND-MARKER - -SET "RNDConsist=ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" -SET /A "RND=%RANDOM% %% 36" -SET "RNDResult=!RNDResult!!RNDConsist:~%RND%,1!" -IF "!RNDResult:~%~1!"=="" GOTO GENRND-MARKER - - -ENDLOCAL & SET "rndOut=%RNDResult%" & EXIT /B 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:AUX-ALTSTART - -SETLOCAL - -SET "taskRun=%~2" - -CALL :AUX-GENRND "7" - -CALL SET "taskRun=%%taskRun:|Script|=%userTemp%\[amecs]-amecs%rndOut%.cmd%%" -CALL SET "taskRun=%%taskRun:|rndOut|=%rndOut%%%" - -COPY /Y "%scriptPath%" "%userTemp%\[amecs]-amecs%rndOut%.cmd" > NUL -SCHTASKS /CREATE /tn "[amecs]-%~1" /tr "%taskRun%" /sc ONLOGON /ru "%currentUsername%" /it /f > NUL - IF %ERRORLEVEL% NEQ 0 SCHTASKS /DELETE /TN "[amecs]-%~1" /F>NUL 2>&1 & EXIT /B 1 -POWERSHELL -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName '[amecs]-%~1' -Settings $TaskSet" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 SCHTASKS /DELETE /TN "[amecs]-%~1" /F>NUL 2>&1 & EXIT /B 2 -REM RUNAS will work, however it requires the user to enter a password, and won't accept a blank one. This is a lot more simple and reliable -SCHTASKS /RUN /tn "[amecs]-%~1" > NUL -SCHTASKS /DELETE /tn "[amecs]-%~1" /f > NUL 2>&1 -ENDLOCAL & SET "rndOut=%rndOut%" & EXIT /B 0 -REM ----------------------------------------------------------- - - - REM ------------ - REM Filter Calls - REM ------------ - - -REM ----------------------------------------------------------- -:FILTERCALL-1 -REM WSL password filter - -IF "%tmpVar%"=="" CALL :AUX-BACKLINE "36" && SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ' -NoNewLine; Write-Host 'None' -ForegroundColor DarkGray:QUOTE:" && EXIT /B 5 -CALL :AUX-LENGTHFETCH "%tmpVar%" -Mask -CALL SET "tmpVarIn=%%lenAstOut:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt%: %tmpVarIn:'=''%':QUOTE:" - -SET "tmpVar=%tmpVar:\=\\%" -ECHO "%tmpVar%" | FINDSTR /c:":AINV:">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain double quotes." && EXIT /B 1 -EXIT /B 0 - -:FILTERCALL-2 -REM WSL username filter - -IF "%tmpVar%"=="" CALL :AUX-BACKLINE "36" && SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ' -NoNewLine; Write-Host 'None' -ForegroundColor DarkGray:QUOTE:" && EXIT /B 5 -CALL SET "tmpVarIn=%%tmpVar:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: %tmpVarIn:'=''%':QUOTE:" - -ECHO "%tmpVar%" | FINDSTR "\\ :AINV: ( ) ~ ` ! @ # %% ^ & * + = [ ] { } : ; , . < > ' | / ?">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain special characters except '_' ^& '-'." && EXIT /B 1 -ECHO "%tmpVar%" | FINDSTR "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain capital letters." && EXIT /B 1 -ECHO "%tmpVar%"| FINDSTR /c:" ">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain spaces." && EXIT /B 1 -CALL :AUX-LENGTHFETCH "%tmpVar%" - IF %lenOut% GEQ 32 SET "relayMsg= & ECHO Input cannot exceed 32 characters." && EXIT /B 1 -ECHO "%tmpVar:~0,1%" | FINDSTR /c:"-">NUL 2>&1 && SET "relayMsg= & ECHO Input must follow the NAME_REGEX pattern." && EXIT /B 1 -ECHO "%tmpVar:~0,-1%" | FINDSTR /c:"$">NUL 2>&1 && SET "relayMsg= & ECHO Input must follow the NAME_REGEX pattern." && EXIT /B 1 -ECHO getent groups ^| grep "^%tmpVar%" ^|^| getent group ^| grep "^%tmpVar%:" ^&^& echo "|AME-WSLUSERTAKEN|"; getent passwd ^| grep "^%tmpVar%:" ^&^& echo "|AME-WSLGROUPTAKEN|" > "%TEMP%\[amecs]-WSLLin%rndOut%.txt" -WSL -d %wslDistro% < "%TEMP%\[amecs]-WSLLin%rndOut%.txt" 2>&1 | FINDSTR /c:"|AME-WSLUSERTAKEN|" /c:"|AME-WSLGROUPTAKEN|" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 SET "relayMsg= & ECHO Username or group name already taken." && EXIT /B 1 -EXIT /B 0 - -:FILTERCALL-3 -REM WSL ALTRUN username filter - -IF "%tmpVar%"=="" CALL :AUX-BACKLINE "36" && SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ' -NoNewLine; Write-Host 'None' -ForegroundColor DarkGray:QUOTE:" && EXIT /B 5 -CALL SET "tmpVarIn=%%tmpVar:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: %tmpVarIn:'=''%':QUOTE:" - -ECHO "%tmpVar%" | FINDSTR "\\ :AINV: ( ) ~ ` ! @ # %% ^ & * + = [ ] { } : ; , . < > ' | / ?">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain special characters except '_' ^& '-'." && EXIT /B 1 -ECHO "%tmpVar%" | FINDSTR "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain capital letters." && EXIT /B 1 -ECHO "%tmpVar%"| FINDSTR /c:" ">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain spaces." && EXIT /B 1 -CALL :AUX-LENGTHFETCH "%tmpVar%" - IF %lenOut% GEQ 32 SET "relayMsg= & ECHO Input cannot exceed 32 characters." && EXIT /B 1 -ECHO "%tmpVar:~0,1%" | FINDSTR /c:"-">NUL 2>&1 && SET "relayMsg= & ECHO Input must follow the NAME_REGEX pattern." && EXIT /B 1 -ECHO "%tmpVar:~0,-1%" | FINDSTR /c:"$">NUL 2>&1 && SET "relayMsg= & ECHO Input must follow the NAME_REGEX pattern." && EXIT /B 1 -ECHO getent groups ^| grep "^%tmpVar%" ^|^| getent group ^| grep "^%tmpVar%:" ^&^& echo "|AME-WSLUSERTAKEN|"; getent passwd ^| grep "^%tmpVar%:" ^&^& echo "|AME-WSLGROUPTAKEN|" > "%userTemp%\[amecs]-WSLLin%rndOut%.txt" - -ECHO AME-USERCHECK > "%userTemp%\[amecs]-WSLCom%rndOut%.txt" -CALL :AUX-WAITLOOP "-C:UserGroupCheck: " "%userTemp%\[amecs]-WSLCom%rndOut%.txt" -PID "%altRunPID%" -TME "12" - IF %ERRORLEVEL% EQU 0 ( - FINDSTR /c:"UserGroupCheck: Taken" "%userTemp%\[amecs]-WSLCom%rndOut%.txt">NUL 2>&1 && SET "relayMsg= & ECHO Username or group name already taken." && EXIT /B 1 - ) ELSE ( - ECHO WAITLOOP Error! - ) -EXIT /B 0 - -:FILTERCALL-4 -REM Windows password change filter - -IF "%tmpVar%"=="" ( - CALL :AUX-BACKLINE "52" - SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ':QUOTE:" - NET user "%C4Username%" "%tmpVar%" /y > NUL 2>&1 - IF ERRORLEVEL 1 SET "relayMsg= & ECHO Failed to change user password." && EXIT /B 1 - EXIT /B 0 -) - -CALL :AUX-LENGTHFETCH "%tmpVar%" -Mask -CALL SET "tmpVarIn=%%lenAstOut:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: %tmpVarIn:'=''%':QUOTE:" - -IF /I "%tmpVar%"=="Cancel" EXIT /B 3 -ECHO "%tmpVar%" | FINDSTR /c:":AINV:">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain quotes." && EXIT /B 1 - -NET user "%C4Username%" "%tmpVar%" /y > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 SET "relayMsg= & ECHO An error occured or the input was invalid." && EXIT /B 1 -EXIT /B 0 - -:FILTERCALL-5 -REM Windows username change filter - -IF "%tmpVar%"=="" SET "relayMsg= & ECHO Input cannot be blank." && SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ':QUOTE:" && EXIT /B 1 -CALL SET "tmpVarIn=%%tmpVar:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: %tmpVarIn:'=''%':QUOTE:" - -IF /I "%tmpVar%"=="Cancel" EXIT /B 3 -ECHO "%tmpVar%" | FINDSTR /c:":AINV:">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain double quotes." && EXIT /B 1 - -TIMEOUT /T 1 /NOBREAK > NUL -FOR /F "usebackq tokens=3" %%A IN (`WMIC useraccount where "name='%currentUsername:'=\'%'" rename "%tmpVar%" 2^>^&1 ^| FINDSTR /c:"0;" /c:"Available." /c:"9;"`) DO SET "wmicOutput=%%A" > NUL 2>&1 - IF "%wmicOutput%"=="0;" EXIT /B 0 - REM This should only happen if the user changes their username AND closes/re-opens the .cmd before restarting. - IF "%wmicOutput%"=="Available." SET "relayMsg= & ECHO You must restart before changing your username again." && EXIT /B 1 - IF "%wmicOutput%"=="9;" SET "relayMsg= & ECHO Invalid input." && EXIT /B 1 - -SET "relayMsg= & ECHO Failed to parse WMIC output." -EXIT /B 1 - -:FILTERCALL-6 -REM Windows password filter backline - -IF /I "%tmpVar%"=="" CALL :AUX-BACKLINE "52" && SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ' -NoNewLine; Write-Host 'None' -ForegroundColor DarkGray:QUOTE:" && EXIT /B 0 -CALL :AUX-LENGTHFETCH "%tmpVar%" -Mask -CALL SET "tmpVarIn=%%lenAstOut:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: %tmpVarIn:'=''%':QUOTE:" - -IF /I "%tmpVar%"=="Cancel" EXIT /B 3 -ECHO "%tmpVar%" | FINDSTR /c:":AINV:">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain quotes." && EXIT /B 1 - -EXIT /B 0 - -:FILTERCALL-7 -REM Windows username add filter - -IF "%tmpVar%"=="" SET "relayMsg= & ECHO Input cannot be blank." && SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ':QUOTE:" && EXIT /B 1 -CALL :AUX-LENGTHFETCH "%tmpVar%" -Mask -CALL SET "tmpVarIn=%%tmpVar:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: %tmpVarIn:'=''%':QUOTE:" - -IF /I "%tmpVar%"=="Cancel" EXIT /B 3 -ECHO "%tmpVar%" | FINDSTR /c:":AINV:">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain double quotes." && EXIT /B 1 - -NET user "%tmpVar%" /y > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 SET "relayMsg= & ECHO User already exists." & EXIT /B 1 - -NET user "%tmpVar%" /add /y > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 SET "relayMsg= & ECHO Invalid input." && EXIT /B 1 - -NET user "%tmpVar%" /delete /y > NUL 2>&1 -EXIT /B 0 - -:FILTERCALL-8 -REM Windows username remove filter - -IF "%tmpVar%"=="" SET "relayMsg= & ECHO Input cannot be blank." && SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ':QUOTE:" && EXIT /B 1 -CALL SET "tmpVarIn=%%tmpVar:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: %tmpVarIn:'=''%':QUOTE:" - -IF /I "%tmpVar%"=="Cancel" EXIT /B 3 -ECHO "%tmpVar%" | FINDSTR /c:":AINV:">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain double quotes." && EXIT /B 1 - -NET user "%tmpVar%" /y > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 SET "relayMsg= & ECHO User does not exist." & EXIT /B 1 -EXIT /B 0 - -:FILTERCALL-9 -REM User password filter - -IF "%tmpVar%"=="" ( - CALL :AUX-BACKLINE "59" - SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: ' -NoNewLine; Write-Host 'None' -ForegroundColor DarkGray:QUOTE:" - SCHTASKS /CREATE /TN "[amecs]-USERPASSCHECK" /TR "CMD /C 'SCHTASKS /DELETE /TN '[amecs]-USERPASSCHECK' /F'" /SC ONSTART /RU "%currentUsername%" /RP "" /F&1 | FINDSTR /c:"blank passwords aren't allowed" > NUL 2>&1 - IF ERRORLEVEL 1 ( - SCHTASKS /DELETE /TN '[amecs]-USERPASSCHECK' /F > NUL 2>&1 - SET "relayMsg= & ECHO Password is invalid." & EXIT /B 1 - ) - EXIT /B 0 -) - -CALL :AUX-LENGTHFETCH "%tmpVar%" -Mask -CALL SET "tmpVarIn=%%lenAstOut:~0,%inSpace%%%%tmpVarDec%" -SET "input= & POWERSHELL -NoP -C :QUOTE:Write-Host ' %prompt:'=''%: %tmpVarIn:'=''%':QUOTE:" -IF /I "%tmpVar%"=="Cancel" EXIT /B 3 -ECHO "%tmpVar%" | FINDSTR /c:":AINV:">NUL 2>&1 && SET "relayMsg= & ECHO Input cannot contain double quotes." && EXIT /B 1 - - -SCHTASKS /CREATE /TN "[amecs]-USERPASSCHECK" /TR "CMD /C 'SCHTASKS /DELETE /TN '[amecs]-USERPASSCHECK' /F'" /SC ONSTART /RU "%currentUsername%" /RP "%tmpVar%" /F NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SCHTASKS /DELETE /TN "[amecs]-USERPASSCHECK" /F > NUL 2>&1 - SET "relayMsg= & ECHO Password is invalid." & EXIT /B 1 - ) - - -SCHTASKS /DELETE /TN "[amecs]-USERPASSCHECK" /F > NUL 2>&1 -EXIT /B 0 -REM ----------------------------------------------------------- - - - REM ------ - REM ALTRUN - REM ------ - - -REM ----------------------------------------------------------- -:ALTPARENT-WSL-DISTROINSTALL - -SETLOCAL - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -IF "%wslUnattend%"=="true" GOTO :WSL-DISTROUNATTEND - -DISM /Online /Get-FeatureInfo:Microsoft-Windows-Subsystem-Linux /English | FINDSTR /x /c:"State : Enabled" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - POWERSHELL -NoP -C "Write-Host """`n`n WSL is disabled.""" -ForegroundColor Red; Write-Host """ __________________________________________________________`n`n Would you like to enable it now? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 ENDLOCAL & GOTO HOME-WSL - IF ERRORLEVEL 1 ENDLOCAL & GOTO WSL-ENABLE - ) -WHERE wsl.exe > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 CALL :AUX-RETURN "A restart is required for WSL functionality." "HOME-WSL" -E -REM ::::::::::::::::::::::::::::P-WSL1-AR:::::::::::::::::::::::::::: -ECHO. & ECHO Launching alt installer... -CALL :AUX-ALTSTART "WSLDistroInstall" "CMD /C 'START /min '' POWERSHELL -NoP -C 'Start-Process ''''|Script|'''' -ArgumentList ''''wslInstall'''',''''|rndOut|'''' -WindowStyle Hidden'" - IF %ERRORLEVEL% EQU 1 CALL :AUX-RETURN "Failed to create scheduled task. (1)" "HOME-WSL" -E -C - IF %ERRORLEVEL% EQU 2 CALL :AUX-RETURN "Failed to create scheduled task. (2)" "HOME-WSL" -E -C - -REM CALL :AUX-ALTSTART "WSLDistroInstall" "CMD /K '|Script| wslInstall |rndOut|'" - -CALL :AUX-WAITLOOP -WindowTitle "AMECS-AltRun-%rndOut%" -TME "30" - IF ERRORLEVEL 1 CALL :AUX-RETURN "Failed to launch alt process." "HOME-WSL" -E -C - SET "altRunPID=%waitPIDOut%" - ECHO "Distro: |%wslDistro%|">> "%userTemp%\[amecs]-WSLCom%rndOut%.txt" - ECHO "PID: |%scriptPID%|">> "%userTemp%\[amecs]-WSLCom%rndOut%.txt" - - CALL :AUX-WAITLOOP "-C:Reg: " "%userTemp%\[amecs]-WSLCom%rndOut%.txt" -PID "%altRunPID%" - IF NOT ERRORLEVEL 1 ( - FINDSTR /c:"Reg: True" "%userTemp%\[amecs]-WSLCom%rndOut%.txt" > NUL && SET "distroReg=true" - FINDSTR /c:"Reg: False" "%userTemp%\[amecs]-WSLCom%rndOut%.txt" > NUL && SET "distroReg=false" - ) ELSE ( - TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - ) -REM ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: - -DIR /B /A:d "%userLocalAppData%\AME-WSL" 2>&1 | FINDSTR /X /c:"%wslDistro%" > NUL 2>&1 && SET "distroFiles=true" - -IF "%distroReg%"=="true" ( - TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - CALL :AUX-RETURN "Distro is already installed." "HOME-WSL" -C -E -) ELSE ( - IF "%distroFiles%"=="true" ( - POWERSHELL -NoP -C "Write-Host """`n`n Traces of previous distro installation found.""" -ForegroundColor Red; Write-Host """ __________________________________________________________`n`n Remove installation files and reinstall distro? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C NY /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF ERRORLEVEL 2 ( - CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - ECHO. & ECHO Removing installation files... - TIMEOUT /T 1 /NOBREAK > NUL 2>&1 - FOR /F "usebackq delims=" %%A IN (`DIR /B /A:d "%userLocalAppData%\AME-WSL" 2^>^&1 ^| FINDSTR /X /c:"%wslDistro%"`) DO ( - FOR /F "usebackq delims=" %%B IN (`DIR /S /B "%userLocalAppData%\AME-WSL\%%A\*.exe" 2^>^&1`) DO ( - FOR /F "usebackq delims=" %%C IN (`POWERSHELL -NoP -C "Get-Process | Where-Object {$_.Path -eq '%%~B'} | Select-Object -ExpandProperty Id" 2^>^&1`) DO ( - TASKKILL /F /T /PID "%%~C" > NUL 2>&1 - ) - ) - RMDIR /Q /S "%userLocalAppData%\AME-WSL\%%A" > NUL - ) - ) ELSE ( - TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - DEL /Q /F "%userTemp%\[amecs]*%rndOut%.*" > NUL 2>&1 - ENDLOCAL & GOTO HOME-WSL - ) - ) -) - -IF "%wslDistro%"=="Alpine" ( - SET "wslLShell=/bin/ash" - SET "sudo=" -) ELSE ( - SET "wslLShell=/bin/bash" - SET "sudo=sudo " -) - -POWERSHELL -NoP -C "Write-Host """`n A Linux distro must be downloaded`n Continue? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==2 TASKKILL /F /T /PID "%altRunPID%">NUL 2>&1 & DEL /Q /F "%userTemp%\[amecs]*%rndOut%.*">NUL 2>&1 & ENDLOCAL & GOTO HOME-MAINMENU - -ECHO. & ECHO Fetching download link... - -CALL :AUX-FETCHLINK "HOME-WSL" "%wslDistro%" -Download "%TEMP%\[amecs]-%wslDistro%%rndOut%.zip" "Downloading distro" - IF %ERRORLEVEL% EQU 5 TASKKILL /F /T /PID "%altRunPID%">NUL 2>&1 & CALL :AUX-RETURN "%fetchMsgOut%" "HOME-WSL" -E -C - -ECHO. & ECHO Preparing distro for installation... - -IF NOT EXIST "%userLocalAppData%\AME-WSL" MKDIR "%userLocalAppData%\AME-WSL" -RMDIR /Q /S "%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp" > NUL 2>&1 -MKDIR "%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp" - -POWERSHELL -NoP -C "Expand-Archive -LiteralPath '%TEMP%\[amecs]-%wslDistro%%rndOut%.zip' -DestinationPath '%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp'" -DEL /Q /F "%TEMP%\[amecs]-%wslDistro%%rndOut%.zip" -FOR /F "usebackq delims=" %%A IN (`DIR /B "%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp" ^| FINDSTR /i ".*_x64\.appx .*_x64\.msix .*\.exe"`) DO ( - IF /i "%%~xA"==".exe" ( - RENAME "%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp" "%wslDistro%" - SET "wslExe=%userLocalAppData%\AME-WSL\%wslDistro%\%%~A" - SET "wslExeName=%%~nxA" - ) ELSE ( - RENAME "%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp\%%~A" "%%~nA.zip" - MKDIR "%userLocalAppData%\AME-WSL\%wslDistro%" - POWERSHELL -NoP -C "$ProgressPreference = 'SilentlyContinue'; Expand-Archive -LiteralPath '%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp\%%~nA.zip' -DestinationPath '%userLocalAppData%\AME-WSL\%wslDistro%'" - RMDIR /Q /S "%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp" - - FOR /F "usebackq delims=" %%B IN (`DIR /B "%userLocalAppData%\AME-WSL\%wslDistro%" ^| FINDSTR /i ".*\.exe"`) DO ( - IF /i "%%~B"=="PengwinUI.exe" ( - COPY "%userLocalAppData%\AME-WSL\%wslDistro%\DistroLauncher\pengwin.exe" "%userLocalAppData%\AME-WSL\%wslDistro%\pengwin.exe" /y > NUL - SET "wslExe=%userLocalAppData%\AME-WSL\%wslDistro%\pengwin.exe" - SET "wslExeName=pengwin.exe" - ) ELSE ( - SET "wslExe=%userLocalAppData%\AME-WSL\%wslDistro%\%%~B" - SET "wslExeName=%%~nxB" - ) - ) - ) -) - -IF "%wslExe%"=="" ( - TASKKILL /F /T /PID "%altRunPID%">NUL 2>&1 - DEL /Q /F "%userTemp%\[amecs]-%wslDistro%%rndOut%.zip" > NUL - RMDIR /Q /S "%userLocalAppData%\AME-WSL\%wslDistro%%rndOut%-Tmp" > NUL 2>&1 - RMDIR /Q /S "%userLocalAppData%\AME-WSL\%wslDistro%" > NUL 2>&1 - CALL :AUX-RETURN "Failed to locate distro executable." "HOME-WSL" -E -C -) - -REM ::::::::::::::::::::::::::::P-WSL2-AR:::::::::::::::::::::::::::: -ECHO "Exe: |%wslExe%|" >> "%userTemp%\[amecs]-WSLCom%rndOut%.txt" -REM ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: - -SET "count1=0" - -ECHO. & ECHO Installing distro, this may take awhile... - -:ALTPARENT-WSL-DISTROPROGRESS - -IF %count1% GTR 800 ( - IF "%distroPID%"=="" ( - IF "%distroHostPID%"=="" ( - TASKKILL /F /T /PID "%altRunPID%">NUL 2>&1 - CALL :AUX-RETURN "Failed to fetch distro process IDs." "HOME-WSL" -C -E - ) - ) - TASKKILL /F /T /PID "%altRunPID%" /PID "%distroPID%" /PID "%distroHostPID%" > NUL 2>&1 - CALL :AUX-RETURN "Distro installation timed out." "HOME-WSL" -C -E -) - -FINDSTR "1 2 3 4 5 6 7 8 9 0" "%userTemp%\[amecs]-DistroHostPID%rndOut%.txt" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 SET /P "distroHostPID=" < "%userTemp%\[amecs]-DistroHostPID%rndOut%.txt" -FINDSTR "1 2 3 4 5 6 7 8 9 0" "%userTemp%\[amecs]-DistroPID%rndOut%.txt" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 SET /P "distroPID=" < "%userTemp%\[amecs]-DistroPID%rndOut%.txt" - -FINDSTR /X /c:"AME-ERROR" "%userTemp%\[amecs]-WSLCom%rndOut%.txt">NUL 2>&1 && SET /A "count2=%count2%+500" -FINDSTR /X /c:"AME-INPUTREQ" "%userTemp%\[amecs]-WSLCom%rndOut%.txt">NUL 2>&1 && GOTO ALTPARENT-WSL-CONFIG -TASKLIST /FI "IMAGENAME eq cmd.exe" /FI "PID eq %altRunPID%" 2>&1 | FINDSTR /i /c:"cmd.exe">NUL 2>&1 || SET /A "count1=%count1%+70" -TIMEOUT /T 2 /NOBREAK > NUL 2>&1 -SET /A "count1=%count2%+1" -GOTO ALTPARENT-WSL-DISTROPROGRESS - -:ALTPARENT-WSL-CONFIG - -TASKKILL /F /T /PID "%distroPID%" /PID "%distroHostPID%" > NUL 2>&1 - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -CALL :AUX-INPUTLOOP "wslRootPass" "Enter new root password" "0" "1" -Secure - -CALL :AUX-INPUTLOOP "wslUser" "Enter new UNIX username" "%inpLenOut%" "3" - -IF NOT "%wslUser%"==":None:" CALL :AUX-INPUTLOOP "wslUserPass" "Enter new UNIX password" "%inpLenOut%" "1" -Secure - -IF NOT "%wslRootPass%"==":None:" SET "wslRootArg=echo -e """"%wslRootPass%\n%wslRootPass%"""" | passwd """"root"""" && " - -IF NOT "%wslUser%"==":None:" SET "wslUserArg=useradd -m -G %wslGroups% -s %wslLShell% """"%wslUser%"""" && echo -e """"\n[user]\ndefault=%wslUser%"""" >> """"/etc/wsl.conf"""" && " - -IF NOT "%wslUserPass%"==":None:" SET "wslUserPassArg=echo -e """"%wslUserPass%\n%wslUserPass%"""" | passwd """"%wslUser%"""" && " - -POWERSHELL -NoP -C "Write-Host -NoNewLine '%wslRootArg%%sudo%%wslUserArg%%wslUserPassArg%echo """"Blank""""'" > "%userTemp%\[amecs]-WSLLin%rndOut%.txt" 2>&1 - -ECHO "Username: |%wslUser%|" > "%userTemp%\[amecs]-WSLCom%rndOut%.txt" - -ECHO AME-INPUTSENT>> "%userTemp%\[amecs]-WSLCom%rndOut%.txt" - -CALL :AUX-WAITLOOP "-C:AME-DONE" "%userTemp%\[amecs]-WSLCom%rndOut%.txt" -PID "%altRunPID%" -TME "150" - IF %ERRORLEVEL% NEQ 0 ( - TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - CALL :AUX-RETURN "Distro account setup timed out." "HOME-WSL" -C -E - ) - -TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - -ECHO "%wslDistro%" | FINDSTR /b /c:""""SUSE-Linux-Enterprise" /c:""""SLES-" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 CALL :AUX-RETURN "Distro installed successfully" "HOME-WSL" -L "Use the SUSEConnect command to license this distro." -C - -CALL :AUX-RETURN "Distro installed successfully" -H -C -REM ----------------------------------------------------------- -REM | -REM | -REM | -REM ----------------------------------------------------------- -:ALTCHILD-WSL-DISTROINSTALL - -REM ::::::::::::::::::::::::::::C-WSL1-2A:::::::::::::::::::::::::::: -SET "rndOut=%~2" -TITLE AMECS-AltRun-%rndOut% -SET /A "count0=0" & SET /A "count1=0" - -CALL :AUX-WAITLOOP "-C:Distro: |" "%TEMP%\[amecs]-WSLCom%rndOut%.txt" - IF NOT ERRORLEVEL 1 ( - FOR /F "usebackq tokens=2 delims=|" %%A IN (`FINDSTR /c:"Distro: |" "%TEMP%\[amecs]-WSLCom%rndOut%.txt"`) DO ( - SET "wslDistro=%%A" - FOR /F "usebackq tokens=2 delims=|" %%B IN (`FINDSTR /c:"PID: |" "%TEMP%\[amecs]-WSLCom%rndOut%.txt"`) DO ( - SET "parentPID=%%B" - - POWERSHELL -NoP -C "[console]::OutputEncoding = [Text.UnicodeEncoding]::Unicode; WSL -l -q | FINDSTR /X /c:'%%A'">NUL 2>&1 && ECHO "Reg: True" >> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" || ECHO "Reg: False" >> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" - CALL :AUX-WAITLOOP "-C:Exe: " "%TEMP%\[amecs]-WSLCom%rndOut%.txt" -PID "%%B" -TME "86400" - IF NOT ERRORLEVEL 1 ( - FOR /F "usebackq tokens=2 delims=|" %%C IN (`FINDSTR /c:"Exe: |" "%TEMP%\[amecs]-WSLCom%rndOut%.txt"`) DO SET "wslExe=%%C" - ) ELSE ( - EXIT 1 - ) - ) - ) - ) ELSE ( - EXIT 1 - ) -REM ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: - -POWERSHELL -NoP -C "(Start-Process 'CMD' -ArgumentList '/K','POWERSHELL -NoP -C """"(Start-Process ''%wslExe:'=''''%'' -NoNewWindow -PassThru).Id | Out-File -LiteralPath ''%TEMP:'=''''%\[amecs]-DistroPID%rndOut%.txt'' -Encoding default""""' -WindowStyle Hidden -PassThru).Id" 1> "%TEMP%\[amecs]-DistroHostPID%rndOut%.txt" - -:ALTCHILD-WSL-DISTROPROGRESS - -TIMEOUT /T 2 /NOBREAK > NUL - -IF %count0% GEQ 15 ( - TASKKILL /F /T /PID "%distroPID%" /PID "%distroHostPID%" > NUL 2>&1 - ECHO AME-ERROR>> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" -) - -IF %count1% GTR 500 ( - TASKKILL /F /T /PID "%distroPID%" /PID "%distroHostPID%" > NUL 2>&1 - ECHO AME-ERROR>> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" -) - -FINDSTR "1 2 3 4 5 6 7 8 9 0" "%TEMP%\[amecs]-DistroHostPID%rndOut%.txt" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SET /A "count0=%count0%+1" - GOTO ALTCHILD-WSL-DISTROPROGRESS - ) ELSE ( - SET /P "distroHostPID=" < "%TEMP%\[amecs]-DistroHostPID%rndOut%.txt" - ) -FINDSTR "1 2 3 4 5 6 7 8 9 0" "%TEMP%\[amecs]-DistroPID%rndOut%.txt" > NUL 2>&1 - IF %ERRORLEVEL% NEQ 0 ( - SET /A "count0=%count0%+1" - GOTO ALTCHILD-WSL-DISTROPROGRESS - ) ELSE ( - SET /P "distroPID=" < "%TEMP%\[amecs]-DistroPID%rndOut%.txt" - ) - -POWERSHELL -NoP -C "[console]::OutputEncoding = [Text.UnicodeEncoding]::Unicode; WSL -l -q | FINDSTR /X /c:'%wslDistro%'" > NUL 2>&1 - IF %ERRORLEVEL% EQU 0 ( - TASKKILL /F /T /PID "%distroPID%" /PID "%distroHostPID%" > NUL 2>&1 - GOTO ALTCHILD-WSL-CONFIG - ) - -TASKLIST /FI "IMAGENAME eq cmd.exe" /FI "PID eq %distroHostPID%" 2>&1 | FINDSTR /i /c:"cmd.exe">NUL 2>&1 || SET /A "count1=%count1%+50" - -SET /A "count1=%count1%+1" -GOTO ALTCHILD-WSL-DISTROPROGRESS - -:ALTCHILD-WSL-CONFIG - -ECHO AME-INPUTREQ>> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" - CALL :AUX-WAITLOOP "-C:AME-INPUTSENT" "%TEMP%\[amecs]-WSLCom%rndOut%.txt" -PID "%parentPID%" -ALT "AME-USERCHECK" -TME "86400" - IF %ERRORLEVEL% GEQ 1 EXIT 0 - -FOR /F "usebackq tokens=2 delims=|" %%A IN (`FINDSTR /c:"Username: |" "%TEMP%\[amecs]-WSLCom%rndOut%.txt"`) DO SET "wslUser=%%A" - -WSL -d %wslDistro% < "%TEMP%\[amecs]-WSLLin%rndOut%.txt" > NUL 2>&1 -WSL -t %wslDistro% > NUL 2>&1 - - -ECHO AME-DONE>> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" & EXIT 0 -REM ----------------------------------------------------------- - - - -REM ----------------------------------------------------------- -:ALTPARENT-WSL-DISTROREMOVE - -CLS & ECHO. & ECHO __________________________________________________________ & ECHO. & ECHO ^| Central AME Script %ver% ^| & ECHO. - -ECHO. & ECHO Checking installed distros... -CALL :AUX-ALTSTART "WSLDistroRemove" "CMD /C 'START /min '' POWERSHELL -NoP -C 'Start-Process ''''|Script|'''' -ArgumentList ''''wslRemove'''',''''|rndOut|'''' -WindowStyle Hidden'" - IF %ERRORLEVEL% EQU 1 CALL :AUX-RETURN "Failed to create scheduled task. (1)" "HOME-WSL" -E -C - IF %ERRORLEVEL% EQU 2 CALL :AUX-RETURN "Failed to create scheduled task. (2)" "HOME-WSL" -E -C - -REM CALL :AUX-ALTSTART "WSLDistroRemove" "CMD /K '|Script| wslRemove |rndOut|'" - -CALL :AUX-WAITLOOP -WindowTitle "AMECS-AltRun-%rndOut%" -TME "30" - IF ERRORLEVEL 1 CALL :AUX-RETURN "Failed to launch alt process." "HOME-WSL" -C -E - - SET "altRunPID=%waitPIDOut%" - ECHO "Distro: |%wslDistro%|">> "%userTemp%\[amecs]-WSLCom%rndOut%.txt" - ECHO "PID: |%scriptPID%|">> "%userTemp%\[amecs]-WSLCom%rndOut%.txt" - - CALL :AUX-WAITLOOP "-C:Reg: " "%userTemp%\[amecs]-WSLCom%rndOut%.txt" -PID "%altRunPID%" - IF NOT ERRORLEVEL 1 ( - FINDSTR /c:"Reg: True" "%userTemp%\[amecs]-WSLCom%rndOut%.txt" > NUL && SET "distroReg=true" - FINDSTR /c:"Reg: False" "%userTemp%\[amecs]-WSLCom%rndOut%.txt" > NUL && SET "distroReg=false" - ) ELSE ( - TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - ) - -IF "%distroReg%"=="" TASKKILL /F /T /PID "%altRunPID%">NUL 2>&1 & CALL :AUX-RETURN "Failed to check registered distros." "HOME-WSL" -C -E - -DIR /B /A:d "%userLocalAppData%\AME-WSL" 2>&1 | FINDSTR /X /c:"%wslDistro%" > NUL 2>&1 && SET "distroRemFiles=true" - -IF NOT "%distroReg%"=="true" ( - TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - IF NOT "%distroRemFiles%"=="true" CALL :AUX-RETURN "Distro is not installed." "HOME-WSL" -C -E -) - -POWERSHELL -NoP -C "Write-Host """`n Are you sure you want to remove this distro? ^(Y/N^): """ -NoNewLine; [Console]::CursorVisible = $True; CHOICE /C YN /N /M '%BS%'; [Console]::CursorVisible = $False; EXIT $LastExitCode" - IF %ERRORLEVEL%==2 TASKKILL /F /T /PID "%altRunPID%">NUL 2>&1 & ENDLOCAL & GOTO HOME-MAINMENU - -ECHO. & ECHO Removing distro... - -IF "%distroReg%"=="true" ( - ECHO "Remove: |True|">> "%userTemp%\[amecs]-WSLCom%rndOut%.txt" - CALL :AUX-WAITLOOP "-C:AME-REMDONE" "%userTemp%\[amecs]-WSLCom%rndOut%.txt" -PID "%altRunPID%" - IF NOT ERRORLEVEL 1 ( - TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - ) ELSE ( - TASKKILL /F /T /PID "%altRunPID%" > NUL 2>&1 - CALL :AUX-RETURN "Failed to unregister distro." "HOME-WSL" -E - ) - -) -FOR /F "usebackq delims=" %%A IN (`DIR /B /A:d "%userLocalAppData%\AME-WSL" 2^>^&1 ^| FINDSTR /X /c:"%wslDistro%"`) DO ( - FOR /F "usebackq delims=" %%B IN (`DIR /S /B "%userLocalAppData%\AME-WSL\%%A\*.exe" 2^>^&1`) DO ( - FOR /F "usebackq delims=" %%C IN (`POWERSHELL -NoP -C "Get-Process | Where-Object {$_.Path -eq '%%~B'} | Select-Object -ExpandProperty Id" 2^>^&1`) DO ( - TASKKILL /F /T /PID "%%~C" > NUL 2>&1 - ) - ) - RMDIR /Q /S "%userLocalAppData%\AME-WSL\%%A" > NUL -) - -FOR /F "usebackq delims=" %%A IN (`DIR /B "%userLocalAppData%\AME-WSL" 2^>^&1`) DO SET "contentsEmpty=false" -IF NOT "%contentsEmpty%"=="false" RMDIR /Q /S "%userLocalAppData%\AME-WSL" > NUL 2>&1 - -TIMEOUT /T 1 /NOBREAK > NUL - -CALL :AUX-RETURN "Distro removed successfully" -H -C -REM ----------------------------------------------------------- -REM | -REM | -REM | -REM ----------------------------------------------------------- -:ALTCHILD-WSL-DISTROREMOVE - -SET "rndOut=%~2" -TITLE AMECS-AltRun-%rndOut% - -CALL :AUX-WAITLOOP "-C:Distro: |" "%TEMP%\[amecs]-WSLCom%rndOut%.txt" - IF NOT ERRORLEVEL 1 ( - FOR /F "usebackq tokens=2 delims=|" %%A IN (`FINDSTR /c:"Distro: " "%TEMP%\[amecs]-WSLCom%rndOut%.txt"`) DO ( - SET SET "wslDistro=%%A" - FOR /F "usebackq tokens=2 delims=|" %%B IN (`FINDSTR /c:"PID: " "%TEMP%\[amecs]-WSLCom%rndOut%.txt"`) DO ( - SET "parentPID=%%B" - POWERSHELL -NoP -C "[console]::OutputEncoding = [Text.UnicodeEncoding]::Unicode; WSL -l -q | FINDSTR /X /c:'%%A'">NUL 2>&1 && ECHO "Reg: True" >> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" || ECHO "Reg: False" >> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" - IF ERRORLEVEL 1 EXIT 0 - CALL :AUX-WAITLOOP "-C:Remove: |True|" "%TEMP%\[amecs]-WSLCom%rndOut%.txt" -PID "%%B" -TME "86400" - IF NOT ERRORLEVEL 1 ( - WSL --unregister %%A > NUL 2>&1 - IF NOT ERRORLEVEL 0 ( - ECHO AME-ERROR>> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" - ) ELSE ( - ECHO AME-REMDONE>> "%TEMP%\[amecs]-WSLCom%rndOut%.txt" - ) - ) ELSE ( - EXIT 0 - ) - ) - ) - ) ELSE ( - EXIT 0 - ) -REM ----------------------------------------------------------- - - - REM ------------------- - REM Encoded Executables - REM ------------------- - - -REM ----------------------------------------------------------- -REM Encoded AutoLogon executable modifed/forked from https://github.com/rzander/AutoLogon developed by Roger Zander - ------BEGIN CERTIFICATE----- -TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAgAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5v -dCBiZSBydW4gaW4gRE9TIG1vZGUuDQ0KJAAAAAAAAABQRQAATAEDADrD0GIAAAAA -AAAAAOAAAgELAQsAABQAAAAIAAAAAAAAnjIAAAAgAAAAQAAAAABAAAAgAAAAAgAA -BAAAAAAAAAAEAAAAAAAAAACAAAAAAgAAAAAAAAMAQIUAABAAABAAAAAAEAAAEAAA -AAAAABAAAAAAAAAAAAAAAEQyAABXAAAAAEAAANgEAAAAAAAAAAAAAAAAAAAAAAAA -AGAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAIAAACAAAAAAAAAAAAAAACCAAAEgAAAAAAAAAAAAAAC50ZXh0AAAA -pBIAAAAgAAAAFAAAAAIAAAAAAAAAAAAAAAAAACAAAGAucnNyYwAAANgEAAAAQAAA -AAYAAAAWAAAAAAAAAAAAAAAAAABAAABALnJlbG9jAAAMAAAAAGAAAAACAAAAHAAA -AAAAAAAAAAAAAAAAQAAAQgAAAAAAAAAAAAAAAAAAAACAMgAAAAAAAEgAAAACAAUA -iCQAALwNAAABAAAACAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAACYAAv4VAwAAAioAABMwBACmAQAAAQAAEQAWagp+BwAA -CgsWDAgoCAAACgsSA/4VAwAAAh8gEwR+BwAAChMFEgb+FQQAAAISBhZ9BAAABBIG -fgcAAAp9BQAABBIGFn0HAAAEEgZ+BwAACn0IAAAEEgZ+BwAACn0JAAAEEgMSBhEE -EgUoAgAABhMHEQcoBAAABm4KBhZq/gETCxELLSQAcgEAAHAGjA4AAAEoCQAACigK -AAAKAB0oCwAACgAAOO4AAAAAF40DAAACEwgRCBaPAwAAAv4VAwAAAhEIFo8DAAAC -AigMAAAKfQMAAAQRCBaPAwAAAgJvDQAAChha0X0BAAAEEQgWjwMAAAICbw0AAAoX -WBha0X0CAAAEF40DAAACEwkRCRaPAwAAAv4VAwAAAhEJFo8DAAACAygMAAAKfQMA -AAQRCRaPAwAAAgNvDQAAChha0X0BAAAEEQkWjwMAAAIDbw0AAAoXWBha0X0CAAAE -EQURCBEJKAMAAAYmBhZq/gETCxELLR8AcikAAHAGjA4AAAEoCQAACigKAAAKAB0o -CwAACgAAEQUoBQAABiYABygBAAAGJgYTCisAEQoqAAAbMAQALgIAAAIAABEAcw4A -AAoKAAITBRYTBisgEQURBpoLAAYHKA8AAApvEAAACm8RAAAKJgARBhdYEwYRBhEF -jmn+BBMHEQct0gZyYwAAcG8SAAAKFv4BEwcRBzqeAAAAAAB+EwAACgwIcm0AAHAX -bxQAAAoMCHLZAABwcvkAAHBvFQAACgAIcvsAAHAWbxYAAAoACHIZAQBwFm8WAAAK -AAhyNwEAcBZvFgAACgAIclUBAHAWbxYAAAoACHJrAQBwFm8WAAAKAHJrAQBwcvkA -AHAoBwAABiYA3iINAHKLAQBwCW8XAAAKKBgAAAooCgAACgAdKAsAAAoAAN4AAAAG -bxkAAAoY/gQTBxEHOigBAAAAAH4TAAAKDAhybQAAcBdvFAAACgwIctkAAHACFppv -FQAACgAIcpsBAHAoGgAACm8VAAAKAAhy+wAAcHK/AQBwbxUAAAoACHJrAQBwFm8W -AAAKAAZvGQAAChj+Ahb+ARMHEQctTQACGJoSBCgbAAAKFv4BEwcRBy02ABEEFv4C -Fv4BEwcRBy0XAAhyGQEAcBEEjBcAAAFvFQAACgAAKw8ACHIZAQBwFm8WAAAKAAAA -ACsPAAhyGQEAcBZvFgAACgAABnLDAQBwbxIAAAoW/gETBxEHLRMACHJVAQBwcr8B -AHBvFQAACgAAcmsBAHACF5ooBwAABiZy2wEAcCgKAAAKAADeIg0AcosBAHAJbxcA -AAooGAAACigKAAAKAB0oCwAACgAA3gAAACoAAEE0AAAAAAAAVgAAAHkAAADPAAAA -IgAAABYAAAEAAAAABgEAAAMBAAAJAgAAIgAAABYAAAEeAigcAAAKKkJTSkIBAAEA -AAAAAAwAAAB2NC4wLjMwMzE5AAAAAAUAbAAAAAwEAAAjfgAAeAQAAJQFAAAjU3Ry -aW5ncwAAAAAMCgAADAIAACNVUwAYDAAAEAAAACNHVUlEAAAAKAwAAJQBAAAjQmxv -YgAAAAAAAAACAAABVx8CFAkCAAAA+iUzABYAAAEAAAAXAAAABgAAABcAAAAJAAAA -DQAAAAEAAAAcAAAADQAAAAMAAAACAAAAAgAAAAUAAAABAAAAAQAAAAMAAAAAAAoA -AQAAAAAABgCEAH0ABgCLAH0ABgCVAH0ABgChAH0ABgAdA/4CBgBkA30ABgCaA3oD -BgC6A3oDBgDYA/4CBgABBP4CBgAXBP4CBgAiBH0ABgAuBP4CBgBDBH0ABgBJBH0A -BgBXBH0ABgBpBH0ABgCrBJgEBgDKBLUEBgAQBQAFBgAZBQAFBgBSBX0ABgCCBX0A -AAAAAAEAAAAAAAEAAQCAARAAFgAAAAUAAQABAAoBEAAoAAAACQABAAYACgEQADsA -AAAJAAQABwACAQAAUQAAABEACgAHAAAAEABiAGoABQAYAAcABgDvADEABgD2ADEA -BgAEATQABgDvADsABgATATQABgAhAT4ABgAsAUIABgA3ATQABgBKATQABgZjAUUA -VoBrAUgAVoCJAUgAVoCnAUgAVoDGAUgAVoDZAUgAVoDvAUgAVoAEAkgAVoAcAkgA -VoA8AkgAVoBaAkgAVoBxAkgAVoCFAkgAVoCZAkgAAAAAAIAAliCmAAoAAQAAAAAA -gACWIK4ADwACAAAAAACAAJYgvAAcAAYAAAAAAIAAliDQACcACQAAAAAAgACWIOYA -LAAKAFAgAAAAAOYBCwE3AAsAXCAAAAAAlgCtAsEACwAQIgAAAACRALcCxwANAIAk -AAAAAIYYvAI3AA4AAAABAMICAAABAMcCAAACANICAAADAOMCAgAEAPECAAABAPEC -AAACACoDAAADADIDAAABAD4DAAABAEUDAAABAFIDAAACAFoDAAABAF8DAwANACkA -vAI3ADEAvALNADkAvALSAEEAvAI3AEkAvALXAFEAvALcAGEAKQQ0AGkANgTiAHkA -UATnAIEAXwTtAIkAdQTyAGkAegT3AHkAjQT8AJEAvAI3AJkA1gQVAXkA6wQaAZEA -8wQgAZEA9wQlAaEAJQUqAakAMgUuAakAPQU1AakARgU7AbEAXAVBAXkAUARFAZEA -aAX8AIkAcgVLAbkAiAVPAQkAvAI3AAoALABMAAoAMABVAAoANABeAAoAOABnAAoA -PABwAAoAQAB5AAoARACCAAoASACLAAoATACUAAoAUACdAAoAVACmAAoAWACvAAoA -XAC4AC4AEwBlAS4AGwBrAS4AIwB0AQABVgHrA/QDAAEDAKYAAQAAAQUArgACAEAB -BwC8AAIAAAEJANAAAgAAAQsA5gACAASAAAAAAAAAAAAAAAAAAAAAAGIAAAAEAAAA -AAAAAAAAAAABAHQAAAAAAAMAAgAEAAIABQACAAAAAAAAPE1vZHVsZT4AUHJvZ3Jh -bS5leGUAU2FmZU5hdGl2ZU1ldGhvZHMATFNBX1VOSUNPREVfU1RSSU5HAExTQV9P -QkpFQ1RfQVRUUklCVVRFUwBMU0FfQWNjZXNzUG9saWN5AFByb2dyYW0AQXV0b0xv -Z29uAG1zY29ybGliAFN5c3RlbQBPYmplY3QAVmFsdWVUeXBlAElEaXNwb3NhYmxl -AEVudW0ARnJlZVNpZABMc2FPcGVuUG9saWN5AExzYVN0b3JlUHJpdmF0ZURhdGEA -THNhTnRTdGF0dXNUb1dpbkVycm9yAExzYUNsb3NlAExlbmd0aABNYXhpbXVtTGVu -Z3RoAEJ1ZmZlcgBEaXNwb3NlAFJvb3REaXJlY3RvcnkAT2JqZWN0TmFtZQBBdHRy -aWJ1dGVzAFNlY3VyaXR5RGVzY3JpcHRvcgBTZWN1cml0eVF1YWxpdHlPZlNlcnZp -Y2UAdmFsdWVfXwBQT0xJQ1lfVklFV19MT0NBTF9JTkZPUk1BVElPTgBQT0xJQ1lf -VklFV19BVURJVF9JTkZPUk1BVElPTgBQT0xJQ1lfR0VUX1BSSVZBVEVfSU5GT1JN -QVRJT04AUE9MSUNZX1RSVVNUX0FETUlOAFBPTElDWV9DUkVBVEVfQUNDT1VOVABQ -T0xJQ1lfQ1JFQVRFX1NFQ1JFVABQT0xJQ1lfQ1JFQVRFX1BSSVZJTEVHRQBQT0xJ -Q1lfU0VUX0RFRkFVTFRfUVVPVEFfTElNSVRTAFBPTElDWV9TRVRfQVVESVRfUkVR -VUlSRU1FTlRTAFBPTElDWV9BVURJVF9MT0dfQURNSU4AUE9MSUNZX1NFUlZFUl9B -RE1JTgBQT0xJQ1lfTE9PS1VQX05BTUVTAFBPTElDWV9OT1RJRklDQVRJT04AU3Rv -cmVEYXRhAE1haW4ALmN0b3IAcFNpZABTeXN0ZW1OYW1lAE9iamVjdEF0dHJpYnV0 -ZXMARGVzaXJlZEFjY2VzcwBQb2xpY3lIYW5kbGUAU3lzdGVtLlJ1bnRpbWUuSW50 -ZXJvcFNlcnZpY2VzAE91dEF0dHJpYnV0ZQBLZXlOYW1lAFByaXZhdGVEYXRhAHN0 -YXR1cwBPYmplY3RIYW5kbGUAa2V5TmFtZQBEYXRhAGFyZ3MAQ0xTQ29tcGxpYW50 -QXR0cmlidXRlAFN5c3RlbS5SdW50aW1lLkNvbXBpbGVyU2VydmljZXMAQ29tcGls -YXRpb25SZWxheGF0aW9uc0F0dHJpYnV0ZQBSdW50aW1lQ29tcGF0aWJpbGl0eUF0 -dHJpYnV0ZQBEbGxJbXBvcnRBdHRyaWJ1dGUAYWR2YXBpMzIAYWR2YXBpMzIuZGxs -AFN0cnVjdExheW91dEF0dHJpYnV0ZQBMYXlvdXRLaW5kAEludFB0cgBaZXJvAE1h -cnNoYWwAQWxsb2NIR2xvYmFsAEludDY0AFN0cmluZwBDb25jYXQAQ29uc29sZQBX -cml0ZUxpbmUARW52aXJvbm1lbnQARXhpdABTdHJpbmdUb0hHbG9iYWxVbmkAZ2V0 -X0xlbmd0aABTeXN0ZW0uQ29sbGVjdGlvbnMAQXJyYXlMaXN0AFN5c3RlbS5HbG9i -YWxpemF0aW9uAEN1bHR1cmVJbmZvAGdldF9JbnZhcmlhbnRDdWx0dXJlAFRvVXBw -ZXIAQWRkAENvbnRhaW5zAE1pY3Jvc29mdC5XaW4zMgBSZWdpc3RyeQBSZWdpc3Ry -eUtleQBMb2NhbE1hY2hpbmUAT3BlblN1YktleQBTZXRWYWx1ZQBEZWxldGVWYWx1 -ZQBFeGNlcHRpb24AZ2V0X01lc3NhZ2UAZ2V0X0NvdW50AGdldF9NYWNoaW5lTmFt -ZQBJbnQzMgBUcnlQYXJzZQAAAAAAJ08AcABlAG4AUABvAGwAaQBjAHkAIABmAGEA -aQBsAGUAZAA6ACAAADlMAHMAYQBTAHQAbwByAGUAUAByAGkAdgBhAHQAZQBEAGEA -dABhACAAZgBhAGkAbABlAGQAOgAgAAAJLwBEAEUATAAAa1MATwBGAFQAVwBBAFIA -RQBcAE0AaQBjAHIAbwBzAG8AZgB0AFwAVwBpAG4AZABvAHcAcwAgAE4AVABcAEMA -dQByAHIAZQBuAHQAVgBlAHIAcwBpAG8AbgBcAFcAaQBuAGwAbwBnAG8AbgAAH0QA -ZQBmAGEAdQBsAHQAVQBzAGUAcgBOAGEAbQBlAAABAB1BAHUAdABvAEEAZABtAGkA -bgBMAG8AZwBvAG4AAB1BAHUAdABvAEwAbwBnAG8AbgBDAG8AdQBuAHQAAB1GAG8A -cgBjAGUAQQB1AHQAbwBMAG8AZwBvAG4AABVEAGkAcwBhAGIAbABlAEMAQQBEAAAf -RABlAGYAYQB1AGwAdABQAGEAcwBzAHcAbwByAGQAAA9FAHIAcgBvAHIAOgAgAAAj -RABlAGYAYQB1AGwAdABEAG8AbQBhAGkAbgBOAGEAbQBlAAADMQAAFy8ARABJAFMA -QQBCAEwARQBDAEEARAAALUEAdQB0AG8AbABvAGcAbwBuACAAYQBjAHQAaQB2AGEA -dABlAGQALgAuAC4AAAAAAFaAIBFOwL1Hhay/5JRgKxwACLd6XFYZNOCJBAABGBgM -AAQJEBEMEBEQCBAYCgADCRgdEQwdEQwEAAEJCQQAAQkYAgYHAgYYAyAAAQIGCAMG -EQwCBgkCBgoDBhEUCAEAAAAAAAAACAIAAAAAAAAACAQAAAAAAAAACAgAAAAAAAAA -CBAAAAAAAAAACCAAAAAAAAAACEAAAAAAAAAACIAAAAAAAAAACAABAAAAAAAACAAC -AAAAAAAACAAEAAAAAAAACAAIAAAAAAAACAAQAAAAAAAABQACCg4OBQABAR0OBCAB -AQIEIAEBCAQgAQEOBSABAREtBAABGAgFAAIOHBwEAAEBDgQAAQEIBAABGA4DIAAI -FAcMChgIEQwIGBEQCR0RDB0RDAoCBAAAEk0FIAEOEk0EIAEIHAQgAQIcAwYSVQYg -AhJVDgIFIAIBDhwFIAIBDgIDIAAOBQACDg4OAwAADgYAAgIOEAgOBwgSSQ4SVRJZ -CB0OCAIFAQABAAAIAQAIAAAAAAAeAQABAFQCFldyYXBOb25FeGNlcHRpb25UaHJv -d3MBAGwyAAAAAAAAAAAAAI4yAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAMgAA -AAAAAAAAAAAAAAAAAAAAAAAAX0NvckV4ZU1haW4AbXNjb3JlZS5kbGwAAAAAAP8l -ACBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAQAAAAIAAAgBgAAAA4AACA -AAAAAAAAAAAAAAAAAAABAAEAAABQAACAAAAAAAAAAAAAAAAAAAABAAEAAABoAACA -AAAAAAAAAAAAAAAAAAABAAAAAACAAAAAAAAAAAAAAAAAAAAAAAABAAAAAACQAAAA -oEAAAEQCAAAAAAAAAAAAAOhCAADqAQAAAAAAAAAAAABEAjQAAABWAFMAXwBWAEUA -UgBTAEkATwBOAF8ASQBOAEYATwAAAAAAvQTv/gAAAQAAAAAAAAAAAAAAAAAAAAAA -PwAAAAAAAAAEAAAAAQAAAAAAAAAAAAAAAAAAAEQAAAABAFYAYQByAEYAaQBsAGUA -SQBuAGYAbwAAAAAAJAAEAAAAVAByAGEAbgBzAGwAYQB0AGkAbwBuAAAAAAAAALAE -pAEAAAEAUwB0AHIAaQBuAGcARgBpAGwAZQBJAG4AZgBvAAAAgAEAAAEAMAAwADAA -MAAwADQAYgAwAAAALAACAAEARgBpAGwAZQBEAGUAcwBjAHIAaQBwAHQAaQBvAG4A -AAAAACAAAAAwAAgAAQBGAGkAbABlAFYAZQByAHMAaQBvAG4AAAAAADAALgAwAC4A -MAAuADAAAAA4AAwAAQBJAG4AdABlAHIAbgBhAGwATgBhAG0AZQAAAFAAcgBvAGcA -cgBhAG0ALgBlAHgAZQAAACgAAgABAEwAZQBnAGEAbABDAG8AcAB5AHIAaQBnAGgA -dAAAACAAAABAAAwAAQBPAHIAaQBnAGkAbgBhAGwARgBpAGwAZQBuAGEAbQBlAAAA -UAByAG8AZwByAGEAbQAuAGUAeABlAAAANAAIAAEAUAByAG8AZAB1AGMAdABWAGUA -cgBzAGkAbwBuAAAAMAAuADAALgAwAC4AMAAAADgACAABAEEAcwBzAGUAbQBiAGwA -eQAgAFYAZQByAHMAaQBvAG4AAAAwAC4AMAAuADAALgAwAAAAAAAAAO+7vzw/eG1s -IHZlcnNpb249IjEuMCIgZW5jb2Rpbmc9IlVURi04IiBzdGFuZGFsb25lPSJ5ZXMi -Pz4NCjxhc3NlbWJseSB4bWxucz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTph -c20udjEiIG1hbmlmZXN0VmVyc2lvbj0iMS4wIj4NCiAgPGFzc2VtYmx5SWRlbnRp -dHkgdmVyc2lvbj0iMS4wLjAuMCIgbmFtZT0iTXlBcHBsaWNhdGlvbi5hcHAiLz4N -CiAgPHRydXN0SW5mbyB4bWxucz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTph -c20udjIiPg0KICAgIDxzZWN1cml0eT4NCiAgICAgIDxyZXF1ZXN0ZWRQcml2aWxl -Z2VzIHhtbG5zPSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOmFzbS52MyI+DQog -ICAgICAgIDxyZXF1ZXN0ZWRFeGVjdXRpb25MZXZlbCBsZXZlbD0iYXNJbnZva2Vy -IiB1aUFjY2Vzcz0iZmFsc2UiLz4NCiAgICAgIDwvcmVxdWVzdGVkUHJpdmlsZWdl -cz4NCiAgICA8L3NlY3VyaXR5Pg0KICA8L3RydXN0SW5mbz4NCjwvYXNzZW1ibHk+ -DQoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAwAAAMAAAAoDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA ------END CERTIFICATE----- -REM ----------------------------------------------------------- \ No newline at end of file diff --git a/src/Configuration/custom.yml b/src/Configuration/custom.yml new file mode 100644 index 0000000..da13af5 --- /dev/null +++ b/src/Configuration/custom.yml @@ -0,0 +1,14 @@ +--- +title: Custom +description: Custom AME configuration +privilege: Admin +actions: [] +features: +- features\base\regedits.yml +- features\base\dotnet.yml +- features\base\appx.yml +- features\base\services.yml +- features\base\components.yml +- features\base\files.yml +- features\base\config.yml +- features\base\software.yml \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/appx.yml b/src/Configuration/features/base/appx.yml similarity index 96% rename from src-21H2-22H2/Configuration/features/base/appx.yml rename to src/Configuration/features/base/appx.yml index 301f0d7..5901d38 100644 --- a/src-21H2-22H2/Configuration/features/base/appx.yml +++ b/src/Configuration/features/base/appx.yml @@ -3,6 +3,7 @@ title: APPX description: Removal of APPX packages privilege: TrustedInstaller actions: + - !writeStatus: {status: 'Removing APPX packages'} - !appx: {name: '*Microsoft.549981C3F5F10*', type: family} - !appx: {name: '*3DViewer*', type: family} - !appx: {name: '*AssignedAccessLockApp*', type: family} @@ -37,7 +38,7 @@ actions: - !appx: {name: '*WindowsSoundRecorder*', type: family} - !appx: {name: '*windowscommunicationsapps*', type: family} - !appx: {name: '*zune*', type: family} - - !appx: {name: '*WindowsCalculator*', type: family} +# - !appx: {name: '*WindowsCalculator*', type: family} - !appx: {name: '*WindowsMaps*', type: family} - !appx: {name: '*Sway*', type: family} - !appx: {name: '*CommsPhone*', type: family} diff --git a/src/Configuration/features/base/components.yml b/src/Configuration/features/base/components.yml new file mode 100644 index 0000000..ee7e72a --- /dev/null +++ b/src/Configuration/features/base/components.yml @@ -0,0 +1,397 @@ +title: Components +description: Remove certain windows components +privilege: TrustedInstaller +actions: + - !taskKill: {name: "explorer"} + # ---------- Windows Defender + - !writeStatus: {status: 'Removing Windows Defender'} + - !taskKill: {name: "NisSrv"} + - !taskKill: {name: "SecurityHealthHost"} + - !taskKill: {name: "SecurityHealthService"} + - !taskKill: {name: "SecurityHealthSystray"} + - !taskKill: {name: "SkypeBackgroundHost"} + - !taskKill: {name: "MsMpEng"} + - !taskKill: {name: "msiexec"} + - !file: {path: "%windir%\\System32\\smartscreen.exe"} + - !file: {path: "%windir%\\System32\\smartscreenps.dll"} + - !file: {path: "%windir%\\System32\\SecurityHealthSystray.exe"} + - !file: {path: "%windir%\\System32\\SecurityHealthService.exe"} + - !file: {path: "%windir%\\System32\\SecurityHealthAgent.dll"} + - !file: {path: "%windir%\\System32\\SecurityHealthHost.exe"} + - !file: {path: "%windir%\\System32\\SecurityHealthSSO.dll"} + - !file: {path: "%windir%\\System32\\SecurityHealthCore.dll"} + - !file: {path: "%windir%\\System32\\SecurityHealthProxyStub.dll"} + - !file: {path: "%windir%\\System32\\SecurityHealthUdk.dll"} + - !file: {path: "%ProgramW6432%\\Windows Defender", weight: 30} + - !file: {path: "%ProgramData%\\Microsoft\\Windows Defender", weight: 30} + - !file: {path: "%ProgramFiles(x86)%\\Windows Defender", weight: 30} + - !file: {path: "%windir%\\System32\\drivers\\WdNisDrv.sys"} + - !file: {path: "%ProgramW6432%\\Windows Defender Advanced Threat Protection"} + - !file: {path: "%SystemDrive%\\ProgramData\\Microsoft\\Windows Defender Advanced Threat Protection"} + - !file: + path: "%windir%\\System32\\drivers\\cldflt.sys" + - !scheduledTask: + path: "\\Microsoft\\Windows\\Windows Defender\\Windows Defender Cache Maintenance" + operation: delete + - !scheduledTask: + path: "\\Microsoft\\Windows\\Windows Defender\\Windows Defender Cleanup" + operation: delete + - !scheduledTask: + path: "\\Microsoft\\Windows\\Windows Defender\\Windows Defender Scheduled Scan" + operation: delete + - !scheduledTask: + path: "\\Microsoft\\Windows\\Windows Defender\\Windows Defender Verification" + operation: delete + + # ---------- Microsoft Edge + - !writeStatus: {status: 'Removing Microsoft Edge'} + - !taskKill: {name: "MicrosoftEdgeUpdate"} + - !taskKill: {name: "msedge"} + - !taskKill: {name: "MicrosoftEdge*"} + - !taskKill: {name: "setup", pathContains: "\\Edge"} + - !taskKill: {name: "msedgewebview2"} + - !service: {name: "edgeupdate", operation: delete} + - !service: {name: "edgeupdatem", operation: delete} + - !service: {name: "MicrosoftEdgeElevationService", operation: delete} + + - !file: {path: '%SystemDrive%\Users\Public\Desktop\Microsoft Edge.lnk'} + - !file: {path: '%ProgramData%\Microsoft\Windows\Start Menu\Programs\Microsoft Edge.lnk'} + + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'TaskbarMigratedBrowserPin', operation: delete} + - !registryKey: {path: 'HKLM\SOFTWARE\WOW6432Node\Microsoft\EdgeUpdate'} + - !registryKey: {path: 'HKCR\CLSID\{1FCBE96C-1697-43AF-9140-2897C7C69767}'} + - !registryKey: {path: 'HKCR\AppID\{1FCBE96C-1697-43AF-9140-2897C7C69767}'} + - !registryKey: {path: 'HKCR\Interface\{C9C2B807-7731-4F34-81B7-44FF7779522B}'} + - !registryKey: {path: 'HKCR\TypeLib\{C9C2B807-7731-4F34-81B7-44FF7779522B}'} + - !registryKey: {path: 'HKCR\MSEdgeHTM'} + - !registryKey: {path: 'HKCR\MSEdgePDF'} + - !registryKey: {path: 'HKCR\MSEdgeMHT'} + - !registryKey: {path: 'HKCR\AppID\{628ACE20-B77A-456F-A88D-547DB6CEEDD5}'} + - !registryKey: {path: 'HKLM\SOFTWARE\Clients\StartMenuInternet\Microsoft Edge'} + - !registryValue: {path: 'HKLM\SOFTWARE\RegisteredApplications', value: 'Microsoft Edge', operation: delete} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\msedge.exe'} + - !registryValue: {path: 'HKCR\.htm\OpenWithProgIds', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCR\.html\OpenWithProgIds', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCR\.shtml\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCR\.svg\OpenWithProgIds', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCR\.xht\OpenWithProgIds', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCR\.xhtml\OpenWithProgIds', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCR\.webp\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCR\.xml\OpenWithProgIds', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts', value: 'MSEdgeHTM_microsoft-edge', operation: delete} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\EnterpriseMode', value: 'MSEdgePath', operation: delete} + - !registryKey: {path: 'HKCR\AppID\ie_to_edge_bho.dll'} + - !registryKey: {path: 'HKCR\AppID\{31575964-95F7-414B-85E4-0E9A93699E13}'} + - !registryKey: {path: 'HKCR\CLSID\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}'} + - !registryKey: {path: 'HKCR\WOW6432Node\CLSID\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}'} + - !registryKey: {path: 'HKCR\ie_to_edge_bho.IEToEdgeBHO'} + - !registryKey: {path: 'HKCR\ie_to_edge_bho.IEToEdgeBHO.1'} + + # Internet Explorer + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Internet Explorer\Main\EnterpriseMode', value: 'MSEdgePath', operation: delete} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Internet Explorer\Low Rights\ElevationPolicy\{c9abcf16-8dc2-4a95-bae3-24fd98f2ed29}'} + - !registryKey: {path: 'HKLM\SOFTWARE\WOW6432Node\Microsoft\Internet Explorer\Low Rights\ElevationPolicy\{c9abcf16-8dc2-4a95-bae3-24fd98f2ed29}'} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Internet Explorer\ProtocolExecute\microsoft-edge'} + - !registryKey: {path: 'HKLM\SOFTWARE\WOW6432Node\Microsoft\Internet Explorer\ProtocolExecute\microsoft-edge'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Internet Explorer\EdgeIntegration\AdapterLocations\C:\Program Files (x86)\Microsoft\Edge', value: 'Application', operation: delete} + + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}'} + - !registryKey: {path: 'HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}'} + - !registryKey: {path: 'HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Ext\PreApproved\{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Ext\CLSID', value: '{1FD49718-1D00-4B19-AF5F-070AF6D5D54C}', operation: delete} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Edge'} + - !registryKey: {path: 'HKLM\SOFTWARE\WOW6432Node\Microsoft\Edge'} + - !registryKey: {path: 'HKCR\CLSID\{3A84F9C2-6164-485C-A7D9-4B27F8AC009E}'} + - !registryKey: {path: 'HKCR\WOW6432Node\CLSID\{3A84F9C2-6164-485C-A7D9-4B27F8AC009E}'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\PreviewHandlers', value: '{3A84F9C2-6164-485C-A7D9-4B27F8AC009E}', operation: delete} + - !registryValue: {path: 'HKCR\.pdf\ShellEx\{8895b1c6-b41f-4c1c-a562-0d564250836f}', value: '(Default)', operation: delete} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}'} + - !registryKey: {path: 'HKU\S-1-5-21-3476428458-2503407758-626446112-1002\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}'} + - !registryKey: {path: 'HKLM\SYSTEM\CurrentControlSet\Services\EventLog\Application\Edge'} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\MediaPlayer\ShimInclusionList\msedge.exe'} + - !registryKey: {path: 'HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Edge Update'} + + # WebView + - !registryKey: {path: 'HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft EdgeWebView'} + + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run', value: 'Microsoft Edge Update', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\RegisteredApplications', value: 'Microsoft Edge', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\Classes\.htm\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\Classes\.html\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\Classes\.shtml\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\Classes\.svg\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\Classes\.xht\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\Classes\.xhtml\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\Classes\.webp\OpenWithProgids', value: 'MSEdgeHTM', operation: delete} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts', value: 'MSEdgeHTM_microsoft-edge', operation: delete} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Active Setup\Installed Components\{9459C573-B17A-45AE-9F64-1857B5D58CEE}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Edge'} + + # WebView + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\EdgeWebView'} + + - !registryValue: + path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Taskband' + value: 'FavoritesResolve' + data: "320300004C0000000114020000000000C0000000000000468300800020000000549E39A5246AD8012B113CA5246AD801A8B6C6DADDACD501970100000000000001000000000000000000000000000000A0013A001F80C827341F105C1042AA032EE45287D668260001002600EFBE1200000056F21270246AD8010F37A185246AD8012B113CA5246AD80114005600310000000000B154E29B11005461736B42617200400009000400EFBEB154C69BB154E29B2E000000F4940100000001000000000000000000000000000000D5BA89005400610073006B00420061007200000016000E01320097010000874F0749200046494C4545587E312E4C4E4B00007C0009000400EFBEB154E29BB154E29B2E00000097900100000002000000000000000000520000000000589C4400460069006C00650020004500780070006C006F007200650072002E006C006E006B00000040007300680065006C006C00330032002E0064006C006C002C002D003200320030003600370000001C00220000001E00EFBE02005500730065007200500069006E006E006500640000001C00120000002B00EFBE2B113CA5246AD8011C00420000001D00EFBE02004D006900630072006F0073006F00660074002E00570069006E0064006F00770073002E004500780070006C006F0072006500720000001C0000009B0000001C000000010000001C0000002D000000000000009A0000001100000003000000E4A63B761000000000433A5C55736572735C757365725C417070446174615C526F616D696E675C4D6963726F736F66745C496E7465726E6574204578706C6F7265725C517569636B204C61756E63685C557365722050696E6E65645C5461736B4261725C46696C65204578706C6F7265722E6C6E6B000060000000030000A058000000000000006465736B746F702D62356E36683339006E1A1EE27BFFA94ABB0361D86F25337E500764DB17D6EC11A598000C2907D6A06E1A1EE27BFFA94ABB0361D86F25337E500764DB17D6EC11A598000C2907D6A045000000090000A03900000031535053B1166D44AD8D7048A748402EA43D788C1D000000680000000048000000CE2181FCD4BF31408F25FF009E4345CA000000000000000000000000" + type: REG_BINARY + operation: add + - !registryValue: + path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Taskband' + value: 'Favorites' + data: "00A40100003A001F80C827341F105C1042AA032EE45287D668260001002600EFBE1200000056F21270246AD8010F37A185246AD8012B113CA5246AD80114005600310000000000B154E29B11005461736B42617200400009000400EFBEB154C69BB154E29B2E000000F4940100000001000000000000000000000000000000D5BA89005400610073006B00420061007200000016001201320097010000874F0749200046494C4545587E312E4C4E4B00007C0009000400EFBEB154E29BB154E29B2E00000097900100000002000000000000000000520000000000589C4400460069006C00650020004500780070006C006F007200650072002E006C006E006B00000040007300680065006C006C00330032002E0064006C006C002C002D003200320030003600370000001C00120000002B00EFBE2B113CA5246AD8011C00420000001D00EFBE02004D006900630072006F0073006F00660074002E00570069006E0064006F00770073002E004500780070006C006F0072006500720000001C00260000001E00EFBE0200530079007300740065006D00500069006E006E006500640000001C000000FF" + type: REG_BINARY + operation: add + + - !run: {exeDir: true, exe: "EDGE.bat", weight: 20} + + - !file: + path: "%ProgramFiles(x86)%\\Internet Explorer" + - !file: + path: "%ProgramW6432%\\Internet Explorer" + - !run: {exeDir: true, exe: "EDGEX.bat", weight: 20} + + - !file: {path: "%ProgramFiles(x86)%\\Microsoft\\Edge", weight: 10} + - !file: {path: "%ProgramFiles(x86)%\\Microsoft\\EdgeUpdate", weight: 10} + - !file: {path: "%ProgramFiles(x86)%\\Microsoft\\EdgeCore", weight: 10} + + # WebView + - !file: {path: "%ProgramFiles(x86)%\\Microsoft\\EdgeWebView", weight: 10} + + # ---------- OneDrive + - !writeStatus: {status: 'Removing OneDrive'} + - !taskKill: {name: "OneDriveStandaloneUpdater"} + - !taskKill: {name: "OneDriveSetup"} + - !taskKill: {name: "OneDrive*"} + - !service: {name: "OneSyncSvc*", operation: delete} + + - !run: {exeDir: true, exe: "ONED.bat", weight: 20} + + - !registryKey: {path: 'HKCR\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run', value: 'OneDrive', operation: delete} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\OneDrive'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\.fluid'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\.note'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\.whiteboard'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\.loop'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\TypeLib\{F904F88C-E60D-4327-9FA2-865AD075B400}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{A87958FF-B414-7748-9183-DBF183A25905}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{A87958FF-B414-7748-9183-DBF183A25905}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\NucleusNativeMessaging.NucleusNativeMessaging.1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\NucleusNativeMessaging.NucleusNativeMessaging'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{917E8742-AA3B-7318-FA12-10485FB322A2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{917E8742-AA3B-7318-FA12-10485FB322A2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\NucleusToastActivator.NucleusToastActivator.1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\NucleusToastActivator.NucleusToastActivator'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{47E6DCAF-41F8-441C-BD0E-A50D5FE6C4D1}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{47E6DCAF-41F8-441C-BD0E-A50D5FE6C4D1}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\mssharepointclient'} + - !registryKey: {path: 'HKCU\SOFTWARE\Google\Chrome\NativeMessagingHosts\com.microsoft.onedrive.nucleus.auth.provider'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\AppID\{EEABD3A3-784D-4334-AAFC-BB13234F17CF}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\AppID\OneDrive.EXE'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{6bb93b4e-44d8-40e2-bd97-42dbcf18a40f}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{AB807329-7324-431B-8B36-DBD581F56E0B}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{1EDD003E-C446-43C5-8BA0-3778CC4792CC}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{1EDD003E-C446-43C5-8BA0-3778CC4792CC}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\TypeLib\{4B1C80DA-FA45-468F-B42B-46496BDBE0C5}\1.0'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\SyncEngineStorageProviderHandlerProxy.SyncEngineStorageProviderHandlerProxy'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{A3CA1CF4-5F3E-4AC0-91B9-0D3716E1EAC3}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\TypeLib\{638805C3-4BA3-4AC8-8AAC-71A0BA2BC284}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\FileSyncClient.FileSyncClient.1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\FileSyncClient.FileSyncClient'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{7B37E4E2-C62F-4914-9620-8FB5062718CC}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\FileSyncClient.AutoPlayHandler.1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\FileSyncClient.AutoPlayHandler'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{5999E1EE-711E-48D2-9884-851A709F543D}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\BannerNotificationHandler.BannerNotificationHandler'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{2e7c0a19-0438-41e9-81e3-3ad3d64f55ba}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{F0AF7C30-EAE4-4644-961D-54E6E28708D6}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{F0AF7C30-EAE4-4644-961D-54E6E28708D6}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{9D613F8A-B30E-4938-8490-CB5677701EBF}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{9D613F8A-B30E-4938-8490-CB5677701EBF}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{79A2A54C-3916-41FD-9FAB-F26ED0BBA755}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{79A2A54C-3916-41FD-9FAB-F26ED0BBA755}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{0299ECA9-80B6-43C8-A79A-FB1C5F19E7D8}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{0299ECA9-80B6-43C8-A79A-FB1C5F19E7D8}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{0f872661-c863-47a4-863f-c065c182858a}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{0f872661-c863-47a4-863f-c065c182858a}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{da82e55e-fa2f-45b3-aec3-e7294106ef52}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{da82e55e-fa2f-45b3-aec3-e7294106ef52}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{e9de26a1-51b2-47b4-b1bf-c87059cc02a7}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{e9de26a1-51b2-47b4-b1bf-c87059cc02a7}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{2692D1F2-2C7C-4AE0-8E73-8F37736C912D}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{2692D1F2-2C7C-4AE0-8E73-8F37736C912D}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{5D5DD08F-A10E-4FEF-BCA7-E73E666FC66C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{5D5DD08F-A10E-4FEF-BCA7-E73E666FC66C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{EE15BBBB-9E60-4C52-ABCB-7540FF3DF6B3}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{EE15BBBB-9E60-4C52-ABCB-7540FF3DF6B3}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{8D3F8F15-1DE1-4662-BF93-762EABE988B2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{8D3F8F15-1DE1-4662-BF93-762EABE988B2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{2B865677-AC3A-43BD-B9E7-BF6FCD3F0596}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{2B865677-AC3A-43BD-B9E7-BF6FCD3F0596}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{50487D09-FFA9-45E1-8DF5-D457F646CD83}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{50487D09-FFA9-45E1-8DF5-D457F646CD83}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{D32F7B3A-DEC8-4F44-AF28-E9B7FEB62118}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{D32F7B3A-DEC8-4F44-AF28-E9B7FEB62118}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{ACDB5DB0-C9D5-461C-BAAA-5DCE0B980E40}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{ACDB5DB0-C9D5-461C-BAAA-5DCE0B980E40}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\TypeLib\{909A6CCD-6810-46C4-89DF-05BE7EB61E6C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{10C9242E-D604-49B5-99E4-BF87945EF86C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{10C9242E-D604-49B5-99E4-BF87945EF86C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{F062BA81-ADFE-4A92-886A-23FD851D6406}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{F062BA81-ADFE-4A92-886A-23FD851D6406}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{3A4E62AE-45D9-41D5-85F5-A45B77AB44E5}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{3A4E62AE-45D9-41D5-85F5-A45B77AB44E5}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{390AF5A7-1390-4255-9BC9-935BFCFA5D57}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{390AF5A7-1390-4255-9BC9-935BFCFA5D57}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{1196AE48-D92B-4BC7-85DE-664EC3F761F1}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{1196AE48-D92B-4BC7-85DE-664EC3F761F1}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{D0ED5C72-6197-4AAD-9B16-53FE461DD85C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{D0ED5C72-6197-4AAD-9B16-53FE461DD85C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{AF60000F-661D-472A-9588-F062F6DB7A0E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{AF60000F-661D-472A-9588-F062F6DB7A0E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{5d65dd0d-81bf-4ff4-aeea-6effb445cb3f}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{5d65dd0d-81bf-4ff4-aeea-6effb445cb3f}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{b5c25645-7426-433f-8a5f-42b7ff27a7b2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{b5c25645-7426-433f-8a5f-42b7ff27a7b2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{f0440f4e-4884-4a8F-8a45-ba89c00f96f2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{f0440f4e-4884-4a8F-8a45-ba89c00f96f2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{0776ae27-5ab9-4e18-9063-1836da63117a}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{0776ae27-5ab9-4e18-9063-1836da63117a}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{1b7aed4f-fcaf-4da4-8795-c03e635d8edc}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{1b7aed4f-fcaf-4da4-8795-c03e635d8edc}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{0d4e4444-cb20-4c2b-b8b2-94e5656ecae8}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{0d4e4444-cb20-4c2b-b8b2-94e5656ecae8}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{d8c80ebb-099c-4208-afa3-fbc4d11f8a3c}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{d8c80ebb-099c-4208-afa3-fbc4d11f8a3c}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{C2FE84F5-E036-4A07-950C-9BFD3EAB983A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{C2FE84F5-E036-4A07-950C-9BFD3EAB983A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{8B9F14F4-9559-4A3F-B7D0-312E992B6D98}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{8B9F14F4-9559-4A3F-B7D0-312E992B6D98}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{22A68885-0FD9-42F6-9DED-4FB174DC7344}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{22A68885-0FD9-42F6-9DED-4FB174DC7344}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{a7126d4c-f492-4eb9-8a2a-f673dbdd3334}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{a7126d4c-f492-4eb9-8a2a-f673dbdd3334}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{c1439245-96b4-47fc-b391-679386c5d40f}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{c1439245-96b4-47fc-b391-679386c5d40f}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{944903E8-B03F-43A0-8341-872200D2DA9C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{944903E8-B03F-43A0-8341-872200D2DA9C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{B54E7079-90C9-4C62-A6B8-B2834C33A04A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{B54E7079-90C9-4C62-A6B8-B2834C33A04A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{1B71F23B-E61F-45C9-83BA-235D55F50CF9}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{1B71F23B-E61F-45C9-83BA-235D55F50CF9}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{049FED7E-C3EA-4B66-9D92-10E8085D60FB}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{049FED7E-C3EA-4B66-9D92-10E8085D60FB}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{2387C6BD-9A36-41A2-88ED-FF731E529384}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{2387C6BD-9A36-41A2-88ED-FF731E529384}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{EA23A664-A558-4548-A8FE-A6B94D37C3CF}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{EA23A664-A558-4548-A8FE-A6B94D37C3CF}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{2F12C599-7AA5-407A-B898-09E6E4ED2D1E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{2F12C599-7AA5-407A-B898-09E6E4ED2D1E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{2EB31403-EBE0-41EA-AE91-A1953104EA55}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{2EB31403-EBE0-41EA-AE91-A1953104EA55}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{AEEBAD4E-3E0A-415B-9B94-19C499CD7B6A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{AEEBAD4E-3E0A-415B-9B94-19C499CD7B6A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{fac14b75-7862-4ceb-be41-f53945a61c17}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{fac14b75-7862-4ceb-be41-f53945a61c17}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\TypeLib\{BAE13F6C-0E2A-4DEB-AA46-B8F55319347C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{466F31F7-9892-477E-B189-FA5C59DE3603}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{466F31F7-9892-477E-B189-FA5C59DE3603}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{869BDA08-7ACF-42B8-91AE-4D8D597C0B33}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{869BDA08-7ACF-42B8-91AE-4D8D597C0B33}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{679EC955-75AA-4FB2-A7ED-8C0152ECF409}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{679EC955-75AA-4FB2-A7ED-8C0152ECF409}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{BBACC218-34EA-4666-9D7A-C78F2274A524}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{BBACC218-34EA-4666-9D7A-C78F2274A524}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{5AB7172C-9C11-405C-8DD5-AF20F3606282}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{5AB7172C-9C11-405C-8DD5-AF20F3606282}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{A78ED123-AB77-406B-9962-2A5D9D2F7F30}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{A78ED123-AB77-406B-9962-2A5D9D2F7F30}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{A0396A93-DC06-4AEF-BEE9-95FFCCAEF20E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{A0396A93-DC06-4AEF-BEE9-95FFCCAEF20E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{F241C880-6982-4CE5-8CF7-7085BA96DA5A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{F241C880-6982-4CE5-8CF7-7085BA96DA5A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{9AA2F32D-362A-42D9-9328-24A483E2CCC3}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{9AA2F32D-362A-42D9-9328-24A483E2CCC3}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{C5FF006E-2AE9-408C-B85B-2DFDD5449D9C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{C5FF006E-2AE9-408C-B85B-2DFDD5449D9C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{7AFDFDDB-F914-11E4-8377-6C3BE50D980C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{7AFDFDDB-F914-11E4-8377-6C3BE50D980C}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{82CA8DE3-01AD-4CEA-9D75-BE4C51810A9E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{82CA8DE3-01AD-4CEA-9D75-BE4C51810A9E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{1BF42E4C-4AF4-4CFD-A1A0-CF2960B8F63E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{1BF42E4C-4AF4-4CFD-A1A0-CF2960B8F63E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{20894375-46AE-46E2-BAFD-CB38975CDCE6}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{20894375-46AE-46E2-BAFD-CB38975CDCE6}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{0827D883-485C-4D62-BA2C-A332DBF3D4B0}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{0827D883-485C-4D62-BA2C-A332DBF3D4B0}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{CB3D0F55-BC2C-4C1A-85ED-23ED75B5106B}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{CB3D0F55-BC2C-4C1A-85ED-23ED75B5106B}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\*\shellex\ContextMenuHandlers\ FileSyncEx'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Directory\Background\shellex\ContextMenuHandlers\ FileSyncEx'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Directory\shellex\ContextMenuHandlers\ FileSyncEx'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\IE.AssocFile.URL\shellex\ContextMenuHandlers\ FileSyncEx'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\lnkfile\shellex\ContextMenuHandlers\ FileSyncEx'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{021E4F06-9DCC-49AD-88CF-ECC2DA314C8A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{021E4F06-9DCC-49AD-88CF-ECC2DA314C8A}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{31508CC7-9BC7-494B-9D0F-7B1C7F144182}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{31508CC7-9BC7-494B-9D0F-7B1C7F144182}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\TypeLib\{C9F3F6BB-3172-4CD8-9EB7-37C9BE601C87}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\SyncEngineFileInfoProvider.SyncEngineFileInfoProvider.1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\SyncEngineFileInfoProvider.SyncEngineFileInfoProvider'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{71DCE5D6-4B57-496B-AC21-CD5B54EB93FD}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{71DCE5D6-4B57-496B-AC21-CD5B54EB93FD}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\OOBERequestHandler.OOBERequestHandler.1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\OOBERequestHandler.OOBERequestHandler'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{94269C4E-071A-4116-90E6-52E557067E4E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{94269C4E-071A-4116-90E6-52E557067E4E}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\TypeLib\{082D3FEC-D0D0-4DF6-A988-053FECE7B884}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{389510b7-9e58-40d7-98bf-60b911cb0ea9}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{389510b7-9e58-40d7-98bf-60b911cb0ea9}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{4410DC33-BC7C-496B-AA84-4AEA3EEE75F7}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{4410DC33-BC7C-496B-AA84-4AEA3EEE75F7}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{B05D37A9-03A2-45CF-8850-F660DF0CBF07}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{B05D37A9-03A2-45CF-8850-F660DF0CBF07}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{53de12aa-df96-413d-a25e-c75b6528abf2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{53de12aa-df96-413d-a25e-c75b6528abf2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{A926714B-7BFC-4D08-A035-80021395FFA8}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{A926714B-7BFC-4D08-A035-80021395FFA8}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{6A821279-AB49-48F8-9A27-F6C59B4FF024}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{6A821279-AB49-48F8-9A27-F6C59B4FF024}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{A91EFACB-8B83-4B84-B797-1C8CF3AB3DCB}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{A91EFACB-8B83-4B84-B797-1C8CF3AB3DCB}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\Interface\{C47B67D4-BA96-44BC-AB9E-1CAC8EEA9E93}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\Interface\{C47B67D4-BA96-44BC-AB9E-1CAC8EEA9E93}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{4410DC33-BC7C-496B-AA84-4AEA3EEE75F7}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{4410DC33-BC7C-496B-AA84-4AEA3EEE75F7}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\CLSID\{9489FEB2-1925-4D01-B788-6D912C70F7F2}'} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\WOW6432Node\CLSID\{9489FEB2-1925-4D01-B788-6D912C70F7F2}'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION', value: 'OneDrive.exe', operation: delete} + - !registryKey: {path: 'HKCU\SOFTWARE\Classes\odopen'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\SkyDrive'} + - !registryKey: {path: 'HKCU\SOFTWARE\SyncEngines\Providers\OneDrive'} + - !registryKey: {path: "HKCU\\SOFTWARE\\Classes\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}"} + - !registryKey: {path: "HKCU\\SOFTWARE\\Classes\\WOW6432Node\\CLSID\\{018D5C66-4533-4307-9B53-224DE2ED1FE6}"} + + - !file: {path: "%windir%\\System32\\OneDriveSetup.exe"} + - !file: {path: "%windir%\\SysWOW64\\OneDriveSetup.exe"} + - !file: {path: "%windir%\\SysWOW64\\OneDriveSettingSyncProvider.dll"} + - !file: {path: "%SystemDrive%\\OneDriveTemp"} + - !file: {path: "%ProgramData%\\Microsoft OneDrive"} + + # ---------- Update Health Tools + - !writeStatus: {status: 'Removing Update Health'} + + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\UpdateHealthTools'} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\rempl'} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\CloudManagedUpdate'} + + - !run: {exeDir: true, exe: "UPDHEALTH.bat", weight: 20} + + - !file: {path: "%ProgramW6432%\\Microsoft Update Health Tools"} + + # ---------- PC Health Check + - !writeStatus: {status: 'Removing PC Health Check'} + + - !file: + path: "%ProgramW6432%\\PCHealthCheck" \ No newline at end of file diff --git a/src/Configuration/features/base/config.yml b/src/Configuration/features/base/config.yml new file mode 100644 index 0000000..4b3ecb4 --- /dev/null +++ b/src/Configuration/features/base/config.yml @@ -0,0 +1,40 @@ +title: Configuration +privilege: TrustedInstaller +actions: + - !writeStatus: {status: 'Configuring permissions'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'ConsentPromptBehaviorAdmin', type: REG_DWORD, data: '5'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'ConsentPromptBehaviorUser', type: REG_DWORD, data: '3'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'EnableInstallerDetection', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'EnableLUA', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'EnableVirtualization', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'PromptOnSecureDesktop', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'ValidateAdminCodeSignatures', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'FilterAdministratorToken', type: REG_DWORD, data: '0'} + + - !run: + exeDir: true + exe: "ADMIN.bat" + weight: 10 + + - !writeStatus: {status: 'Implementing SFC mitigation'} + - !run: + exeDir: true + exe: "SFCDEPLOY.bat" + weight: 5 + + - !writeStatus: {status: 'Configuring start menu'} + - !run: + exeDir: true + exe: "STARTMENU.bat" + weight: 15 + + - !writeStatus: {status: 'Setting wallpapers'} + - !run: + exeDir: true + exe: "WALLPAPER.bat" + weight: 20 + + - !writeStatus: {status: 'Modifying login screen'} + - !run: + exeDir: true + exe: "LOGIN.bat" \ No newline at end of file diff --git a/src/Configuration/features/base/dotnet.yml b/src/Configuration/features/base/dotnet.yml new file mode 100644 index 0000000..9376627 --- /dev/null +++ b/src/Configuration/features/base/dotnet.yml @@ -0,0 +1,19 @@ +--- +title: Dotnet +privilege: TrustedInstaller +actions: + - !writeStatus: {status: 'Installing Chocolatey'} + # Install Chocolatey + - !powerShell: + command: 'Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString(''https://community.chocolatey.org/install.ps1''))' + weight: 30 + - !writeStatus: {status: 'Installing .NET 3.5'} + # Install .NET Framework 3.5 +# - !cmd: +# command: '"%ProgramData%\chocolatey\bin\choco.exe" install -y --force --allow-empty-checksums dotnet3.5' +# weight: 250 + + - !run: + exeDir: true + exe: "CONVERT.bat" + weight: 10 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/files.yml b/src/Configuration/features/base/files.yml similarity index 90% rename from src-21H2-22H2/Configuration/features/base/files.yml rename to src/Configuration/features/base/files.yml index 838860f..5f66a7b 100644 --- a/src-21H2-22H2/Configuration/features/base/files.yml +++ b/src/Configuration/features/base/files.yml @@ -1,7 +1,8 @@ title: Files -description: delete files +description: Deletes files privilege: TrustedInstaller actions: + - !writeStatus: {status: 'Removing files'} - !taskKill: name: "explorer" - !taskKill: @@ -51,59 +52,21 @@ actions: - !scheduledTask: path: "\\Microsoft\\Windows\\UpdateOrchestrator\\USO_UxBroker" operation: delete - - !scheduledTask: - path: "\\Microsoft\\Windows\\Windows Defender\\Windows Defender Cache Maintenance" - operation: delete - - !scheduledTask: - path: "\\Microsoft\\Windows\\Windows Defender\\Windows Defender Cleanup" - operation: delete - - !scheduledTask: - path: "\\Microsoft\\Windows\\Windows Defender\\Windows Defender Scheduled Scan" - operation: delete - - !scheduledTask: - path: "\\Microsoft\\Windows\\Windows Defender\\Windows Defender Verification" - operation: delete - !scheduledTask: path: "\\Microsoft\\Windows\\WindowsUpdate\\Scheduled Start" operation: delete - - !taskKill: - name: "NisSrv" - - !taskKill: - name: "SecurityHealthHost" - - !taskKill: - name: "SecurityHealthService" - - !taskKill: - name: "SecurityHealthSystray" - !taskKill: name: "SkypeBackgroundHost" - !taskKill: name: "OneDrive" - - !taskKill: - name: "MsMpEng" - !taskKill: name: "msiexec" - - !file: - path: "%windir%\\System32\\smartscreen.exe" - - !file: - path: "%windir%\\System32\\SecurityHealthSystray.exe" - - !file: - path: "%windir%\\System32\\SecurityHealthService.exe" - - !file: - path: "%windir%\\System32\\SecurityHealthAgent.dll" - - !file: - path: "%windir%\\System32\\SecurityHealthHost.exe" - - !file: - path: "%windir%\\System32\\SecurityHealthSSO.dll" - - !file: - path: "%windir%\\System32\\smartscreenps.dll" - !file: path: "%windir%\\System32\\wlidsvc.dll" - !file: path: "%windir%\\System32\\WpcDesktopMonSvc.dll" - !file: path: "%windir%\\System32\\flightsettings.dll" - - !file: - path: "%windir%\\System32\\drivers\\cldflt.sys" - !file: path: "%windir%\\System32\\WebThreatDefSvc" - !file: @@ -130,63 +93,12 @@ actions: path: "%ProgramFiles(x86)%\\Windows Mail" - !file: path: "%ProgramW6432%\\Windows Mail" - - !file: - path: "%windir%\\System32\\SecurityHealthSystray.exe" - - !file: - path: "%windir%\\System32\\SecurityHealthService.exe" - - !file: - path: "%windir%\\System32\\SecurityHealthHost.exe" - - !file: - path: "%windir%\\System32\\SecurityHealthAgent.dll" - - !file: - path: "%windir%\\System32\\SecurityHealthCore.dll" - - !file: - path: "%windir%\\System32\\SecurityHealthProxyStub.dll" - - !file: - path: "%windir%\\System32\\SecurityHealthUdk.dll" - !file: path: "%windir%\\System32\\wscsvc.dll" - - !file: - path: "%ProgramW6432%\\Windows Defender" - weight: 10 - - !file: - path: "%ProgramData%\\Microsoft\\Windows Defender" - weight: 10 - - !file: - path: "%ProgramFiles(x86)%\\Windows Defender" - weight: 10 - - !file: - path: "%windir%\\System32\\drivers\\WdNisDrv.sys" - - !file: - path: "%ProgramData%\\Microsoft OneDrive" - - !file: - path: "%ProgramW6432%\\Microsoft Update Health Tools" - - !file: - path: "%ProgramFiles(x86)%\\Internet Explorer" - - !file: - path: "%ProgramW6432%\\Internet Explorer" - !file: path: "%windir%\\diagnostics\\system\\WindowsUpdate" - !file: path: "%windir%\\diagnostics\\system\\Apps" - - !file: - path: "%windir%\\SystemApps\\Microsoft.XboxIdentityProvider*" - - !file: - path: "%windir%\\SystemApps\\Microsoft.XboxGameCallableUI*" - - !file: - path: "%windir%\\SystemApps\\Microsoft.Windows.Cortana*" - - !file: - path: "%windir%\\SystemApps\\Microsoft.MicrosoftEdge*" - - !file: - path: "%windir%\\SystemApps\\*ContentDeliveryManager*" - - !file: - path: "%windir%\\SystemApps\\*CloudExperienceHost*" - - !file: - path: "%ProgramW6432%\\PCHealthCheck" - - !file: - path: "%ProgramW6432%\\Windows Defender Advanced Threat Protection" - - !file: - path: "%SystemDrive%\\ProgramData\\Microsoft\\Windows Defender Advanced Threat Protection" - !file: path: "%windir%\\System32\\MoNotificationUx.exe" - !file: @@ -273,14 +185,6 @@ actions: path: "%windir%\\SysWOW64\\WindowsPowerShell\\v1.0\\Modules\\Provisioning\\provautologger_add.reg" - !file: path: "%windir%\\SysWOW64\\WindowsPowerShell\\v1.0\\Modules\\Provisioning\\provautologger_del.reg" - - !file: - path: "%windir%\\System32\\OneDriveSetup.exe" - - !file: - path: "%windir%\\SysWOW64\\OneDriveSetup.exe" - - !file: - path: "%windir%\\SysWOW64\\OneDriveSettingSyncProvider.dll" - - !file: - path: "%SystemDrive%\\OneDriveTemp" - !file: path: "%windir%\\System32\\IESettingSync.exe" - !file: @@ -763,5 +667,4 @@ actions: path: "%windir%\\System32\\wuaueng.dll" - !file: path: "%windir%\\System32\\MRT.exe" - - !file: - path: "%windir%\\System32\\calc.exe" \ No newline at end of file + - !run: {exe: "explorer.exe", wait: false} \ No newline at end of file diff --git a/src/Configuration/features/base/regedits.yml b/src/Configuration/features/base/regedits.yml new file mode 100644 index 0000000..477fa0d --- /dev/null +++ b/src/Configuration/features/base/regedits.yml @@ -0,0 +1,347 @@ +--- +title: Registry Edits +description: Base AME Registry Edits +privilege: TrustedInstaller +actions: + - !writeStatus: {status: 'Modifying registry'} + - !run: + exeDir: true + exe: "REGI.bat" + weight: 30 + + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection', value: 'AllowTelemetry', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Policies\DataCollection', value: 'AllowTelemetry', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SYSTEM\CurrentControlSet\Control\WMI\AutoLogger\AutoLogger-Diagtrack-Listener', value: 'Start', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SYSTEM\CurrentControlSet\Control\WMI\AutoLogger\SQMLogger', value: 'Start', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\DeliveryOptimization\Config', value: 'DownloadMode', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\SettingSync', value: 'DisableSettingSync', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\SettingSync', value: 'DisableSettingSyncUserOverride', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo', value: 'DisabledByGroupPolicy', type: REG_DWORD, data: '1'} + + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\EnhancedStorageDevices', value: 'TCGSecurityActivationDisabled', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\OneDrive', value: 'DisableFileSyncNGSC', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\safer\codeidentifiers', value: 'authenticodeenabled', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Error Reporting', value: 'DontSendAdditionalData', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting', value: 'value', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots', value: 'value', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows NT\CurrentVersion\Software Protection Platform', value: 'NoGenTicket', type: REG_DWORD, data: '1'} + + # Remove SecurityHealth from startup + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "SecurityHealth', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run" /v "SecurityHealth', operation: add} + + # Turns off Windows blocking installation of files downloaded from the internet + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Attachments', value: 'SaveZoneInformation', type: REG_DWORD, data: '1'} + + # Disables SmartScreen + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer', value: 'SmartScreenEnabled', type: REG_SZ, data: 'Off'} + + # Remove Metadata Tracking + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Device Metadata', operation: add} + + # New Control Panel cleanup - List of commands: https://winaero.com/ms-settings-commands-in-windows-10/ + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer', value: 'SettingsPageVisibility', type: REG_SZ, data: 'showonly:display;nightlight;sound;notifications;quiethours;powersleep;batterysaver;tabletmode;multitasking;clipboard;remote-desktop;about;bluetooth;connecteddevices;printers;mousetouchpad;devices-touchpad;typing;pen;autoplay;usb;network-status;network-cellular;network-wifi;network-wificalling;network-wifisettings;network-ethernet;network-dialup;network-vpn;network-airplanemode;network-mobilehotspot;datausage;network-proxy;personalization-background;personalization-start;fonts;personalization-colors;colors;lockscreen;themes;taskbar;defaultapps;videoplayback;startupapps;dateandtime;regionformatting;gaming;gamemode;easeofaccess-display;easeofaccess-colorfilter;easeofaccess-audio;easeofaccess-easeofaccess-narrator;easeofaccess-magnifier;easeofaccess-highcontrast;easeofaccess-closedcaptioning;easeofaccess-speechrecognition;easeofaccess-eyecontrol;easeofaccess-keyboard;easeofaccess-mouse'} + + # Decrease shutdown time + - !registryValue: {path: 'HKLM\SYSTEM\CurrentControlSet\Control', value: 'WaitToKillServiceTimeout', type: REG_SZ, data: '2000'} + - !registryValue: {path: 'HKLM\SYSTEM\CurrentControlSet\Control', value: 'HungAppTimeout', type: REG_SZ, data: '2000'} + - !registryValue: {path: 'HKLM\SYSTEM\CurrentControlSet\Control', value: 'AutoEndTasks', type: REG_SZ, data: '1'} + + # Clean up the This PC Icon Selection + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{088e3905-0323-4b02-9826-5d99428e115f}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{1CF1260C-4DD0-4ebb-811F-33C572699FDE}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{24ad3ad4-a569-4530-98e1-ab02f9417aa8}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{374DE290-123F-4565-9164-39C4925E467B}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{3ADD1653-EB32-4cb0-BBD7-DFA0ABB5ACCA}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{3dfdf296-dbec-4fb4-81d1-6a3438bcf4de}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{A0953C92-50DC-43bf-BE83-3742FED03C9C}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{A8CDFF1C-4878-43be-B5FD-F8091C1C60D0}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{d3162b92-9365-467a-956b-92703aca08af}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{f86fa3ab-70d2-4fc7-9c99-fcbf05467f3a}', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\NameSpace\{0DB7E03F-FC29-4DC6-9020-FF41B59E513A}', operation: add} + + # Disable Windows Error Reporting + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting', value: 'Disabled', type: REG_DWORD, data: '1'} + + # Enables full drive indexing (Enhanced Search) + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows Search\Gather\Windows\SystemIndex', value: 'EnableFindMyFiles', type: REG_DWORD, data: '1'} + + # Search + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'DisableWebSearch', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'ConnectedSearchUseWeb', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'AllowIndexingEncryptedStoresOrItems', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'AllowSearchToUseLocation', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'AlwaysUseAutoLangDetection', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'AllowCortana', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'DisableWebSearch', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'ConnectedSearchUseWeb', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'ConnectedSearchUseWebOverMeteredConnections', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Search', value: 'AllowCloudSearch', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Speech_OneCore\Preferences', value: 'VoiceActivationDefaultOn', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Speech_OneCore\Preferences', value: 'VoiceActivationEnableAboveLockscreen', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Speech_OneCore\Preferences', value: 'ModelDownloadAllowed', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE', value: 'DisableVoice', type: REG_DWORD, data: '1'} + + # Firewall rules to prevent the startmenu from talking + - !registryValue: {path: 'HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules', value: 'Block Search SearchApp.exe', type: REG_SZ, data: 'v2.30|Action=Block|Active=TRUE|Dir=Out|RA42=IntErnet|RA62=IntErnet|App=C:\Windows\SystemApps\Microsoft.Windows.Search_cw5n1h2txyewy\SearchApp.exe|Name=Block Search SearchUI.exe|Desc=Block Cortana Outbound UDP/TCP Traffic|'} + # - !registryValue: {path: 'HKLM\SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\FirewallRules', value: 'Block Search Package', type: REG_SZ, data: 'v2.30|Action=Block|Active=TRUE|Dir=Out|RA42=IntErnet|RA62=IntErnet|Name=Block Search Package|Desc=Block Search Outbound UDP/TCP Traffic|AppPkgId=S-1-15-2-536077884-713174666-1066051701-3219990555-339840825-1966734348-1611281757|Platform=2:6:2|Platform2=GTEQ|'} + + # Disable Timeline + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\System', value: 'EnableActivityFeed', type: REG_DWORD, data: '0'} + + # Setup Windows Explorer + - !registryKey: {path: 'HKEY_CLASSES_ROOT\CABFolder\CLSID', operation: add} + - !registryKey: {path: 'HKEY_CLASSES_ROOT\SystemFileAssociations\.cab\CLSID', operation: add} + - !registryKey: {path: 'HKEY_CLASSES_ROOT\CompressedFolder\CLSID', operation: add} + - !registryKey: {path: 'HKEY_CLASSES_ROOT\SystemFileAssociations\.zip\CLSID', operation: add} + + # Taskbar + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ImmersiveShell', value: 'UseActionCenterExperience', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer', value: 'HideSCAHealth', type: REG_DWORD, data: '1'} + + # Remove the Open with Paint 3D from the explorer context menu + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.bmp\Shell\3D Edit', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.jpeg\Shell\3D Edit', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.jpe\Shell\3D Edit', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.jpg\Shell\3D Edit', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.jpg\Shell\3D Edit', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.png\Shell\3D Edit', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.gif\Shell\3D Edit', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.tif\Shell\3D Edit', operation: add} + - !registryKey: {path: 'HKLM\SOFTWARE\Classes\SystemFileAssociations\.tiff\Shell\3D Edit', operation: add} + + + # Remove OneDrive from the Explorer Side Panel + - !registryKey: {path: 'HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}', operation: add} + - !registryKey: {path: 'HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}', operation: add} + + # Disable ActiveProbing/NCSI + # - !registryValue: {path: 'HKLM\SYSTEM\CurrentControlSet\Services\NlaSvc\Parameters\Internet', value: 'EnableActiveProbing', type: REG_DWORD, data: '0'} + + # Set Time reference to UTC + - !registryValue: {path: 'HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation', value: 'RealTimeIsUniversal', type: REG_DWORD, data: '1'} + + # Disable Users On Login Screen + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'dontdisplaylastusername', type: REG_DWORD, data: '1'} + + # Disable The Lock Screen + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Personalization', value: 'NoLockScreen', type: REG_DWORD, data: '1'} + + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\DataCollection', value: 'AllowTelemetry', type: REG_DWORD, data: '0'} + + # Prevent NVCP not found message after installing NVIDIA drivers + - !registryKey: {path: 'HKLM\System\CurrentControlSet\Services\nvlddmkm', operation: add} + - !registryKey: {path: 'HKLM\System\CurrentControlSet\Services\nvlddmkm\Global', operation: add} + - !registryKey: {path: 'HKLM\System\CurrentControlSet\Services\nvlddmkm\Global\NVTweak', operation: add} + - !registryValue: {path: 'HKLM\System\CurrentControlSet\Services\nvlddmkm\Global\NVTweak', value: 'DisableStoreNvCplNotifications', type: REG_DWORD, data: '1'} + + # Improve new user login experience + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\OOBE', value: 'DisablePrivacyExperience', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', value: 'EnableFirstLogonAnimation', type: REG_DWORD, data: '0'} + + # Remove Windows Contacts showing up in default apps in W11 + - !registryKey: {path: 'HKCR\certificate_wab_auto_file', operation: add} + - !registryKey: {path: 'HKCR\wab_auto_file', operation: add} + - !registryKey: {path: 'HKCR\contact_wab_auto_file', operation: add} + - !registryKey: {path: 'HKCR\group_wab_auto_file', operation: add} + - !registryKey: {path: 'HKCR\vcard_wab_auto_file', operation: add} + - !registryKey: {path: 'HKCR\WAB.AssocProtocol.LDAP', operation: add} + + - !registryKey: {path: 'HKCR\TIFImage.Document', operation: add} + - !registryKey: {path: 'HKCR\PhotoViewer.FileAssoc.Tiff', operation: add} + + # Make Ti explorer nicer + - !registryValue: {path: 'HKU\S-1-5-18\SOFTWARE\Microsoft\Windows\CurrentVersion\Search', value: 'SearchboxTaskbarMode', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKU\S-1-5-18\SOFTWARE\Policies\Microsoft\Windows\Explorer', value: 'DisableNotificationCenter', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKU\S-1-5-18\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'ShowCortanaButton', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKU\S-1-5-18\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'ShowTaskViewButton', type: REG_DWORD, data: '0'} + + # Disable News and Interests + - !registryValue: {path: 'HKLM\SOFTWARE\Microsoft\PolicyManager\default\NewsAndInterests', value: 'AllowNewsAndInterests', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Dsh', value: 'AllowNewsAndInterests', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKLM\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds', value: 'EnableFeeds', type: REG_DWORD, data: '0'} + + + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\AdvertisingInfo', value: 'Enabled', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\AppHost', value: 'EnableWebContentEvaluation', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\Control Panel\International\User Profile', value: 'HttpAcceptLanguageOptOut', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\GameDVR', value: 'AppCaptureEnabled', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\System\GameConfigStore', value: 'GameDVR_Enabled', type: REG_DWORD, data: '0'} + + # Autorun + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer', value: 'NoDriveTypeAutoRun', type: REG_DWORD, data: '181'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers', value: 'DisableAutoplay', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer', value: 'NoAutorun', type: REG_DWORD, data: '1'} + + # Adobe Security Improvements + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\JSPrefs', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\JSPrefs', value: 'bEnableJS', type: REG_DWORD, data: '0'} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\Originals', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\Originals', value: 'bAllowOpenFile', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\Originals', value: 'bSecureOpenFile', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\Privileged', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\Privileged', value: 'bProtectedMode', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\TrustManager', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\TrustManager', value: 'iProtectedView', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\TrustManager', value: 'bEnhancedSecurityInBrowser', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\DC\TrustManager', value: 'bEnhancedSecurityStandalone', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\JSPrefs', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\JSPrefs', value: 'bEnableJS', type: REG_DWORD, data: '0'} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\Originals', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\Originals', value: 'bAllowOpenFile', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\Originals', value: 'bSecureOpenFile', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\Privileged', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\Privileged', value: 'bProtectedMode', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\TrustManager', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\TrustManager', value: 'iProtectedView', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\TrustManager', value: 'bEnhancedSecurityInBrowser', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Adobe\Acrobat Reader\XI\TrustManager', value: 'bEnhancedSecurityStandalone', type: REG_DWORD, data: '1'} + + # Office Security Improvements + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Excel', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Excel\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Excel\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Excel\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Excel\Security', value: 'WorkbookLinkWarnings', type: REG_DWORD, data: '2'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\PowerPoint', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\PowerPoint\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\PowerPoint\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\PowerPoint\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Word', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Word\Options', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Word\Options\vpref', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Word\Options\vpref', value: 'fNoCalclinksOnopen_90_1', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Word\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Word\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\12.0\Word\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Excel', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Excel\Options', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Excel\Options', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Excel\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Excel\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Excel\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Excel\Security', value: 'WorkbookLinkWarnings', type: REG_DWORD, data: '2'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\PowerPoint', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\PowerPoint\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\PowerPoint\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\PowerPoint\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word\Options', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word\Options', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word\Options\WordMail', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word\Options\WordMail', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\14.0\Word\Security', value: 'AllowDDE', type: REG_DWORD, data: '0'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Excel', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Excel\Options', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Excel\Options', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Excel\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Excel\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Excel\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Excel\Security', value: 'WorkbookLinkWarnings', type: REG_DWORD, data: '2'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\PowerPoint', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\PowerPoint\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\PowerPoint\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\PowerPoint\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word\Options', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word\Options', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word\Options\WordMail', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word\Options\WordMail', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\15.0\Word\Security', value: 'AllowDDE', type: REG_DWORD, data: '0'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Excel', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Excel\Options', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Excel\Options', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Excel\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Excel\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Excel\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Excel\Security', value: 'WorkbookLinkWarnings', type: REG_DWORD, data: '2'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\PowerPoint', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\PowerPoint\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\PowerPoint\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\PowerPoint\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word\Options', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word\Options', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word\Options\WordMail', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word\Options\WordMail', value: 'DontUpdateLinks', type: REG_DWORD, data: '1'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word\Security', value: 'PackagerPrompt', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word\Security', value: 'VBAWarnings', type: REG_DWORD, data: '4'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\16.0\Word\Security', value: 'AllowDDE', type: REG_DWORD, data: '0'} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\Common', operation: add} + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Office\Common\Security', operation: add} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Office\Common\Security', value: 'DisableAllActiveX', type: REG_DWORD, data: '1'} + + # Turns off Windows blocking installation of files downloaded from the internet + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Attachments', value: 'SaveZoneInformation', type: REG_DWORD, data: '1'} + + # Disables SmartScreen + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\AppHost', value: 'ContentEvaluation', type: REG_DWORD, data: '0'} + + # Decrease shutdown time + - !registryValue: {path: 'HKCU\Control Panel\Desktop', value: 'WaitToKillAppTimeOut', type: REG_SZ, data: '2000'} + + # Disable Storage Sense + - !registryKey: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\StorageSense', operation: add} + + # Search + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Search', value: 'SearchboxTaskbarMode', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Search', value: 'BingSearchEnabled', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Search', value: 'CortanaConsent', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Search', value: 'CortanaInAmbientMode', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Search', value: 'HistoryViewEnabled', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Search', value: 'HasAboveLockTips', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Search', value: 'AllowSearchToUseLocation', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\SearchSettings', value: 'SafeSearchMode', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Policies\Microsoft\Windows\Explorer', value: 'DisableSearchBoxSuggestions', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\InputPersonalization', value: 'RestrictImplicitTextCollection', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\InputPersonalization', value: 'RestrictImplicitInkCollection', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore', value: 'AcceptedPrivacyPolicy', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\InputPersonalization\TrainedDataStore', value: 'HarvestContacts', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Personalization\Settings', value: 'AcceptedPrivacyPolicy', type: REG_DWORD, data: '0'} + + # Setup Windows Explorer + # Removes the shake to minimze all other windows gesture + # - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'DisallowShaking', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'NavPaneShowAllFolders', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'LaunchTo', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'HideFileExt', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'Hidden', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'TaskbarGlomLevel', type: REG_DWORD, data: '2'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'TaskbarDa', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'TaskbarAl', type: REG_DWORD, data: '0'} + + # Taskbar +# - !registryValue: {path: 'HKCU\SOFTWARE\Policies\Microsoft\Windows\Explorer', value: 'DisableNotificationCenter', type: REG_DWORD, data: '1'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'ShowCortanaButton', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'ShowTaskViewButton', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer', value: 'EnableAutoTray', type: REG_DWORD, data: '0'} + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer', value: 'HideSCAMeetNow', type: REG_DWORD, data: '1'} + # W11 Chat item + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'TaskbarMn', type: REG_DWORD, data: '0'} + + # Disable Security and Maintenance notifications + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Notifications\Settings\Windows.SystemToast.SecurityAndMaintenance', value: 'Enabled', type: REG_DWORD, data: '0'} + # Disable configue backup notifications + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Notifications\Settings\Windows.SystemToast.BackupReminder', value: 'Enabled', type: REG_DWORD, data: '0'} + # Disable "Let's Finish Setting Up Your Device" OOBE screen + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager', value: 'SubscribedContent-310093Enabled', type: REG_DWORD, data: '0'} + + # Disable item checkboxes + - !registryValue: {path: 'HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced', value: 'AutoCheckSelect', type: REG_DWORD, data: '0'} \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/base/services.yml b/src/Configuration/features/base/services.yml similarity index 96% rename from src-21H2-22H2/Configuration/features/base/services.yml rename to src/Configuration/features/base/services.yml index bdccaf2..4c360fe 100644 --- a/src-21H2-22H2/Configuration/features/base/services.yml +++ b/src/Configuration/features/base/services.yml @@ -1,7 +1,7 @@ -title: services -description: services +title: Services privilege: TrustedInstaller actions: + - !writeStatus: {status: 'Configuring services'} - !registryKey: path: "HKLM\\System\\CurrentControlSet\\Services\\WdNisDrv" - !registryKey: @@ -54,6 +54,7 @@ actions: - !service: name: "webthreatdefsvc" operation: delete + deleteUsingRegistry: true - !service: name: "UevAgentService" operation: delete diff --git a/src/Configuration/features/base/software.yml b/src/Configuration/features/base/software.yml new file mode 100644 index 0000000..90c0781 --- /dev/null +++ b/src/Configuration/features/base/software.yml @@ -0,0 +1,125 @@ +--- +title: Software +description: Installs software +privilege: TrustedInstaller +actions: + - !writeStatus: {status: 'Loading start menu'} + # Load Open-Shell menu + - !powerShell: + command: '(New-Object -ComObject wscript.shell).SendKeys(''{ESCAPE}'')' + - !cmd: + command: 'timeout /t 2' + - !powerShell: + command: '(New-Object -ComObject wscript.shell).SendKeys(''{ESCAPE}'')' + + - !writeStatus: {status: 'Installing Open-Shell'} + - !run: + exeDir: true + exe: "SLNT.bat" + weight: 50 + + - !writeStatus: {status: 'Configuring user interface'} + - !run: + exeDir: true + exe: "UI.bat" + weight: 40 + - !run: + exeDir: true + exe: "ep_setup-22621.1413.54.5.exe" + weight: 70 + + - !cmd: + command: 'reg query "HKLM\SOFTWARE\Clients\StartMenuInternet" /k /f "Firefox-" > "%TEMP%\Firefox-Reg-Output.txt"' + + - !writeStatus: {status: 'Installing Firefox'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums firefox' + weight: 150 + + - !writeStatus: {status: 'Installing Thunderbird'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums thunderbird' + weight: 100 + + - !writeStatus: {status: 'Installing VLC'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums vlc' + weight: 70 + - !writeStatus: {status: 'Installing 7zip'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums 7zip' + weight: 50 + - !writeStatus: {status: 'Installing jpegview'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums jpegview' + weight: 50 + - !writeStatus: {status: 'Installing vcredist'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums vcredist-all' + weight: 200 + + - !writeStatus: {status: 'Installing DirectX 9'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums directx' + weight: 150 + - !writeStatus: {status: 'Installing OnlyOffice'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums onlyoffice' + weight: 150 + - !writeStatus: {status: 'Installing Cascadia Mono font'} + - !run: + path: '%ProgramData%\chocolatey\bin' + exe: 'choco.exe' + args: 'install -y --force --allow-empty-checksums cascadiamono' + weight: 30 + + - !writeStatus: {status: 'Loading open-shell menu'} + # Load Open-Shell menu + - !powerShell: + command: '(New-Object -ComObject wscript.shell).SendKeys(''{ESCAPE}'')' + - !cmd: + command: 'timeout /t 1' + weight: 10 + - !powerShell: + command: '(New-Object -ComObject wscript.shell).SendKeys(''{ESCAPE}'')' + + - !writeStatus: {status: 'Configuring Firefox'} + - !run: + exeDir: true + exe: "FIREFOXCONF.bat" + weight: 20 + + - !run: + exeDir: true + exe: "SHRT.bat" + weight: 70 + + - !writeStatus: {status: 'Setting file associations'} + - !run: + exeDir: true + exe: "FILEASSOC.bat" + weight: 50 + + + - !writeStatus: {status: 'Installing Git'} + - !run: + exeDir: true + exe: "PowerShell" + args: '-NoP -ExecutionPolicy Bypass -File scoop.ps1' + weight: 120 \ No newline at end of file diff --git a/src-21H2-22H2/Configuration/features/languages/lang.yml b/src/Configuration/features/languages/lang.yml similarity index 100% rename from src-21H2-22H2/Configuration/features/languages/lang.yml rename to src/Configuration/features/languages/lang.yml diff --git a/src-21H2-22H2/Configuration/langs.txt b/src/Configuration/langs.txt similarity index 100% rename from src-21H2-22H2/Configuration/langs.txt rename to src/Configuration/langs.txt diff --git a/src/Executables/ADMIN.bat b/src/Executables/ADMIN.bat new file mode 100644 index 0000000..d482f4b --- /dev/null +++ b/src/Executables/ADMIN.bat @@ -0,0 +1,13 @@ +net user Administrator /active:yes +net user Administrator malte +@echo OFF +for /f "usebackq delims=" %%A in (`net localgroup administrators ^| findstr /V /X /I /R /c:"Alias name[ ].*" /c:"Comment[ ].*" /c:"Members" /c:"-*" /c:"The command completed.*" /c:"Administrator"`) do ( + echo net localgroup administrators "%%A" /delete + net localgroup administrators "%%A" /delete +) +@echo ON + +::schtasks /create /tn "AME Admin Log-off" /tr "CMD /C 'SCHTASKS /run /tn 'AME Admin Log-off Msg' & Logoff'" /ru "Administrator" /sc ONLOGON /it /rl HIGHEST /f > NUL +::PowerShell -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName 'AME Admin Log-off Msg' -Settings $TaskSet" > NUL +::schtasks /create /tn "AME Admin Log-off Msg" /tr "PowerShell -NoP -C 'While($lim -lt 20){WMIC computersystem get username|findstr /c:'\Administrator ';if(!$?){Break};$lim++;Sleep 1};'''Logging in as the Administrator user is not supported on AME.`nPlease login using a different account.'''|Msg *'" /sc MONTHLY /f /rl HIGHEST /ru "SYSTEM" > NUL +::PowerShell -NoP -C "$TaskSet = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; Set-ScheduledTask -TaskName 'AME Admin Log-off Msg' -Settings $TaskSet; $serv = New-Object -ComObject Schedule.Service; $serv.Connect($env:COMPUTERNAME); $folder = $serv.GetFolder('\'); $task = $folder.GetTask('AME Admin Log-off Msg'); $item = $task.Definition; $item.Triggers.Remove(1); $folder.RegisterTaskDefinition($task.Name, $item, 4, $null, $null, $null)" > NUL \ No newline at end of file diff --git a/src-SharedExecutables/AME-Firefox-Injection/3647222921wleabcEoxlt-eengsairo.sqlite b/src/Executables/AME-Firefox-Injection/3647222921wleabcEoxlt-eengsairo.sqlite similarity index 100% rename from src-SharedExecutables/AME-Firefox-Injection/3647222921wleabcEoxlt-eengsairo.sqlite rename to src/Executables/AME-Firefox-Injection/3647222921wleabcEoxlt-eengsairo.sqlite diff --git a/src-SharedExecutables/AME-Firefox-Injection/extension-preferences.json b/src/Executables/AME-Firefox-Injection/extension-preferences.json similarity index 100% rename from src-SharedExecutables/AME-Firefox-Injection/extension-preferences.json rename to src/Executables/AME-Firefox-Injection/extension-preferences.json diff --git a/src-SharedExecutables/AME-Firefox-Injection/extension-settings.json b/src/Executables/AME-Firefox-Injection/extension-settings.json similarity index 100% rename from src-SharedExecutables/AME-Firefox-Injection/extension-settings.json rename to src/Executables/AME-Firefox-Injection/extension-settings.json diff --git a/src-SharedExecutables/AME-Firefox-Injection/extensions.json b/src/Executables/AME-Firefox-Injection/extensions.json similarity index 100% rename from src-SharedExecutables/AME-Firefox-Injection/extensions.json rename to src/Executables/AME-Firefox-Injection/extensions.json diff --git a/src-SharedExecutables/AME-Firefox-Injection/extensions/uBlock0@raymondhill.net.xpi b/src/Executables/AME-Firefox-Injection/extensions/uBlock0@raymondhill.net.xpi similarity index 100% rename from src-SharedExecutables/AME-Firefox-Injection/extensions/uBlock0@raymondhill.net.xpi rename to src/Executables/AME-Firefox-Injection/extensions/uBlock0@raymondhill.net.xpi diff --git a/src-SharedExecutables/AME-Firefox-Injection/places.sqlite b/src/Executables/AME-Firefox-Injection/places.sqlite similarity index 100% rename from src-SharedExecutables/AME-Firefox-Injection/places.sqlite rename to src/Executables/AME-Firefox-Injection/places.sqlite diff --git a/src-SharedExecutables/AME-Firefox-Injection/prefs.js b/src/Executables/AME-Firefox-Injection/prefs.js similarity index 100% rename from src-SharedExecutables/AME-Firefox-Injection/prefs.js rename to src/Executables/AME-Firefox-Injection/prefs.js diff --git a/src-SharedExecutables/AME-Firefox-Injection/search.json.mozlz4 b/src/Executables/AME-Firefox-Injection/search.json.mozlz4 similarity index 100% rename from src-SharedExecutables/AME-Firefox-Injection/search.json.mozlz4 rename to src/Executables/AME-Firefox-Injection/search.json.mozlz4 diff --git a/src-SharedExecutables/Associations.dll b/src/Executables/Associations.dll similarity index 100% rename from src-SharedExecutables/Associations.dll rename to src/Executables/Associations.dll diff --git a/src-21H2-22H2/Executables/CHOC.bat b/src/Executables/CHOC.bat similarity index 100% rename from src-21H2-22H2/Executables/CHOC.bat rename to src/Executables/CHOC.bat diff --git a/src-21H2-22H2/Executables/CONVERT.bat b/src/Executables/CONVERT.bat similarity index 100% rename from src-21H2-22H2/Executables/CONVERT.bat rename to src/Executables/CONVERT.bat diff --git a/src-21H2-22H2/Executables/DNET.bat b/src/Executables/DNET.bat similarity index 100% rename from src-21H2-22H2/Executables/DNET.bat rename to src/Executables/DNET.bat diff --git a/src/Executables/EDGE.bat b/src/Executables/EDGE.bat new file mode 100644 index 0000000..7e89f77 --- /dev/null +++ b/src/Executables/EDGE.bat @@ -0,0 +1,48 @@ +@echo off + +for /f "usebackq tokens=2 delims=\" %%a in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( + reg query "HKU\%%a" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > nul 2>&1 + if not errorlevel 1 ( + for /f "usebackq tokens=2* delims= " %%b in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "AppData" 2^>^&1 ^| findstr /r /x /c:".*AppData[ ]*REG_SZ[ ].*"`) do ( + echo del "%%c\Microsoft\Internet Explorer\Quick Launch\Microsoft Edge.lnk" /q /f + del "%%c\Microsoft\Internet Explorer\Quick Launch\Microsoft Edge.lnk" /q /f + echo del "%%c\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\Microsoft Edge.lnk" /q /f + del "%%c\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\Microsoft Edge.lnk" /q /f + ) + ) +) + +for /f "usebackq tokens=2 delims=\" %%a in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( + reg query "HKU\%%a" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > nul 2>&1 + if not errorlevel 1 ( + CALL :USERREG "%%a" + ) +) + +for /f "usebackq delims=" %%e in (`reg query "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /i /r /c:"Microsoft[ ]*Edge" /c:"msedge"`) do reg delete "%%e" /f + +for /f "usebackq delims=" %%a in (`dir /b /a:d "!SystemDrive!\Users" ^| findstr /v /i /x /c:"Public" /c:"Default User" /c:"All Users"`) do ( + echo del /q /f "!SystemDrive!\Users\%%a\Desktop\Microsoft Edge.lnk" + del /q /f "!SystemDrive!\Users\%%a\Desktop\Microsoft Edge.lnk" + + :: WebView + echo rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\EdgeWebView" + rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\EdgeWebView" + + echo rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\Edge" + rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\Edge" + + echo rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\EdgeUpdate" + rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\EdgeUpdate" + + echo rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\EdgeCore" + rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\EdgeCore" +) + +exit /b 0 + +:USERREG +for /f "usebackq tokens=1 delims= " %%e in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" ^| findstr /i /c:"MicrosoftEdge" /c:"msedge"`) do ( + echo reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "%%e" /f + reg delete "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "%%e" /f +) \ No newline at end of file diff --git a/src-21H2-22H2/Executables/EDGEX.bat b/src/Executables/EDGEX.bat similarity index 100% rename from src-21H2-22H2/Executables/EDGEX.bat rename to src/Executables/EDGEX.bat diff --git a/src-21H2-22H2/Executables/FILEASSOC.bat b/src/Executables/FILEASSOC.bat similarity index 100% rename from src-21H2-22H2/Executables/FILEASSOC.bat rename to src/Executables/FILEASSOC.bat diff --git a/src-21H2-22H2/Executables/FIREFOXCONF.bat b/src/Executables/FIREFOXCONF.bat similarity index 99% rename from src-21H2-22H2/Executables/FIREFOXCONF.bat rename to src/Executables/FIREFOXCONF.bat index e3ef7cd..1e16e72 100644 --- a/src-21H2-22H2/Executables/FIREFOXCONF.bat +++ b/src/Executables/FIREFOXCONF.bat @@ -36,7 +36,7 @@ endlocal & set "NewCode=%NewCode%" set "RunEC=10" set /a "count0=1" -for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"S-" /c:"AME_UserHive_"`) do ( +for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( if "%%A"=="AME_UserHive_Default" ( call :AFISCALL "%SYSTEMDRIVE%\Users\Default\AppData\Roaming" if errorlevel 2 set "RunEC=2" diff --git a/src-SharedExecutables/Fluent-AME.skin7 b/src/Executables/Fluent-AME.skin7 similarity index 100% rename from src-SharedExecutables/Fluent-AME.skin7 rename to src/Executables/Fluent-AME.skin7 diff --git a/src-SharedExecutables/Fluent-Metro.skin b/src/Executables/Fluent-Metro.skin similarity index 100% rename from src-SharedExecutables/Fluent-Metro.skin rename to src/Executables/Fluent-Metro.skin diff --git a/src-21H2-22H2/Executables/LOGIN.bat b/src/Executables/LOGIN.bat similarity index 77% rename from src-21H2-22H2/Executables/LOGIN.bat rename to src/Executables/LOGIN.bat index adc5b2e..0b8409b 100644 --- a/src-21H2-22H2/Executables/LOGIN.bat +++ b/src/Executables/LOGIN.bat @@ -1,9 +1,4 @@ -@tasklist /fi "IMAGENAME eq Explorer.exe" /fi "USERNAME ne SYSTEM" /v | findstr /I /c:"explorer.exe" > NUL - @if %errorlevel% neq 0 echo start explorer.exe & start explorer.exe -:: Make output just after file deletion look nicer -@timeout /t 5 /nobreak > nul - reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v AutoAdminLogon /t REG_SZ /d 0 /f reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultUserName /t REG_SZ /d "" /f reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v DefaultPassword /t REG_SZ /d "" /f diff --git a/src-21H2-22H2/Executables/Layout.xml b/src/Executables/Layout.xml similarity index 100% rename from src-21H2-22H2/Executables/Layout.xml rename to src/Executables/Layout.xml diff --git a/src-SharedExecutables/NSudoLC.exe b/src/Executables/NSudoLC.exe similarity index 100% rename from src-SharedExecutables/NSudoLC.exe rename to src/Executables/NSudoLC.exe diff --git a/src/Executables/ONED.bat b/src/Executables/ONED.bat new file mode 100644 index 0000000..4fd3fc8 --- /dev/null +++ b/src/Executables/ONED.bat @@ -0,0 +1,48 @@ +@echo off +setlocal EnableDelayedExpansion + +for /f "usebackq tokens=2 delims=\" %%e in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( + REM If the "Volatile Environment" key exists, that means it is a proper user. Built in accounts/SIDs do not have this key. + reg query "HKU\%%e" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > nul 2>&1 + if not errorlevel 1 ( + call :USERREG "%%e" + ) +) + +taskkill /f /im "OneDrive.exe" + +for /f "usebackq delims=" %%a in (`dir /b /a:d "!SystemDrive!\Users"`) do ( + echo rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\OneDrive" + rmdir /q /s "!SystemDrive!\Users\%%a\AppData\Local\Microsoft\OneDrive" + echo rmdir /q /s "!SystemDrive!\Users\%%a\OneDrive" + rmdir /q /s "!SystemDrive!\Users\%%a\OneDrive" + + echo del /q /f "!SystemDrive!\Users\%%a\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\OneDrive.lnk" + del /q /f "!SystemDrive!\Users\%%a\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\OneDrive.lnk" +) + +for /f "usebackq delims=" %%e in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SyncRootManager" ^| findstr /i /c:"OneDrive"`) do echo reg delete "%%e" /f & reg delete "%%e" /f + +for /f "usebackq tokens=1* delims=\" %%A in (`schtasks /query /fo list ^| findstr /c:"\OneDrive Reporting Task" /c:"\OneDrive Standalone Update Task"`) do ( + schtasks /delete /tn "%%b" /f +) + +exit /b 0 + +:USERREG +for /f "usebackq delims=" %%e in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\BannerStore" ^| findstr /i /c:"OneDrive"`) do ( + echo reg delete "%%e" /f + reg delete "%%e" /f +) +for /f "usebackq delims=" %%e in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\Handlers" ^| findstr /i /c:"OneDrive"`) do ( + echo reg delete "%%e" /f + reg delete "%%e" /f +) +for /f "usebackq delims=" %%e in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths" ^| findstr /i /c:"OneDrive"`) do ( + echo reg delete "%%e" /f + reg delete "%%e" /f +) +for /f "usebackq delims=" %%e in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /i /c:"OneDrive"`) do ( + echo reg delete "%%e" /f + reg delete "%%e" /f +) \ No newline at end of file diff --git a/src/Executables/OpenShellSetup_4_4_189.exe b/src/Executables/OpenShellSetup_4_4_189.exe new file mode 100644 index 0000000..2f57ffa Binary files /dev/null and b/src/Executables/OpenShellSetup_4_4_189.exe differ diff --git a/src/Executables/REGI.bat b/src/Executables/REGI.bat new file mode 100644 index 0000000..c5cb3ab --- /dev/null +++ b/src/Executables/REGI.bat @@ -0,0 +1,27 @@ +:: Remove Windows Media Player from default apps list +NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait CMD /c "for /f "usebackq delims=" %%A in (`reg query "HKCR" /f "WMP11*" ^| findstr /c:"WMP11"`) do reg delete "%%A" /f" +@echo off +for /f "usebackq delims=" %%A in (`reg query "HKCR" /k /f "AppX" ^| findstr /c:"AppX"`) do ( + reg query "%%A" /v "" | findstr /c:"DesktopStickerEditorCentennial" /c:"LogonWebHost" > NUL + if not errorlevel 1 ( + echo reg delete "%%A" /f + reg delete "%%A" /f + ) +) +@echo on + +:: smb config +sc config lanmanworkstation depend= bowser/mrxsmb20/nsi + +:: Enable Legacy F8 Bootmenu +bcdedit /set {default} bootmenupolicy legacy +:: Disable Recovery +bcdedit /set {current} recoveryenabled no + +:: Disable Hibernation to make NTFS accessable outside of Windows +powercfg /h off +:: Set Performance Plan to High Performance and display to never turn off +powercfg /S 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c +powercfg /change monitor-timeout-ac 0 + +copy /y "UsrClass.dat" "%SYSTEMDRIVE%\Users\Default\AppData\Local\Microsoft\Windows" \ No newline at end of file diff --git a/src-SharedExecutables/SFCDEPLOY.bat b/src/Executables/SFCDEPLOY.bat similarity index 100% rename from src-SharedExecutables/SFCDEPLOY.bat rename to src/Executables/SFCDEPLOY.bat diff --git a/src-21H2-22H2/Executables/SHRT.bat b/src/Executables/SHRT.bat similarity index 60% rename from src-21H2-22H2/Executables/SHRT.bat rename to src/Executables/SHRT.bat index 3c570a5..f9af450 100644 --- a/src-21H2-22H2/Executables/SHRT.bat +++ b/src/Executables/SHRT.bat @@ -7,8 +7,9 @@ for /f "usebackq delims=" %%A in (`dir /b /a:d "%SYSTEMDRIVE%\Users" ^| findstr echo mkdir "%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned" mkdir "%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned" - echo PowerShell -NoP -C "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Windows Terminal.lnk'); $S.TargetPath = '%PROGRAMFILES%\Scoop\GlobalScoopApps\apps\windows-terminal\current\WindowsTerminal.exe'; $S.Save(); $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Mozilla Thunderbird.lnk'); $S.TargetPath = '%HOMEDRIVE%\Program Files\Mozilla Thunderbird\thunderbird.exe'; $S.WorkingDirectory = 'C:\Program Files\Mozilla Thunderbird'; $S.Save(); $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Firefox.lnk'); $S.TargetPath = '%HOMEDRIVE%\Program Files\Mozilla Firefox\firefox.exe'; $S.WorkingDirectory = 'C:\Program Files\Mozilla Firefox'; $S.Save()" - PowerShell -NoP -C "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Windows Terminal.lnk'); $S.TargetPath = '%PROGRAMFILES%\Scoop\GlobalScoopApps\apps\windows-terminal\current\WindowsTerminal.exe'; $S.Save(); $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Mozilla Thunderbird.lnk'); $S.TargetPath = '%HOMEDRIVE%\Program Files\Mozilla Thunderbird\thunderbird.exe'; $S.WorkingDirectory = 'C:\Program Files\Mozilla Thunderbird'; $S.Save(); $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Firefox.lnk'); $S.TargetPath = '%HOMEDRIVE%\Program Files\Mozilla Firefox\firefox.exe'; $S.WorkingDirectory = 'C:\Program Files\Mozilla Firefox'; $S.Save()" + copy /y "Terminal.lnk" "%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Windows Terminal.lnk" + echo PowerShell -NoP -C "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Mozilla Thunderbird.lnk'); $S.TargetPath = '%HOMEDRIVE%\Program Files\Mozilla Thunderbird\thunderbird.exe'; $S.WorkingDirectory = 'C:\Program Files\Mozilla Thunderbird'; $S.Save(); $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Firefox.lnk'); $S.TargetPath = '%HOMEDRIVE%\Program Files\Mozilla Firefox\firefox.exe'; $S.WorkingDirectory = 'C:\Program Files\Mozilla Firefox'; $S.Save()" + PowerShell -NoP -C "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Mozilla Thunderbird.lnk'); $S.TargetPath = '%HOMEDRIVE%\Program Files\Mozilla Thunderbird\thunderbird.exe'; $S.WorkingDirectory = 'C:\Program Files\Mozilla Thunderbird'; $S.Save(); $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned\Firefox.lnk'); $S.TargetPath = '%HOMEDRIVE%\Program Files\Mozilla Firefox\firefox.exe'; $S.WorkingDirectory = 'C:\Program Files\Mozilla Firefox'; $S.Save()" echo del /q /f "%SYSTEMDRIVE%\Users\%%A\Desktop\Microsoft Edge.lnk" del /q /f "%SYSTEMDRIVE%\Users\%%A\Desktop\Microsoft Edge.lnk" @@ -20,7 +21,7 @@ for /f "usebackq delims=" %%A in (`dir /b /a:d "%SYSTEMDRIVE%\Users" ^| findstr del /q /f "%SYSTEMDRIVE%\Users\Public\Desktop\Microsoft Edge.lnk" del /q /f "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Windows Media Player.lnk" -for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"S-" /c:"AME_UserHive_"`) do ( +for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( reg query "HKU\%%A" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1 if not errorlevel 1 ( for /f "usebackq tokens=2* delims= " %%B in (`reg query "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "AppData" 2^>^&1 ^| findstr /R /X /C:".*AppData[ ]*REG_SZ[ ].*"`) do ( @@ -34,4 +35,4 @@ for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr / ) ) -copy /y "amecs.cmd" "%WINDIR%\System32" \ No newline at end of file +copy /y "amecs.exe" "%WINDIR%\System32" \ No newline at end of file diff --git a/src-21H2-22H2/Executables/SLNT.bat b/src/Executables/SLNT.bat similarity index 92% rename from src-21H2-22H2/Executables/SLNT.bat rename to src/Executables/SLNT.bat index dd7bff1..b055ac6 100644 --- a/src-21H2-22H2/Executables/SLNT.bat +++ b/src/Executables/SLNT.bat @@ -1,12 +1,6 @@ - -:: Load tile layout from before -PowerShell -NoP -C "(New-Object -ComObject wscript.shell).SendKeys('^{ESCAPE}')" -timeout /t 2 > NUL -PowerShell -NoP -C "(New-Object -ComObject wscript.shell).SendKeys('^{ESCAPE}')" - @echo OFF -for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"S-" /c:"AME_UserHive_"`) do ( +for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( REM If the "Volatile Environment" key exists, that means it is a proper user. Built in accounts/SIDs don't have this key. reg query "HKU\%%A" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1 if not errorlevel 1 call :OPENSHELLREG "%%A" @@ -14,22 +8,20 @@ for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr / @echo ON -OpenShellSetup_4_4_170.exe /qn /quiet ADDLOCAL=StartMenu +OpenShellSetup_4_4_189.exe /qn /quiet ADDLOCAL=StartMenu copy /y Fluent-Metro.skin "%PROGRAMFILES%\Open-Shell\Skins" copy /y Fluent-AME.skin7 "%PROGRAMFILES%\Open-Shell\Skins" - - ::PowerShell -NoP -C "Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList '%~dp0\silent_installers\OldCalculatorforWindows10Cfg.exe' | Wait-Process" -OldClassicCalc-2.0-setup.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART +::OldClassicCalc-2.0-setup.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART -del /q /f "%SYSTEMDRIVE%\Users\Public\Desktop\Calculator (classic).lnk" +::del /q /f "%SYSTEMDRIVE%\Users\Public\Desktop\Calculator (classic).lnk" -rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" "Calculator.lnk" -rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Calculator (classic).lnk" "Calculator.lnk" +::rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" "Calculator.lnk" +::rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Calculator (classic).lnk" "Calculator.lnk" -for /f "usebackq delims=" %%E in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /r /c:"Old[ ].*Calculator"`) do reg add "%%E" /v "DisplayName" /t REG_SZ /d "Calculator" /f +::for /f "usebackq delims=" %%E in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /r /c:"Old[ ].*Calculator"`) do reg add "%%E" /v "DisplayName" /t REG_SZ /d "Calculator" /f @exit /b 0 diff --git a/src-21H2-22H2/Executables/TILE.bat b/src/Executables/STARTMENU.bat similarity index 95% rename from src-21H2-22H2/Executables/TILE.bat rename to src/Executables/STARTMENU.bat index 17383fc..030eff0 100644 --- a/src-21H2-22H2/Executables/TILE.bat +++ b/src/Executables/STARTMENU.bat @@ -1,10 +1,11 @@ +cd Executables @if exist "%SYSTEMDRIVE%\Windows\StartMenuLayout.xml" echo del /q /f "%SYSTEMDRIVE%\Windows\StartMenuLayout.xml" & del /q /f "%SYSTEMDRIVE%\Windows\StartMenuLayout.xml" copy /y "Layout.xml" "%SYSTEMDRIVE%\Windows\StartMenuLayout.xml" @echo OFF -for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"S-" /c:"AME_UserHive_"`) do ( +for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( REM If the "Volatile Environment" key exists, that means it is a proper user. Built in accounts/SIDs don't have this key. reg query "HKEY_USERS\%%A" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1 if not errorlevel 1 ( diff --git a/src/Executables/Terminal.lnk b/src/Executables/Terminal.lnk new file mode 100644 index 0000000..960dd16 Binary files /dev/null and b/src/Executables/Terminal.lnk differ diff --git a/src-21H2-22H2/Executables/UI.bat b/src/Executables/UI.bat similarity index 75% rename from src-21H2-22H2/Executables/UI.bat rename to src/Executables/UI.bat index df4a64d..23818a4 100644 --- a/src-21H2-22H2/Executables/UI.bat +++ b/src/Executables/UI.bat @@ -1,30 +1,26 @@ -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait cmd /c "del /q /f "%WINDIR%\HelpPane.exe"" +cmd /c "del /q /f "%WINDIR%\HelpPane.exe"" -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait ame-hexer "%WINDIR%\Resources\Themes\aero\Shell\NormalColor\shellstyle.dll" "3c69662069643d2261746f6d2848656c70427574746f6e29223e" "3c69662069643d2261746f6d282d2d2d52454d4f56454429223e" 120000 -NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait ame-hexer "%WINDIR%\Resources\Themes\aero\Shell\NormalColor\shellstyle.dll" "3c69662069643d2261746f6d2848656c70427574746f6e29223e" "3c69662069643d2261746f6d282d2d2d52454d4f56454429223e" 120000 +ame-hexer "%WINDIR%\Resources\Themes\aero\Shell\NormalColor\shellstyle.dll" "3c69662069643d2261746f6d2848656c70427574746f6e29223e" "3c69662069643d2261746f6d282d2d2d52454d4f56454429223e" 120000 +ame-hexer "%WINDIR%\Resources\Themes\aero\Shell\NormalColor\shellstyle.dll" "3c69662069643d2261746f6d2848656c70427574746f6e29223e" "3c69662069643d2261746f6d282d2d2d52454d4f56454429223e" 120000 @echo OFF for /f "usebackq delims=" %%A in (`dir /b "%WINDIR%\SystemApps\*Client.CBS*"`) do ( - echo NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait del /q /f "%WINDIR%\SystemApps\%%A\SystemSettingsExtensions.dll" - NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait del /q /f "%WINDIR%\SystemApps\%%A\SystemSettingsExtensions.dll" + echo del /q /f "%WINDIR%\SystemApps\%%A\SystemSettingsExtensions.dll" + del /q /f "%WINDIR%\SystemApps\%%A\SystemSettingsExtensions.dll" ) for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"Classes"`) do ( call :UICALL1 "%%A" ) -for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"S-" /c:"AME_UserHive_"`) do ( +for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( reg query "HKU\%%A" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1 if not errorlevel 1 call :UICALL2 "%%A" ) -@echo ON - -PowerShell -NoP -C "Start-Process 'ep_setup-22621.608.51.4.exe' -NoNewWindow -Wait" - for /f "usebackq delims=" %%E in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" ^| findstr /i /c:"ExplorerPatcher"`) do reg delete "%%E" /f @exit /b 0 @@ -53,7 +49,7 @@ exit /b 0 reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v "Start_ShowClassicMode" /t REG_DWORD /D 1 /f reg add "HKU\%~1\SOFTWARE\ExplorerPatcher" /f -reg add "HKU\%~1\SOFTWARE\ExplorerPatcher" /v "OldTaskbar" /t REG_DWORD /D 1 /f +reg add "HKU\%~1\SOFTWARE\ExplorerPatcher" /v "OldTaskbar" /t REG_DWORD /D 0 /f reg add "HKU\%~1\SOFTWARE\ExplorerPatcher" /v "UpdatePolicy" /t REG_DWORD /D 2 /f reg add "HKU\%~1\SOFTWARE\ExplorerPatcher" /v "EnableSymbolDownload" /t REG_DWORD /D 0 /f reg add "HKU\%~1\SOFTWARE\ExplorerPatcher" /v "HideControlCenterButton" /t REG_DWORD /D 1 /f diff --git a/src/Executables/UPDHEALTH.bat b/src/Executables/UPDHEALTH.bat new file mode 100644 index 0000000..e1356b7 --- /dev/null +++ b/src/Executables/UPDHEALTH.bat @@ -0,0 +1,24 @@ +@echo off +setlocal EnableDelayedExpansion + +for /f "usebackq tokens=7 delims=\" %%e in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall" /d /f "Update Health Tools" /s ^| findstr /i /c:"CurrentVersion\Uninstall\\"`) do set "GUID=%%e" +for /f "usebackq tokens=4 delims=\" %%e in (`reg query "HKCR\Installer\Products" /d /f "Update Health Tools" /s ^| findstr /i /c:"Installer\Products\\"`) do set "ProdID=%%e" + +if "!GUID!"=="" goto :Prod +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\!GUID!" /f + +:Prod +if "!ProdID!"=="" exit /b 0 + +for /f "usebackq delims=" %%e in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UpgradeCodes" /d /f "!ProdID!" /s ^| findstr /i /c:"Installer\UpgradeCodes\\"`) do reg delete "%%e" /f +reg delete "HKCR\Installer\Products\!ProdID!" /f +reg delete "HKCR\Installer\Features\!ProdID!" /f +for /f "usebackq delims=" %%e in (`reg query "HKCR\Installer\UpgradeCodes" /d /f "!ProdID!" /s ^| findstr /i /c:"Installer\UpgradeCodes\\"`) do reg delete "%%e" /f +for /f "usebackq delims=" %%e in (`reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components" /d /f "!ProdID!" /s ^| findstr /i /c:"S-1-5-18\Components\\"`) do reg delete "%%e" /f +reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\!ProdID!" /f + +for /f "usebackq delims=" %%e in (`PowerShell -NoP -C "(Get-Item 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders').Property" ^| findstr /i /c:"Update Health Tools"`) do ( + set "var=%%e" + if "!var:~-1!"=="\" set "var=%%e\" + reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders" /v "!var!" /f +) \ No newline at end of file diff --git a/src-21H2-22H2/Executables/UsrClass.dat b/src/Executables/UsrClass.dat similarity index 100% rename from src-21H2-22H2/Executables/UsrClass.dat rename to src/Executables/UsrClass.dat diff --git a/src-21H2-22H2/Executables/WALLPAPER.bat b/src/Executables/WALLPAPER.bat similarity index 96% rename from src-21H2-22H2/Executables/WALLPAPER.bat rename to src/Executables/WALLPAPER.bat index a79da45..b41a2a8 100644 --- a/src-21H2-22H2/Executables/WALLPAPER.bat +++ b/src/Executables/WALLPAPER.bat @@ -12,7 +12,7 @@ if exist "ame_wallpaper_1440.bmp" ( ) set "RunEC=10" -for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"S-" /c:"AME_UserHive_"`) do ( +for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /r /x /c:"HKEY_USERS\\S-.*" /c:"HKEY_USERS\\AME_UserHive_[^_]*"`) do ( if "%%A"=="AME_UserHive_Default" ( call :WALLRUN "%%A" "%SYSTEMDRIVE%\Users\Default" IF errorlevel 5 set "RunEC=5" @@ -33,7 +33,7 @@ for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr / ) ) ) -for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"AME_UserHive_" /c:"AME_UserClassHive_"`) do echo reg unload "HKU\%%A" & reg unload "HKU\%%A" + exit /b %RunEC% :WALLRUN diff --git a/src-SharedExecutables/ame-hexer.exe b/src/Executables/ame-hexer.exe similarity index 100% rename from src-SharedExecutables/ame-hexer.exe rename to src/Executables/ame-hexer.exe diff --git a/src-SharedExecutables/ame_wallpaper_1440.bmp b/src/Executables/ame_wallpaper_1440.bmp similarity index 100% rename from src-SharedExecutables/ame_wallpaper_1440.bmp rename to src/Executables/ame_wallpaper_1440.bmp diff --git a/src/Executables/amecs.exe b/src/Executables/amecs.exe new file mode 100644 index 0000000..280b623 Binary files /dev/null and b/src/Executables/amecs.exe differ diff --git a/src-SharedExecutables/assoc.ps1 b/src/Executables/assoc.ps1 similarity index 100% rename from src-SharedExecutables/assoc.ps1 rename to src/Executables/assoc.ps1 diff --git a/src-21H2-22H2/Executables/ep_setup-22621.608.51.4.exe b/src/Executables/ep_setup-22621.1413.54.5.exe similarity index 71% rename from src-21H2-22H2/Executables/ep_setup-22621.608.51.4.exe rename to src/Executables/ep_setup-22621.1413.54.5.exe index 91dd1d2..bf1d3a0 100644 Binary files a/src-21H2-22H2/Executables/ep_setup-22621.608.51.4.exe and b/src/Executables/ep_setup-22621.1413.54.5.exe differ diff --git a/src-SharedExecutables/img0.jpg b/src/Executables/img0.jpg similarity index 100% rename from src-SharedExecutables/img0.jpg rename to src/Executables/img0.jpg diff --git a/src-SharedExecutables/img0_1024x768.jpg b/src/Executables/img0_1024x768.jpg similarity index 100% rename from src-SharedExecutables/img0_1024x768.jpg rename to src/Executables/img0_1024x768.jpg diff --git a/src-SharedExecutables/img0_1200x1920.jpg b/src/Executables/img0_1200x1920.jpg similarity index 100% rename from src-SharedExecutables/img0_1200x1920.jpg rename to src/Executables/img0_1200x1920.jpg diff --git a/src-SharedExecutables/img0_1366x768.jpg b/src/Executables/img0_1366x768.jpg similarity index 100% rename from src-SharedExecutables/img0_1366x768.jpg rename to src/Executables/img0_1366x768.jpg diff --git a/src-SharedExecutables/img0_1600x2560.jpg b/src/Executables/img0_1600x2560.jpg similarity index 100% rename from src-SharedExecutables/img0_1600x2560.jpg rename to src/Executables/img0_1600x2560.jpg diff --git a/src-SharedExecutables/img0_2160x3840.jpg b/src/Executables/img0_2160x3840.jpg similarity index 100% rename from src-SharedExecutables/img0_2160x3840.jpg rename to src/Executables/img0_2160x3840.jpg diff --git a/src-SharedExecutables/img0_2560x1600.jpg b/src/Executables/img0_2560x1600.jpg similarity index 100% rename from src-SharedExecutables/img0_2560x1600.jpg rename to src/Executables/img0_2560x1600.jpg diff --git a/src-SharedExecutables/img0_3840x2160.jpg b/src/Executables/img0_3840x2160.jpg similarity index 100% rename from src-SharedExecutables/img0_3840x2160.jpg rename to src/Executables/img0_3840x2160.jpg diff --git a/src-SharedExecutables/img0_768x1024.jpg b/src/Executables/img0_768x1024.jpg similarity index 100% rename from src-SharedExecutables/img0_768x1024.jpg rename to src/Executables/img0_768x1024.jpg diff --git a/src-SharedExecutables/img0_768x1366.jpg b/src/Executables/img0_768x1366.jpg similarity index 100% rename from src-SharedExecutables/img0_768x1366.jpg rename to src/Executables/img0_768x1366.jpg diff --git a/src-SharedExecutables/img100.jpg b/src/Executables/img100.jpg similarity index 100% rename from src-SharedExecutables/img100.jpg rename to src/Executables/img100.jpg diff --git a/src-SharedExecutables/img103.png b/src/Executables/img103.png similarity index 100% rename from src-SharedExecutables/img103.png rename to src/Executables/img103.png diff --git a/src-SharedExecutables/install.ps1 b/src/Executables/install.ps1 similarity index 100% rename from src-SharedExecutables/install.ps1 rename to src/Executables/install.ps1 diff --git a/src-SharedExecutables/install_wim_tweak.exe b/src/Executables/install_wim_tweak.exe similarity index 100% rename from src-SharedExecutables/install_wim_tweak.exe rename to src/Executables/install_wim_tweak.exe diff --git a/src-SharedExecutables/scoop.ps1 b/src/Executables/scoop.ps1 similarity index 80% rename from src-SharedExecutables/scoop.ps1 rename to src/Executables/scoop.ps1 index cc80931..b7cf56f 100644 --- a/src-SharedExecutables/scoop.ps1 +++ b/src/Executables/scoop.ps1 @@ -2,6 +2,4 @@ iwr -useb get.scoop.sh -outfile 'install.ps1' .\install.ps1 -RunAsAdmin -ScoopDir "$env:ProgramFiles\Scoop" -ScoopGlobalDir "$env:ProgramFiles\Scoop\GlobalScoopApps" $env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User") -scoop install git --global -scoop bucket add extras -scoop install windows-terminal --global \ No newline at end of file +scoop install git --global \ No newline at end of file diff --git a/src-SharedExecutables/sfc.exe b/src/Executables/sfc.exe similarity index 100% rename from src-SharedExecutables/sfc.exe rename to src/Executables/sfc.exe diff --git a/src/playbook.conf b/src/playbook.conf new file mode 100644 index 0000000..63e7f0b --- /dev/null +++ b/src/playbook.conf @@ -0,0 +1,25 @@ + + + AME 11 + Ameliorated + Official AME Playbook for Windows 11 + Windows 11 Amelioration Playbook + This Playbook will ameliorate your installation The amelioration process makes heavy alterations to your installation. This Playbook assists you in quickly deploying AME with a default configuration. +
Ameliorated
+ 0.3 + + 22000 + 22621 + + + Internet + NoPendingUpdates + Activation + DefenderDisabled + NoAntivirus + + 117 + Optimizing various settings, improving the user interface experience, installing replacement apps, and removing hundreds of privacy infringing executables from the system. + https://git.ameliorated.info/Styris/AME-11 + malte +
\ No newline at end of file diff --git a/src/playbook.png b/src/playbook.png new file mode 100644 index 0000000..c325d50 Binary files /dev/null and b/src/playbook.png differ diff --git a/src/src.7z b/src/src.7z new file mode 100644 index 0000000..923ad57 Binary files /dev/null and b/src/src.7z differ