Browse Source

Add partial support for new user creation after amelioration, improve OldNewExplorer installation, revamp file association system, and more

General:
Improve code and process

files.yml
Add removal of useless calc.exe that would show up first in open-shell searches

ADMIN.bat
Fix bug

CHOC.bat
Add deployment of EarTrumpet to the default template user
Modify open-shell config for the default template user to remove the settings option

EDGE.bat
Implement a more robust uninstall method

EDGEX.bat
Add registry edits to remove Internet Explorer remnants when trying to set the default browser or in the "Open With" menu

FILEASSOC.bat, assoc.ps1, and OEMDefaultAssociations.dll
Implement a more robust file/protocol association method that also works for new users and is more efficient
Set ThunderBird as the default mail client

REGI.bat
Add registry edits to remove the first logon OOBE and the awful first logon animation
Add registry edit to (hopefully) remove the "Let's Finish Setting Up Your Device" OOBE screen which can show up after amelioration

SLNT.bat
Switch back to silent installer for OldNewExplorer using Invoke-WMIMethod to start it

WALLPAPER.bat
Modify template theme so that new users will have the AME wallpaper set

credprovhost.dll.mui
Remove file metadata
master
Joe 1 year ago
parent
commit
d2c91bd341
18 changed files with 130 additions and 283 deletions
  1. +2
    -0
      Configuration/features/base/files.yml
  2. +1
    -1
      Executables/ADMIN.bat
  3. +2
    -2
      Executables/BANN.bat
  4. +27
    -5
      Executables/CHOC.bat
  5. +5
    -8
      Executables/EDGE.bat
  6. +9
    -1
      Executables/EDGEX.bat
  7. +5
    -24
      Executables/FILEASSOC.bat
  8. +9
    -2
      Executables/FIREFOXCONF.bat
  9. BIN
      Executables/OEMDefaultAssociations.dll
  10. +0
    -2
      Executables/PRESS.bat
  11. +25
    -9
      Executables/REGI.bat
  12. +1
    -1
      Executables/SHRT.bat
  13. +7
    -32
      Executables/SLNT.bat
  14. BIN
      Executables/UsrClass.dat
  15. +28
    -11
      Executables/WALLPAPER.bat
  16. +9
    -185
      Executables/assoc.ps1
  17. BIN
      Executables/credprovhost.dll.mui
  18. BIN
      Executables/silent_installers.7z

+ 2
- 0
Configuration/features/base/files.yml View File

@ -670,5 +670,7 @@ actions:
path: "%windir%\\System32\\wups2.dll"
- !file:
path: "%windir%\\System32\\wuaueng.dll"
- !file:
path: "%windir%\\System32\\calc.exe"
- !cmd:
command: "start explorer.exe"

+ 1
- 1
Executables/ADMIN.bat View File

@ -1,7 +1,7 @@
net user Administrator /active:yes
net user Administrator malte
@echo OFF
for /f "usebackq delims=" %%A in (`net localgroup users ^| findstr /V /I /c:"NT AUTHORITY\\" /c:"Alias name" /c:"Comment" /c:"Members" /c:"------------------------------------------------------------" /c:"The command completed"`) do (
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
)


+ 2
- 2
Executables/BANN.bat View File

@ -1,4 +1,4 @@
cd Executables
start .\ViVeTool.exe addconfig 18299130 1
start .\ViVeTool.exe addconfig 31950543 1
ViVeTool addconfig 18299130 1
ViVeTool addconfig 31950543 1

+ 27
- 5
Executables/CHOC.bat View File

@ -1,3 +1,5 @@
cd Executables
reg query "HKLM\SOFTWARE\Clients\StartMenuInternet" /k /f "Firefox-" > "%TEMP%\Firefox-Reg-Output.txt"
:: Load tile layout from before
@ -10,15 +12,25 @@ for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /
reg query "HKU\%%A" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1
if not errorlevel 1 call :CHOCCALL "%%A"
)
@echo ON
@PowerShell -NoP -ExecutionPolicy Bypass -C "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && set "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
@PowerShell -NoP -ExecutionPolicy Bypass -C "choco install -y --force --allow-empty-checksums firefox thunderbird open-shell vlc 7zip jpegview vcredist-all directx onlyoffice cascadiamono"
@PowerShell -NoP -ExecutionPolicy Bypass -C "choco install -y --force --allow-empty-checksums -n eartrumpet"
cd Executables
if exist "%ALLUSERSPROFILE%\chocolatey\lib\eartrumpet\tools\release.zip" (
echo PowerShell -NoP -C "Expand-Archive -Path '%ALLUSERSPROFILE%\chocolatey\lib\eartrumpet\tools\release.zip' -DestinationPath '%ALLUSERSPROFILE%\EarTrumpet'"
PowerShell -NoP -C "Expand-Archive -Path '%ALLUSERSPROFILE%\chocolatey\lib\eartrumpet\tools\release.zip' -DestinationPath '%ALLUSERSPROFILE%\EarTrumpet'"
echo rmdir /q /s "%ALLUSERSPROFILE%\chocolatey\lib\eartrumpet"
rmdir /q /s "%ALLUSERSPROFILE%\chocolatey\lib\eartrumpet"
echo mkdir "%SYSTEMDRIVE%\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
mkdir "%SYSTEMDRIVE%\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
echo PowerShell -NoP -C "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\EarTrumpet.lnk'); $S.TargetPath = '%ALLUSERSPROFILE%\EarTrumpet\EarTrumpet.exe'; $S.Save()"
PowerShell -NoP -C "$ws = New-Object -ComObject WScript.Shell; $s = $ws.CreateShortcut('%SYSTEMDRIVE%\Users\Default\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\EarTrumpet.lnk'); $S.TargetPath = '%ALLUSERSPROFILE%\EarTrumpet\EarTrumpet.exe'; $S.Save()"
)
copy Fluent-Metro.skin "C:\%PROGRAMFILES%\Open-Shell\Skins"
copy Fluent-Metro.skin7 "%PROGRAMFILES%\Open-Shell\Skins"
@echo ON
copy /y Fluent-Metro.skin "%PROGRAMFILES%\Open-Shell\Skins"
copy /y Fluent-Metro.skin7 "%PROGRAMFILES%\Open-Shell\Skins"
:: Load new Open-Shell menu
PowerShell -NoP -C "(New-Object -ComObject wscript.shell).SendKeys('^{ESCAPE}')"
@ -58,7 +70,7 @@ reg add "HKU\%~1\SOFTWARE\OpenShell\StartMenu\Settings" /v "SkinVariationW7" /t
reg add "HKU\%~1\SOFTWARE\OpenShell\StartMenu\Settings" /v "ShiftWin" /t REG_SZ /d "Nothing" /f
reg add "HKU\%~1\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"LIGHT_SUBMENU=0"\0"AUTOMODE_SUBMENU=1"\0"SUBMENU_SEPARATORS=1"\0"DARK_SEARCH=0"\0"METRO_SEARCH="\0"LIGHT_SEARCH=0"\0"AUTOMODE_SEARCH=1"\0"SEARCH_FRAME=1"\0"SEARCH_COLOR=0"\0"SMALL_SEARCH=0"\0"MOERN_SEARCH=1"\0"SEARCH_ITALICS=0"\0"NONE=0"\0"SEPARATOR=0"\0"TWO_TONE=1"\0"CLASSIC_SELECTOR=1"\0"HAF_SELECTOR=0"\0"CURVED_MENUSEL=1"\0"CURVED_SUBMENU=0"\0"SELECTOR_REVEAL=1"\0"TRANSPARENT=0"\0"OPAQU_SUBMENU=1"\0"OPAQUE_MENU=0"\0"OPAQUE=0"\0"STANDARD=0"\0"SMALL_MAIN2=1"\0"SMALL_ICONS=0"\0"COMPACT_UBMENU=0"\0"PRESERVE_MAIN2=0"\0"LESS_PADDING=0"\0"EXTRA_PADDING=1"\0"24_PADDING=0"\0"LARGE_PROGRAMS0"\0"TRANSPARENT_SHUTDOWN=0"\0"OUTLINE_SHUTDOWN=0"\0"BUTTON_SHUTDOWN=1"\0"EXPERIMENTAL_SHUTDOWN=0"\"LARGE_FONT=0"\0"CONNECTED_BORDER=1"\0"FLOATING_BORDER=0"\0"LARGE_SUBMENU=0"\0"LARGE_LISTS=0"\0"THI_MAIN2=0"\0"EXPERIMENTAL_MAIN2=1"\0"USER_IMAGE=1"\0"USER_OUTSIDE=0"\0"SCALING_USER=1"\0"56=0"\0"64="\0"TRANSPARENT_USER=0"\0"UWP_SCROLLBAR=0"\0"MODERN_SCROLLBAR=1"\0"SMALL_ARROWS=0"\0"ARROW_BACKGROUD=1"\0"ICON_FRAME=0"\0"SEARCH_SEPARATOR=0"\0"NO_PROGRAMS_BUTTON=0" /f
reg add "HKU\%~1\SOFTWARE\OpenShell\StartMenu\Settings" /v "SkipMetro" /t REG_DWORD /d 1 /f
reg add "HKU\%~1\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
reg add "HKU\%~1\SOFTWARE\OpenShell\StartMenu\Settings" /v "MenuItems7" /t REG_MULTI_SZ /d "Item1.Command=user_files\0Item1.Settings=NOEXPAND\0Item2.Command=user_documents\0Item2.Settings=NOEXPAND\0Item3.Command=user_pictures\0Item3.Settings=NOEXPAND\0Item4.Command=user_music\0Item4.Settings=NOEXPAND\0Item5.Command=user_videos\0Item5.Settings=NOEXPAND\0Item6.Command=downloads\0Item6.Settings=NOEXPAND\0Item7.Command=homegroup\0Item7.Settings=ITEM_DISABLED\0Item8.Command=separator\0Item9.Command=games\0Item9.Settings=TRACK_RECENT|NOEXPAND|ITEM_DISABLED\0Item10.Command=favorites\0Item10.Settings=ITEM_DISABLED\0Item11.Command=recent_documents\0Item12.Command=computer\0Item12.Settings=NOEXPAND\0Item13.Command=network\0Item13.Settings=ITEM_DISABLED\0Item14.Command=network_connections\0Item14.Settings=ITEM_DISABLED\0Item15.Command=separator\0Item16.Command=control_panel\0Item16.Settings=TRACK_RECENT\0Item17.Command=pc_settings\0Item17.Settings=TRACK_RECENT\0Item18.Command=admin\0Item18.Settings=TRACK_RECENT|ITEM_DISABLED\0Item19.Command=devices\0Item19.Settings=ITEM_DISABLED\0Item20.Command=defaults\0Item20.Settings=ITEM_DISABLED\0Item21.Command=help\0Item21.Settings=ITEM_DISABLED\0Item22.Command=run\0Item23.Command=apps\0Item23.Settings=ITEM_DISABLED\0Item24.Command=windows_security\0Item24.Settings=ITEM_DISABLED\0" /f
reg add "HKU\%~1\SOFTWARE\OpenShell\OpenShell\Settings" /v "Update" /d 0 /t REG_DWORD /f
reg add "HKU\%~1\SOFTWARE\OpenShell\StartMenu\Settings" /v "CheckWinUpdates" /t REG_DWORD /d 0 /f
@ -67,6 +79,16 @@ reg add "HKU\%~1\SOFTWARE\OpenShell\StartMenu\Settings" /v "HighlightNew" /t REG
reg add "HKU\%~1\SOFTWARE\Microsoft\Internet Explorer\Toolbar\ShellBrowser" /v "ITBar7Layout" /t REG_BINARY /d 13000000000000000000000020000000100000000000000001000000010700005e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 /f
@echo OFF
if "%~1"=="AME_UserHive_Default" (
echo reg add "HKU\%~1\SOFTWARE\OpenShell\StartMenu\Settings" /v "MenuItems7" /t REG_MULTI_SZ /d "Item1.Command=user_files\0Item1.Settings=NOEXPAND\0Item2.Command=user_documents\0Item2.Settings=NOEXPAND\0Item3.Command=user_pictures\0Item3.Settings=NOEXPAND\0Item4.Command=user_music\0Item4.Settings=NOEXPAND\0Item5.Command=user_videos\0Item5.Settings=NOEXPAND\0Item6.Command=downloads\0Item6.Settings=NOEXPAND\0Item7.Command=homegroup\0Item7.Settings=ITEM_DISABLED\0Item8.Command=separator\0Item9.Command=games\0Item9.Settings=TRACK_RECENT|NOEXPAND|ITEM_DISABLED\0Item10.Command=favorites\0Item10.Settings=ITEM_DISABLED\0Item11.Command=recent_documents\0Item12.Command=computer\0Item12.Settings=NOEXPAND\0Item13.Command=network\0Item13.Settings=ITEM_DISABLED\0Item14.Command=network_connections\0Item14.Settings=ITEM_DISABLED\0Item15.Command=separator\0Item16.Command=control_panel\0Item16.Settings=TRACK_RECENT\0Item17.Command=ITEM_DISABLED\0Item17.Settings=TRACK_RECENT\0Item18.Command=admin\0Item18.Settings=TRACK_RECENT|ITEM_DISABLED\0Item19.Command=devices\0Item19.Settings=ITEM_DISABLED\0Item20.Command=defaults\0Item20.Settings=ITEM_DISABLED\0Item21.Command=help\0Item21.Settings=ITEM_DISABLED\0Item22.Command=run\0Item23.Command=apps\0Item23.Settings=ITEM_DISABLED\0Item24.Command=windows_security\0Item24.Settings=ITEM_DISABLED\0" /f
reg add "HKU\%~1\SOFTWARE\OpenShell\StartMenu\Settings" /v "MenuItems7" /t REG_MULTI_SZ /d "Item1.Command=user_files\0Item1.Settings=NOEXPAND\0Item2.Command=user_documents\0Item2.Settings=NOEXPAND\0Item3.Command=user_pictures\0Item3.Settings=NOEXPAND\0Item4.Command=user_music\0Item4.Settings=NOEXPAND\0Item5.Command=user_videos\0Item5.Settings=NOEXPAND\0Item6.Command=downloads\0Item6.Settings=NOEXPAND\0Item7.Command=homegroup\0Item7.Settings=ITEM_DISABLED\0Item8.Command=separator\0Item9.Command=games\0Item9.Settings=TRACK_RECENT|NOEXPAND|ITEM_DISABLED\0Item10.Command=favorites\0Item10.Settings=ITEM_DISABLED\0Item11.Command=recent_documents\0Item12.Command=computer\0Item12.Settings=NOEXPAND\0Item13.Command=network\0Item13.Settings=ITEM_DISABLED\0Item14.Command=network_connections\0Item14.Settings=ITEM_DISABLED\0Item15.Command=separator\0Item16.Command=control_panel\0Item16.Settings=TRACK_RECENT\0Item17.Command=pc_settings\0Item17.Settings=ITEM_DISABLED\0Item18.Command=admin\0Item18.Settings=TRACK_RECENT|ITEM_DISABLED\0Item19.Command=devices\0Item19.Settings=ITEM_DISABLED\0Item20.Command=defaults\0Item20.Settings=ITEM_DISABLED\0Item21.Command=help\0Item21.Settings=ITEM_DISABLED\0Item22.Command=run\0Item23.Command=apps\0Item23.Settings=ITEM_DISABLED\0Item24.Command=windows_security\0Item24.Settings=ITEM_DISABLED\0" /f
echo reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "HideSCAVolume" /t REG_DWORD /d 1 /f
reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "HideSCAVolume" /t REG_DWORD /d 1 /f
reg add "HKU\%~1\SOFTWARE\EarTrumpet" /v "hasShownFirstRun" /t REG_SZ /d "<?xml version=""""1.0"""" encoding=""""utf-16""""?><boolean>true</boolean>" /f
reg add "HKU\%~1\SOFTWARE\EarTrumpet" /v "IsTelemetryEnabled" /t REG_SZ /d "<?xml version=""""1.0"""" encoding=""""utf-16""""?><boolean>false</boolean>" /f
copy /y "UsrClass.dat" "%SYSTEMDRIVE%\Users\Default\AppData\Local\Microsoft\Windows"
)
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\Windows\Start Menu\Programs\Accessories\Internet Explorer.lnk" /q /f
del "%%C\Microsoft\Windows\Start Menu\Programs\Accessories\Internet Explorer.lnk" /q /f


+ 5
- 8
Executables/EDGE.bat View File

@ -1,14 +1,11 @@
taskkill /im msedge.exe /f
cd "%PROGRAMFILES(x86)%\Microsoft\Edge\Application"
if exist "84.0.522.52" cd 84.0.522.52\Installer
if exist "9*" cd 9*\Installer
if exist "1*" cd 1*\Installer
start setup.exe --uninstall --system-level --verbose-logging --force-uninstall
@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"
)
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 (


+ 9
- 1
Executables/EDGEX.bat View File

@ -2,4 +2,12 @@ cd Executables
start /b /wait install_wim_tweak.exe /o /l
start /b /wait install_wim_tweak.exe /o /c Microsoft-Windows-Internet-Browser-Package /r
start /b /wait install_wim_tweak.exe /h /o /l
start /b /wait install_wim_tweak.exe /h /o /l
:: Removes ActiveX item in open with menu
NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg delete "HKCR\Applications\iexplore.exe" /f
:: Removes internet explorer option when setting default browser in settings
NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait reg delete "HKLM\SOFTWARE\Microsoft\Internet Explorer" /f
reg delete "HKLM\SOFTWARE\RegisteredApplications" /v "Internet Explorer" /f
reg delete "HKLM\SOFTWARE\Clients\StartMenuInternet\IEXPLORE.EXE" /f

+ 5
- 24
Executables/FILEASSOC.bat View File

@ -1,32 +1,13 @@
cd Executables
reg delete "HKLM\SOFTWARE\Clients\StartMenuInternet\IEXPLORE.EXE" /f
copy /y "OEMDefaultAssociations.dll" "%WINDIR%\System32"
del /q /f "%WINDIR%\System32\OEMDefaultAssociations.xml"
@echo OFF
for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"S-"`) do (
for /f "usebackq tokens=2 delims=\" %%A 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\%%A" | findstr /c:"Volatile Environment"> NUL 2>&1
reg query "HKU\%%A" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1
if not errorlevel 1 (
echo reg add "HKU\%%A\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" /v "UserSignedIn" /t REG_DWORD /d 1 /f
reg add "HKU\%%A\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" /v "UserSignedIn" /t REG_DWORD /d 1 /f
PowerShell -NoP -ExecutionPolicy Bypass -File assoc.ps1 "%%A" "%%A" ".html:FirefoxHTML-308046B0AF4A39CB" ".htm:FirefoxHTML-308046B0AF4A39CB" "Proto:https:FirefoxURL-308046B0AF4A39CB" "Proto:http:FirefoxURL-308046B0AF4A39CB" ".3g2:VLC.3g2" ".3gp:VLC.3gp" ".3gp2:VLC.3gp2" ".3gpp:VLC.3gpp" ".aac:VLC.aac" ".adts:VLC.adts" ".aif:VLC.aif" ".aifc:VLC.aifc" ".aiff:VLC.aiff" ".amr:VLC.amr" ".asf:VLC.asf" ".asx:VLC.asx" ".au:VLC.au" ".avi:VLC.avi" ".bmp:JPEGView.exe" ".cda:VLC.cda" ".flac:VLC.flac" ".jpeg:JPEGView.exe" ".jpg:JPEGView.exe" ".m1v:VLC.m1v" ".m2t:VLC.m2t" ".m2ts:VLC.m2ts" ".m3u:VLC.m3u" ".m4a:VLC.m4a" ".m4p:VLC.m4p" ".m4v:VLC.m4v" ".mid:VLC.mid" ".mka:VLC.mka" ".mkv:VLC.mkv" ".mov:VLC.mov" ".MP2:VLC.mp2" ".mp2v:VLC.mp2v" ".mp3:VLC.mp3" ".mp4:VLC.mp4" ".mp4v:VLC.mp4v" ".mpa:VLC.mpa" ".MPE:VLC.mpe" ".mpeg:VLC.mpeg" ".mpg:VLC.mpg" ".mpv2:VLC.mpv2" ".mts:VLC.mts" ".png:JPEGView.exe" ".ra:VLC.ra" ".ram:VLC.ram" ".rmi:VLC.rmi" ".s3m:VLC.s3m" ".snd:VLC.snd" ".TS:VLC.ts" ".TTS:VLC.tts" ".voc:VLC.voc" ".wav:VLC.wav" ".webp:JPEGView.exe" ".wma:VLC.wma" ".wmv:VLC.wmv" ".WPL:VLC.wpl" ".wvx:VLC.wvx" ".xm:VLC.xm" ".zpl:VLC.zpl"
)
)
for /f "usebackq tokens=4 delims=_" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"AME_UserHive_"`) do (
for /f "usebackq tokens=7 delims=\" %%B in (`reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" ^| findstr /c:"S-"`) do (
for /f "usebackq tokens=2* delims= " %%C in (`reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\%%B" ^| findstr /R /X /C:".*ProfileImagePath[ ]*REG_EXPAND_SZ[ ].*"`) do (
for /f "usebackq tokens=2* delims= " %%E in (`reg query "HKU\AME_UserHive_%%A\SOFTWARE\AME" ^| findstr /R /X /C:".*UserPath[ ]*REG_SZ[ ].*"`) do (
if "%%D"=="%%F" (
echo reg delete "HKU\AME_UserHive_%%A\SOFTWARE\AME" /f
reg delete "HKU\AME_UserHive_%%A\SOFTWARE\AME" /f
echo reg add "HKU\AME_UserHive_%%A\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" /v "UserSignedIn" /t REG_DWORD /d 1 /f
reg add "HKU\AME_UserHive_%%A\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer" /v "UserSignedIn" /t REG_DWORD /d 1 /f
PowerShell -NoP -ExecutionPolicy Bypass -File assoc.ps1 "%%B" "AME_UserHive_%%A" ".html:FirefoxHTML-308046B0AF4A39CB" ".htm:FirefoxHTML-308046B0AF4A39CB" "Proto:https:FirefoxURL-308046B0AF4A39CB" "Proto:http:FirefoxURL-308046B0AF4A39CB" ".3g2:VLC.3g2" ".3gp:VLC.3gp" ".3gp2:VLC.3gp2" ".3gpp:VLC.3gpp" ".aac:VLC.aac" ".adts:VLC.adts" ".aif:VLC.aif" ".aifc:VLC.aifc" ".aiff:VLC.aiff" ".amr:VLC.amr" ".asf:VLC.asf" ".asx:VLC.asx" ".au:VLC.au" ".avi:VLC.avi" ".bmp:JPEGView.exe" ".cda:VLC.cda" ".flac:VLC.flac" ".jpeg:JPEGView.exe" ".jpg:JPEGView.exe" ".m1v:VLC.m1v" ".m2t:VLC.m2t" ".m2ts:VLC.m2ts" ".m3u:VLC.m3u" ".m4a:VLC.m4a" ".m4p:VLC.m4p" ".m4v:VLC.m4v" ".mid:VLC.mid" ".mka:VLC.mka" ".mkv:VLC.mkv" ".mov:VLC.mov" ".MP2:VLC.mp2" ".mp2v:VLC.mp2v" ".mp3:VLC.mp3" ".mp4:VLC.mp4" ".mp4v:VLC.mp4v" ".mpa:VLC.mpa" ".MPE:VLC.mpe" ".mpeg:VLC.mpeg" ".mpg:VLC.mpg" ".mpv2:VLC.mpv2" ".mts:VLC.mts" ".png:JPEGView.exe" ".ra:VLC.ra" ".ram:VLC.ram" ".rmi:VLC.rmi" ".s3m:VLC.s3m" ".snd:VLC.snd" ".TS:VLC.ts" ".TTS:VLC.tts" ".voc:VLC.voc" ".wav:VLC.wav" ".webp:JPEGView.exe" ".wma:VLC.wma" ".wmv:VLC.wmv" ".WPL:VLC.wpl" ".wvx:VLC.wvx" ".xm:VLC.xm" ".zpl:VLC.zpl"
)
)
)
PowerShell -NoP -ExecutionPolicy Bypass -File assoc.ps1 "Placeholder" "%%A" ".html:FirefoxHTML-308046B0AF4A39CB" ".htm:FirefoxHTML-308046B0AF4A39CB" ".url:FirefoxURL-308046B0AF4A39CB" "Proto:https:FirefoxURL-308046B0AF4A39CB" "Proto:http:FirefoxURL-308046B0AF4A39CB" "Proto:mailto:Thunderbird.Url.mailto" ".3g2:VLC.3g2" ".3gp:VLC.3gp" ".3gp2:VLC.3gp2" ".3gpp:VLC.3gpp" ".aac:VLC.aac" ".adts:VLC.adts" ".aif:VLC.aif" ".aifc:VLC.aifc" ".aiff:VLC.aiff" ".amr:VLC.amr" ".asf:VLC.asf" ".asx:VLC.asx" ".au:VLC.au" ".avi:VLC.avi" ".bmp:JPEGView.exe" ".cda:VLC.cda" ".flac:VLC.flac" ".jpeg:JPEGView.exe" ".jpg:JPEGView.exe" ".m1v:VLC.m1v" ".m2t:VLC.m2t" ".m2ts:VLC.m2ts" ".m3u:VLC.m3u" ".m4a:VLC.m4a" ".m4p:VLC.m4p" ".m4v:VLC.m4v" ".mid:VLC.mid" ".mka:VLC.mka" ".mkv:VLC.mkv" ".mov:VLC.mov" ".MP2:VLC.mp2" ".mp2v:VLC.mp2v" ".mp3:VLC.mp3" ".mp4:VLC.mp4" ".mp4v:VLC.mp4v" ".mpa:VLC.mpa" ".MPE:VLC.mpe" ".mpeg:VLC.mpeg" ".mpg:VLC.mpg" ".mpv2:VLC.mpv2" ".mts:VLC.mts" ".png:JPEGView.exe" ".ra:VLC.ra" ".ram:VLC.ram" ".rmi:VLC.rmi" ".s3m:VLC.s3m" ".snd:VLC.snd" ".TS:VLC.ts" ".TTS:VLC.tts" ".voc:VLC.voc" ".wav:VLC.wav" ".webp:JPEGView.exe" ".wma:VLC.wma" ".wmv:VLC.wmv" ".WPL:VLC.wpl" ".wvx:VLC.wvx" ".xm:VLC.xm" ".zpl:VLC.zpl"
)
)

+ 9
- 2
Executables/FIREFOXCONF.bat View File

@ -37,11 +37,18 @@ 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= " %%B in (`reg query "HKU\%%A\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "AppData" 2^>^&1 ^| findstr /R /X /C:".*AppData[ ]*REG_SZ[ ].*"`) do (
call :AFISCALL "%%C"
if "%%A"=="AME_UserHive_Default" (
call :AFISCALL "%SYSTEMDRIVE%\Users\Default\AppData\Roaming"
if errorlevel 2 set "RunEC=2"
if errorlevel 1 set "RunEC=1"
if errorlevel 0 set "RunEC=0"
) else (
for /f "usebackq tokens=2* delims= " %%B in (`reg query "HKU\%%A\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "AppData" 2^>^&1 ^| findstr /R /X /C:".*AppData[ ]*REG_SZ[ ].*"`) do (
call :AFISCALL "%%C"
if errorlevel 2 set "RunEC=2"
if errorlevel 1 set "RunEC=1"
if errorlevel 0 set "RunEC=0"
)
)
)
exit /b %RunEC%


BIN
Executables/OEMDefaultAssociations.dll View File


+ 0
- 2
Executables/PRESS.bat View File

@ -1,2 +0,0 @@
start "C:\Program Files\Open-Shell\StartMenu.exe" -settings
PowerShell -Command "$wshell = New-Object -ComObject wscript.shell; $wshell.SendKeys('~')"

+ 25
- 9
Executables/REGI.bat View File

@ -1,6 +1,6 @@
@echo OFF
for /f "usebackq delims=" %%A in (`DIR /B /A:d "%SYSTEMDRIVE%\Users" ^| findstr /V /I /X /c:"Public" /c:"Default User" /c:"Default" /c:"All Users"`) do (
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"
@ -12,18 +12,24 @@ for /f "usebackq delims=" %%A in (`DIR /B /A:d "%SYSTEMDRIVE%\Users" ^| findstr
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" (
echo reg load "HKU\AME_UserHive_%%D" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT"
reg load "HKU\AME_UserHive_%%D" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT"
echo reg add "HKU\AME_UserHive_%%D\SOFTWARE\AME" /v "UserPath" /t REG_SZ /d "%SYSTEMDRIVE%\Users\%%A" /f
reg add "HKU\AME_UserHive_%%D\SOFTWARE\AME" /v "UserPath" /t REG_SZ /d "%SYSTEMDRIVE%\Users\%%A" /f
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"
)
)
)
) else (
if exist "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT" (
echo reg load "HKU\AME_UserHive_1" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT"
reg load "HKU\AME_UserHive_1" "%SYSTEMDRIVE%\Users\%%A\NTUSER.DAT"
echo reg add "HKU\AME_UserHive_1\SOFTWARE\AME" /v "UserPath" /t REG_SZ /d "%SYSTEMDRIVE%\Users\%%A" /f
reg add "HKU\AME_UserHive_1\SOFTWARE\AME" /v "UserPath" /t REG_SZ /d "%SYSTEMDRIVE%\Users\%%A" /f
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"
)
)
)
) else (
@ -171,6 +177,10 @@ 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
:: 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
@ -366,6 +376,12 @@ reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v
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
@echo OFF
if "%~1"=="AME_UserHive_Default" (
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

+ 1
- 1
Executables/SHRT.bat View File

@ -1,7 +1,7 @@
cd Executables
@echo OFF
for /f "usebackq delims=" %%A in (`dir /B /A:d "%SYSTEMDRIVE%\Users" ^| findstr /V /I /X /c:"Public" /c:"Default User" /c:"Default" /c:"All Users"`) do (
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 mkdir "%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell"
mkdir "%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell"
echo mkdir "%SYSTEMDRIVE%\Users\%%A\AppData\Roaming\OpenShell\Pinned"


+ 7
- 32
Executables/SLNT.bat View File

@ -1,50 +1,25 @@
cd Executables
@echo OFF
if exist OldCalculatorforWindows10Cfg.exe (
echo del /q /f OldCalculatorforWindows10Cfg.exe
del /q /f OldCalculatorforWindows10Cfg.exe
echo del /q /f readme.txt
del /q /f readme.txt
echo rmdir /q /s "silent_installers"
rmdir /q /s "silent_installers"
echo rmdir /q /s "OldNewExplorer"
rmdir /q /s "OldNewExplorer"
echo rmdir /q /s "%ALLUSERSPROFILE%\OldNewExplorer
rmdir /q /s "%ALLUSERSPROFILE%\OldNewExplorer
)
@echo ON
rmdir /q /s "silent_installers"
7za.exe e silent_installers.7z -pwizard
7za.exe x silent_installers.7z -pwizard
mkdir "%ALLUSERSPROFILE%\OldNewExplorer"
move /y OldNewExplorer32.dll "%ALLUSERSPROFILE%\OldNewExplorer"
move /y OldNewExplorer64.dll "%ALLUSERSPROFILE%\OldNewExplorer"
move /y OldNewExplorerCfg.exe "%ALLUSERSPROFILE%\OldNewExplorer"
robocopy "silent_installers\OldNewExplorerCfg" "%ALLUSERSPROFILE%\OldNewExplorer" /e
icacls "%ALLUSERSPROFILE%\OldNewExplorer" /reset /t
NSudoLC -U:S -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait cmd /c "del /q /f """"%WINDIR%\System32\calc.exe"""""
PowerShell -NoP -C "Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList '%~dp0\OldCalculatorforWindows10Cfg.exe'"
PowerShell -NoP -C "Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList '%ALLUSERSPROFILE%\OldNewExplorer\OldNewExplorerCfg.exe' | Wait-Process"
del /q /f "%ALLUSERSPROFILE%\OldNewExplorer\*"
NSudoLC -U:E -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait PowerShell -NoP -C "Start-Process '%ALLUSERSPROFILE%\OldNewExplorer\OldNewExplorerCfg.exe' -WorkingDirectory '%ALLUSERSPROFILE%\OldNewExplorer'; Sleep 2; $wshell = New-Object -ComObject wscript.shell; $wshell.AppActivate('OldNewExplorer configuration'); Sleep 1; $wshell.SendKeys('~'); Sleep 8; taskkill /im OldNewExplorerCfg.exe"
PowerShell -NoP -C "Invoke-WMIMethod -Class Win32_Process -Name Create -ArgumentList '%~dp0\silent_installers\OldCalculatorforWindows10Cfg.exe' | Wait-Process"
rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" "Calculator.lnk"
@echo OFF
if exist "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" (
echo rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" "Calculator.lnk"
rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" "Calculator.lnk"
) else (
echo timeout /t 10 ^> NUL
timeout /t 10 > NUL
if exist "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" echo rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" "Calculator.lnk" & rename "%ALLUSERSPROFILE%\Microsoft\Windows\Start Menu\Programs\Accessories\Old Calculator.lnk" "Calculator.lnk"
)
for /f "usebackq tokens=2 delims=\" %%A 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\%%A" | findstr /c:"Volatile Environment" /c:"AME_UserHive_" > NUL 2>&1
if not errorlevel 1 call :SLNTCALL "%%A"
)
exit /b 0
:SLNTCALL


BIN
Executables/UsrClass.dat View File


+ 28
- 11
Executables/WALLPAPER.bat View File

@ -1,16 +1,37 @@
cd Executables
NSudoLC -U:T -P:E -M:S -Priority:RealTime -UseCurrentConsole -Wait icacls "%WINDIR%\Resources\Themes\aero.theme" /reset /t
PowerShell -NoP -C "(Get-Content '%WINDIR%\Resources\Themes\aero.theme') -replace 'Wallpaper=%%SystemRoot%%.*', 'Wallpaper=%%SystemRoot%%\web\wallpaper\Windows\ame_wallpaper_1440.bmp' | Set-Content '%WINDIR%\Resources\Themes\aero.theme'"
@echo OFF
if exist "ame_wallpaper_1440.bmp" (
echo move /y "ame_wallpaper_1440.bmp" "%WINDIR%\Web\Wallpaper\Windows"
move /y "ame_wallpaper_1440.bmp" "%WINDIR%\Web\Wallpaper\Windows"
echo icacls "%WINDIR%\Web\Wallpaper\Windows\ame_wallpaper_1440.bmp" /reset
icacls "%WINDIR%\Web\Wallpaper\Windows\ame_wallpaper_1440.bmp" /reset
)
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= " %%B in (`reg query "HKU\%%A\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "AppData" 2^>^&1 ^| findstr /R /X /C:".*AppData[ ]*REG_SZ[ ].*"`) do (
call :WALLRUN "%%A" "%%C"
if "%%A"=="AME_UserHive_Default" (
call :WALLRUN "%%A" "%SYSTEMDRIVE%\Users\Default"
IF errorlevel 5 set "RunEC=5"
IF errorlevel 4 set "RunEC=4"
IF errorlevel 3 set "RunEC=3"
IF errorlevel 2 set "RunEC=2"
IF errorlevel 1 set "RunEC=1"
IF errorlevel 0 set "RunEC=0"
) else (
for /f "usebackq tokens=2* delims= " %%B in (`reg query "HKU\%%A\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "AppData" 2^>^&1 ^| findstr /R /X /C:".*AppData[ ]*REG_SZ[ ].*"`) do (
call :WALLRUN "%%A" "%%C"
IF errorlevel 5 set "RunEC=5"
IF errorlevel 4 set "RunEC=4"
IF errorlevel 3 set "RunEC=3"
IF errorlevel 2 set "RunEC=2"
IF errorlevel 1 set "RunEC=1"
IF errorlevel 0 set "RunEC=0"
)
)
)
for /f "usebackq tokens=2 delims=\" %%A in (`reg query "HKEY_USERS" ^| findstr /c:"AME_UserHive_"`) do echo reg unload "%%A" & reg unload "%%A"
@ -20,7 +41,6 @@ exit /b %RunEC%
if not exist "%WINDIR%\Web\Wallpaper\Windows" echo mkdir "%WINDIR%\Web\Wallpaper\Windows" & mkdir "%WINDIR%\Web\Wallpaper\Windows"
if exist "%~2\Microsoft\Windows\Themes\Transcoded_000" set "wallChanged=true" & goto lockScreen
if not exist "%~2\Microsoft\Windows\Themes\TranscodedWallpaper" set "wallFail=true" & goto lockScreen
echo PowerShell -NoP -C "Add-Type -AssemblyName System.Drawing; $img = New-Object System.Drawing.Bitmap '%~2\Microsoft\Windows\Themes\TranscodedWallpaper'; if ($img.Flags -ne 77840) {exit 1}; if ($img.HorizontalResolution -ne 96) {exit 1}; if ($img.VerticalResolution -ne 96) {exit 1}; if ($img.PropertyIdList -notcontains 40961) {exit 1}; if ($img.PropertyIdList -notcontains 20624) {exit 1}; if ($img.PropertyIdList -notcontains 20625) {exit 1}"
PowerShell -NoP -C "Add-Type -AssemblyName System.Drawing; $img = New-Object System.Drawing.Bitmap '%~2\Microsoft\Windows\Themes\TranscodedWallpaper'; if ($img.Flags -ne 77840) {exit 1}; if ($img.HorizontalResolution -ne 96) {exit 1}; if ($img.VerticalResolution -ne 96) {exit 1}; if ($img.PropertyIdList -notcontains 40961) {exit 1}; if ($img.PropertyIdList -notcontains 20624) {exit 1}; if ($img.PropertyIdList -notcontains 20625) {exit 1}"
@ -44,12 +64,6 @@ if exist "img0.jpg" (
move /y "img0.jpg" "%WINDIR%\Web\Wallpaper\Windows\img0.jpg"
)
if exist "ame_wallpaper_1440.bmp" (
echo move /y "ame_wallpaper_1440.bmp" "%WINDIR%\Web\Wallpaper\Windows"
move /y "ame_wallpaper_1440.bmp" "%WINDIR%\Web\Wallpaper\Windows"
echo icacls "%WINDIR%\Web\Wallpaper\Windows\ame_wallpaper_1440.bmp" /reset
icacls "%WINDIR%\Web\Wallpaper\Windows\ame_wallpaper_1440.bmp" /reset
)
if not exist "%WINDIR%\Web\Wallpaper\Windows\ame_wallpaper_1440.bmp" set "wallFail=true" & goto lockScreen
echo reg add "HKEY_USERS\%~1\Control Panel\Desktop" /v WallPaper /t REG_SZ /d "%WINDIR%\Web\Wallpaper\Windows\ame_wallpaper_1440.bmp" /f
@ -60,8 +74,11 @@ reg add "HKEY_USERS\%~1\Control Panel\Desktop" /v WallPaper /t REG_SZ /d "%WINDI
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Creative\%~1" /v "RotatingLockScreen*" > NUL 2>&1
if %errorlevel% NEQ 0 (
echo reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Creative\%~1" /v "RotatingLockScreenEnabled" /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Creative\%~1" /v "RotatingLockScreenEnabled" /t REG_DWORD /d 0 /f
echo "%~1" | findstr /c:"S-" > NUL
if not errorlevel 1 (
echo reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Creative\%~1" /v "RotatingLockScreenEnabled" /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Creative\%~1" /v "RotatingLockScreenEnabled" /t REG_DWORD /d 0 /f
)
echo reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "RotatingLockScreenEnabled" /t REG_DWORD /d 0 /f
reg add "HKU\%~1\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" /v "RotatingLockScreenEnabled" /t REG_DWORD /d 0 /f


+ 9
- 185
Executables/assoc.ps1 View File

@ -1,161 +1,3 @@
function Get-Hash {
[CmdletBinding()]
param (
[Parameter( Position = 0, Mandatory = $True )]
[string]
$BaseInfo
)
function local:Get-ShiftRight {
[CmdletBinding()]
param (
[Parameter( Position = 0, Mandatory = $true)]
[long] $iValue,
[Parameter( Position = 1, Mandatory = $true)]
[int] $iCount
)
if ($iValue -band 0x80000000) {
Write-Output (( $iValue -shr $iCount) -bxor 0xFFFF0000)
}
else {
Write-Output ($iValue -shr $iCount)
}
}
function local:Get-Long {
[CmdletBinding()]
param (
[Parameter( Position = 0, Mandatory = $true)]
[byte[]] $Bytes,
[Parameter( Position = 1)]
[int] $Index = 0
)
Write-Output ([BitConverter]::ToInt32($Bytes, $Index))
}
function local:Convert-Int32 {
param (
[Parameter( Position = 0, Mandatory = $true)]
$Value
)
[byte[]] $bytes = [BitConverter]::GetBytes($Value)
return [BitConverter]::ToInt32( $bytes, 0)
}
[Byte[]] $bytesBaseInfo = [System.Text.Encoding]::Unicode.GetBytes($baseInfo)
$bytesBaseInfo += 0x00, 0x00
$MD5 = New-Object -TypeName System.Security.Cryptography.MD5CryptoServiceProvider
[Byte[]] $bytesMD5 = $MD5.ComputeHash($bytesBaseInfo)
$lengthBase = ($baseInfo.Length * 2) + 2
$length = (($lengthBase -band 4) -le 1) + (Get-ShiftRight $lengthBase 2) - 1
$base64Hash = ""
if ($length -gt 1) {
$map = @{PDATA = 0; CACHE = 0; COUNTER = 0 ; INDEX = 0; MD51 = 0; MD52 = 0; OUTHASH1 = 0; OUTHASH2 = 0;
R0 = 0; R1 = @(0, 0); R2 = @(0, 0); R3 = 0; R4 = @(0, 0); R5 = @(0, 0); R6 = @(0, 0); R7 = @(0, 0)
}
$map.CACHE = 0
$map.OUTHASH1 = 0
$map.PDATA = 0
$map.MD51 = (((Get-Long $bytesMD5) -bor 1) + 0x69FB0000L)
$map.MD52 = ((Get-Long $bytesMD5 4) -bor 1) + 0x13DB0000L
$map.INDEX = Get-ShiftRight ($length - 2) 1
$map.COUNTER = $map.INDEX + 1
while ($map.COUNTER) {
$map.R0 = Convert-Int32 ((Get-Long $bytesBaseInfo $map.PDATA) + [long]$map.OUTHASH1)
$map.R1[0] = Convert-Int32 (Get-Long $bytesBaseInfo ($map.PDATA + 4))
$map.PDATA = $map.PDATA + 8
$map.R2[0] = Convert-Int32 (($map.R0 * ([long]$map.MD51)) - (0x10FA9605L * ((Get-ShiftRight $map.R0 16))))
$map.R2[1] = Convert-Int32 ((0x79F8A395L * ([long]$map.R2[0])) + (0x689B6B9FL * (Get-ShiftRight $map.R2[0] 16)))
$map.R3 = Convert-Int32 ((0xEA970001L * $map.R2[1]) - (0x3C101569L * (Get-ShiftRight $map.R2[1] 16) ))
$map.R4[0] = Convert-Int32 ($map.R3 + $map.R1[0])
$map.R5[0] = Convert-Int32 ($map.CACHE + $map.R3)
$map.R6[0] = Convert-Int32 (($map.R4[0] * [long]$map.MD52) - (0x3CE8EC25L * (Get-ShiftRight $map.R4[0] 16)))
$map.R6[1] = Convert-Int32 ((0x59C3AF2DL * $map.R6[0]) - (0x2232E0F1L * (Get-ShiftRight $map.R6[0] 16)))
$map.OUTHASH1 = Convert-Int32 ((0x1EC90001L * $map.R6[1]) + (0x35BD1EC9L * (Get-ShiftRight $map.R6[1] 16)))
$map.OUTHASH2 = Convert-Int32 ([long]$map.R5[0] + [long]$map.OUTHASH1)
$map.CACHE = ([long]$map.OUTHASH2)
$map.COUNTER = $map.COUNTER - 1
}
[Byte[]] $outHash = @(0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00)
[byte[]] $buffer = [BitConverter]::GetBytes($map.OUTHASH1)
$buffer.CopyTo($outHash, 0)
$buffer = [BitConverter]::GetBytes($map.OUTHASH2)
$buffer.CopyTo($outHash, 4)
$map = @{PDATA = 0; CACHE = 0; COUNTER = 0 ; INDEX = 0; MD51 = 0; MD52 = 0; OUTHASH1 = 0; OUTHASH2 = 0;
R0 = 0; R1 = @(0, 0); R2 = @(0, 0); R3 = 0; R4 = @(0, 0); R5 = @(0, 0); R6 = @(0, 0); R7 = @(0, 0)
}
$map.CACHE = 0
$map.OUTHASH1 = 0
$map.PDATA = 0
$map.MD51 = ((Get-Long $bytesMD5) -bor 1)
$map.MD52 = ((Get-Long $bytesMD5 4) -bor 1)
$map.INDEX = Get-ShiftRight ($length - 2) 1
$map.COUNTER = $map.INDEX + 1
while ($map.COUNTER) {
$map.R0 = Convert-Int32 ((Get-Long $bytesBaseInfo $map.PDATA) + ([long]$map.OUTHASH1))
$map.PDATA = $map.PDATA + 8
$map.R1[0] = Convert-Int32 ($map.R0 * [long]$map.MD51)
$map.R1[1] = Convert-Int32 ((0xB1110000L * $map.R1[0]) - (0x30674EEFL * (Get-ShiftRight $map.R1[0] 16)))
$map.R2[0] = Convert-Int32 ((0x5B9F0000L * $map.R1[1]) - (0x78F7A461L * (Get-ShiftRight $map.R1[1] 16)))
$map.R2[1] = Convert-Int32 ((0x12CEB96DL * (Get-ShiftRight $map.R2[0] 16)) - (0x46930000L * $map.R2[0]))
$map.R3 = Convert-Int32 ((0x1D830000L * $map.R2[1]) + (0x257E1D83L * (Get-ShiftRight $map.R2[1] 16)))
$map.R4[0] = Convert-Int32 ([long]$map.MD52 * ([long]$map.R3 + (Get-Long $bytesBaseInfo ($map.PDATA - 4))))
$map.R4[1] = Convert-Int32 ((0x16F50000L * $map.R4[0]) - (0x5D8BE90BL * (Get-ShiftRight $map.R4[0] 16)))
$map.R5[0] = Convert-Int32 ((0x96FF0000L * $map.R4[1]) - (0x2C7C6901L * (Get-ShiftRight $map.R4[1] 16)))
$map.R5[1] = Convert-Int32 ((0x2B890000L * $map.R5[0]) + (0x7C932B89L * (Get-ShiftRight $map.R5[0] 16)))
$map.OUTHASH1 = Convert-Int32 ((0x9F690000L * $map.R5[1]) - (0x405B6097L * (Get-ShiftRight ($map.R5[1]) 16)))
$map.OUTHASH2 = Convert-Int32 ([long]$map.OUTHASH1 + $map.CACHE + $map.R3)
$map.CACHE = ([long]$map.OUTHASH2)
$map.COUNTER = $map.COUNTER - 1
}
$buffer = [BitConverter]::GetBytes($map.OUTHASH1)
$buffer.CopyTo($outHash, 8)
$buffer = [BitConverter]::GetBytes($map.OUTHASH2)
$buffer.CopyTo($outHash, 12)
[Byte[]] $outHashBase = @(0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00)
$hashValue1 = ((Get-Long $outHash 8) -bxor (Get-Long $outHash))
$hashValue2 = ((Get-Long $outHash 12) -bxor (Get-Long $outHash 4))
$buffer = [BitConverter]::GetBytes($hashValue1)
$buffer.CopyTo($outHashBase, 0)
$buffer = [BitConverter]::GetBytes($hashValue2)
$buffer.CopyTo($outHashBase, 4)
$base64Hash = [Convert]::ToBase64String($outHashBase)
}
Write-Output $base64Hash
}
function Get-Time {
$now = [DateTime]::Now
$dateTime = [DateTime]::New($now.Year, $now.Month, $now.Day, $now.Hour, $now.Minute, 0)
$fileTime = $dateTime.ToFileTime()
$hi = ($fileTime -shr 32)
$low = ($fileTime -band 0xFFFFFFFFL)
$dateTimeHex = ($hi.ToString("X8") + $low.ToString("X8")).ToLower()
Write-Output $dateTimeHex
}
function Delete-UserChoiceKey {
param (
[Parameter( Position = 0, Mandatory = $True )]
@ -188,19 +30,6 @@ function Delete-UserChoiceKey {
[Registry.Utils]::DeleteKey($Key)
}
$userExperienceSearch = "User Choice set via Windows User Experience"
$user32Path = [Environment]::GetFolderPath([Environment+SpecialFolder]::SystemX86) + "\Shell32.dll"
$fileStream = [System.IO.File]::Open($user32Path, [System.IO.FileMode]::Open, [System.IO.FileAccess]::Read, [System.IO.FileShare]::ReadWrite)
$binaryReader = New-Object System.IO.BinaryReader($fileStream)
[Byte[]] $bytesData = $binaryReader.ReadBytes(5mb)
$fileStream.Close()
$dataString = [Text.Encoding]::Unicode.GetString($bytesData)
$position1 = $dataString.IndexOf($userExperienceSearch)
$position2 = $dataString.IndexOf("}", $position1)
$userExperience = $dataString.Substring($position1, $position2 - $position1 + 1)
$SID = $args[0]
$Hive = $args[1]
Write-Host "Setting file associations for HKEY_USERS\$Hive..."
@ -226,16 +55,12 @@ for ($i = 2; $i -lt $args.Length; $i++) {
New-Item -Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\$($splitArg[1])" -Force | Out-Null
}
If (Test-Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\$($splitArg[1])\UserChoice") {
Delete-UserChoiceKey "$Hive\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\$($splitArg[1])\UserChoice" | Out-Null
Delete-UserChoiceKey "$Hive\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\$($splitArg[1])\UserChoice"
}
If (-NOT (Test-Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts")) {
New-Item -Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts" -Force | Out-Null
}
New-ItemProperty -Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts" -Name "$($splitArg[2])_$($splitArg[1])" -PropertyType DWORD -Value 0 -Force | Out-Null
$dateTimeHex = Get-Time
$hash = Get-Hash "$($splitArg[1])$SID$($splitArg[2])$dateTimeHex$userExperience".ToLower()
[Microsoft.Win32.Registry]::SetValue("HKEY_USERS\$Hive\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\$($splitArg[1])\UserChoice", "Hash", $hash)
[Microsoft.Win32.Registry]::SetValue("HKEY_USERS\$Hive\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\$($splitArg[1])\UserChoice", "ProgId", "$($splitArg[2])")
} else {
If (-NOT (Test-Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\$($splitArg[0])")) {
New-Item -Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\$($splitArg[0])" -Force | Out-Null
@ -243,13 +68,12 @@ for ($i = 2; $i -lt $args.Length; $i++) {
If (Test-Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\$($splitArg[0])\UserChoice") {
Delete-UserChoiceKey "$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\$($splitArg[0])\UserChoice"
}
If (-NOT (Test-Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts")) {
New-Item -Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts" -Force | Out-Null
}
New-ItemProperty -Path "HKU:\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts" -Name "$($splitArg[1])_$($splitArg[0])" -PropertyType DWORD -Value 0 -Force | Out-Null
$dateTimeHex = Get-Time
$hash = Get-Hash "$($splitArg[0])$SID$($splitArg[1])$dateTimeHex$userExperience".ToLower()
[Microsoft.Win32.Registry]::SetValue("HKEY_USERS\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\$($splitArg[0])\UserChoice", "Hash", $hash)
[Microsoft.Win32.Registry]::SetValue("HKEY_USERS\$Hive\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\$($splitArg[0])\UserChoice", "ProgId", "$($splitArg[1])")
[Microsoft.Win32.Registry]::SetValue("HKEY_CLASSES_ROOT\$($splitArg[0])", "", "$($splitArg[1])")
[Microsoft.Win32.Registry]::SetValue("HKEY_USERS\$Hive\SOFTWARE\Classes\$($splitArg[0])", "", "$($splitArg[1])")
}
}

BIN
Executables/credprovhost.dll.mui View File


BIN
Executables/silent_installers.7z View File


Loading…
Cancel
Save