Merge remote-tracking branch 'upstream/dev' into dev

This commit is contained in:
2Shirt 2023-10-21 19:15:48 -07:00
commit 1beab4b4b4
Signed by: 2Shirt
GPG key ID: 152FAC923B0E132C
10 changed files with 144 additions and 43 deletions

View file

@ -70,7 +70,7 @@ BASE_MENUS = {
MenuEntry('AdwCleaner', 'auto_adwcleaner'),
MenuEntry('Malwarebytes (Run)', 'auto_mbam_run'),
MenuEntry('Malwarebytes (Uninstall)', 'auto_mbam_uninstall'),
MenuEntry('UninstallView', 'auto_uninstallview'),
MenuEntry('Bulk Crap Uninstaller', 'auto_bcuninstaller'),
MenuEntry('Enable Windows Updates', 'auto_windows_updates_enable'),
),
},

View file

@ -75,6 +75,12 @@ LAUNCHERS = {
'L_PATH': 'BlueScreenView',
'L_ITEM': 'BlueScreenView.exe',
},
'BCUninstaller': {
'L_TYPE': 'Executable',
'L_PATH': 'BCUninstaller',
'L_ITEM': 'BCUninstaller.exe',
'L_ELEV': 'True',
},
'ConEmu (as ADMIN)': {
'L_TYPE': 'Executable',
'L_PATH': 'ConEmu',
@ -112,7 +118,7 @@ LAUNCHERS = {
},
'Display Driver Uninstaller': {
'L_TYPE': 'Executable',
'L_PATH': 'DisplayDriverUninstaller',
'L_PATH': 'DDU',
'L_ITEM': 'Display Driver Uninstaller.exe',
'L_ELEV': 'True',
},

View file

@ -32,37 +32,37 @@ SOURCES = {
'TDSSKiller': 'https://media.kaspersky.com/utilities/VirusUtilities/EN/tdsskiller.exe',
# Build Kit
'AIDA64': 'https://download.aida64.com/aida64engineer675.zip',
'Adobe Reader DC': 'https://ardownload2.adobe.com/pub/adobe/reader/win/AcrobatDC/2300320201/AcroRdrDC2300320201_en_US.exe',
'AIDA64': 'https://download.aida64.com/aida64engineer692.zip',
'Adobe Reader DC': 'https://ardownload2.adobe.com/pub/adobe/reader/win/AcrobatDC/2300620360/AcroRdrDC2300620360_en_US.exe',
'Aria2': 'https://github.com/aria2/aria2/releases/download/release-1.36.0/aria2-1.36.0-win-32bit-build1.zip',
'Autoruns32': 'http://live.sysinternals.com/Autoruns.exe',
'Autoruns64': 'http://live.sysinternals.com/Autoruns64.exe',
'BleachBit': 'https://download.bleachbit.org/BleachBit-4.4.2-portable.zip',
'BCUninstaller': 'https://github.com/Klocman/Bulk-Crap-Uninstaller/releases/download/v5.7/BCUninstaller_5.7_portable.zip',
'BlueScreenView32': 'http://www.nirsoft.net/utils/bluescreenview.zip',
'BlueScreenView64': 'http://www.nirsoft.net/utils/bluescreenview-x64.zip',
'DDU': 'https://www.wagnardsoft.com/DDU/download/DDU%20v18.0.6.8.exe',
'ERUNT': 'http://www.aumha.org/downloads/erunt.zip',
'Everything32': 'https://www.voidtools.com/Everything-1.4.1.1024.x86.zip',
'Everything64': 'https://www.voidtools.com/Everything-1.4.1.1024.x64.zip',
'FastCopy': 'https://download.softrepository.com/files/tools/FastCopy4.2.2_installer.exe',
'FastCopy': 'https://github.com/FastCopyLab/FastCopyDist2/blob/main/FastCopy5.4.2_installer.exe',
'Fluent-Metro': 'https://github.com/bonzibudd/Fluent-Metro/releases/download/v1.5.3/Fluent-Metro_1.5.3.zip',
'FurMark': 'https://geeks3d.com/dl/get/696',
'HWiNFO': 'https://www.sac.sk/download/utildiag/hwi_746.zip',
'LibreOffice32': 'https://download.documentfoundation.org/libreoffice/stable/7.5.5/win/x86/LibreOffice_7.5.5_Win_x86.msi',
'LibreOffice64': 'https://download.documentfoundation.org/libreoffice/stable/7.5.5/win/x86_64/LibreOffice_7.5.5_Win_x86-64.msi',
'FurMark': 'https://geeks3d.com/dl/get/728',
'HWiNFO': 'https://www.sac.sk/download/utildiag/hwi_764.zip',
'LibreOffice32': 'https://download.documentfoundation.org/libreoffice/stable/7.6.2/win/x86/LibreOffice_7.6.2_Win_x86.msi',
'LibreOffice64': 'https://download.documentfoundation.org/libreoffice/stable/7.6.2/win/x86_64/LibreOffice_7.6.2_Win_x86-64.msi',
'Linux Reader': 'https://www.diskinternals.com/download/Linux_Reader.exe',
'Macs Fan Control': 'https://www.crystalidea.com/downloads/macsfancontrol_setup.exe',
'Neutron': 'http://keir.net/download/neutron.zip',
'Notepad++': 'https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v8.5.4/npp.8.5.4.portable.minimalist.7z',
'OpenShell': 'https://github.com/Open-Shell/Open-Shell-Menu/releases/download/v4.4.170/OpenShellSetup_4_4_170.exe',
'Notepad++': 'https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v8.5.8/npp.8.5.8.portable.minimalist.7z',
'OpenShell': 'https://github.com/Open-Shell/Open-Shell-Menu/releases/download/v4.4.191/OpenShellSetup_4_4_191.exe',
'Prime95': 'https://www.mersenne.org/download/software/v30/30.8/p95v308b17.win64.zip',
'PuTTY': 'https://the.earth.li/~sgtatham/putty/latest/w32/putty.zip',
'SDIO Torrent': 'https://www.glenn.delahoy.com/downloads/sdio/SDIO_Update.torrent',
'ShutUp10': 'https://dl5.oo-software.com/files/ooshutup10/OOSU10.exe',
'Windows Repair AIO': 'http://www.tweaking.com/files/setups/tweaking.com_windows_repair_aio.zip',
'WinSCP': 'https://sourceforge.net/projects/winscp/files/WinSCP/5.19.5/WinSCP-5.19.5-Portable.zip/download',
'UninstallView32': 'https://www.nirsoft.net/utils/uninstallview.zip',
'UninstallView64': 'https://www.nirsoft.net/utils/uninstallview-x64.zip',
'WizTree': 'https://diskanalyzer.com/files/wiztree_4_14_portable.zip',
'WizTree': 'https://diskanalyzer.com/files/wiztree_4_15_portable.zip',
'XMPlay': 'https://support.xmplay.com/files/20/xmplay385.zip?v=47090',
'XMPlay 7z': 'https://support.xmplay.com/files/16/xmp-7z.zip?v=800962',
'XMPlay Game': 'https://support.xmplay.com/files/12/xmp-gme.zip?v=515637',

View file

@ -181,6 +181,29 @@ def download_coretemp():
delete_from_temp('coretemp64.zip')
def download_ddu() -> None:
"""Download Display Driver Uninstaller."""
archive = download_to_temp('DDU.exe', SOURCES['DDU'])
out_path = BIN_DIR.joinpath('DDU')
extract_archive(archive, out_path, 'DDU*/*.*', mode='e')
out_path = out_path.joinpath('Settings')
for item in ('AMD', 'INTEL', 'Languages', 'NVIDIA', 'REALTEK'):
extract_archive(
archive,
out_path.joinpath(item),
f'DDU*/Settings/{item}/*',
mode='e',
)
delete_from_temp('DDU.exe')
def download_bcuninstaller() -> None:
"""Download Bulk Crap Uninstaller."""
archive = download_to_temp('BCU.zip', SOURCES['BCUninstaller'])
extract_to_bin(archive, 'BCUninstaller')
delete_from_temp('BCU.zip')
def download_erunt() -> None:
"""Download ERUNT."""
archive = download_to_temp('erunt.zip', SOURCES['ERUNT'])
@ -389,21 +412,6 @@ def download_snappy_driver_installer_origin() -> None:
delete_from_temp('fake.7z')
def download_uninstallview() -> None:
"""Download UninstallView."""
archive_32 = download_to_temp('uninstallview32.zip', SOURCES['UninstallView32'])
archive_64 = download_to_temp('uninstallview64.zip', SOURCES['UninstallView64'])
out_path = BIN_DIR.joinpath('UninstallView')
extract_archive(archive_64, out_path, 'UninstallView.exe')
rename_item(
out_path.joinpath('UninstallView.exe'),
out_path.joinpath('UninstallView64.exe'),
)
extract_archive(archive_32, out_path)
delete_from_temp('uninstallview32.zip')
delete_from_temp('uninstallview64.zip')
def download_windows_repair_aio():
"""Download Windows Repair AIO."""
archive = download_to_temp('winrepairaio.zip', SOURCES['Windows Repair AIO'])
@ -539,6 +547,8 @@ def build_kit() -> None:
try_print.run('BlueScreenView...', download_bluescreenview)
try_print.run('CoreTemp...', download_coretemp)
try_print.run('ERUNT...', download_erunt)
try_print.run('BulkCrapUninstaller...', download_bcuninstaller)
try_print.run('DDU...', download_ddu)
try_print.run('Everything...', download_everything)
try_print.run('FastCopy...', download_fastcopy)
try_print.run('FurMark...', download_furmark)
@ -552,7 +562,6 @@ def build_kit() -> None:
try_print.run('OpenShell...', download_openshell)
try_print.run('Prime95...', download_prime95)
try_print.run('PuTTY...', download_putty)
try_print.run('UninstallView...', download_uninstallview)
try_print.run('WinSCP...', download_winscp)
try_print.run('Windows Repair AIO...', download_windows_repair_aio)
try_print.run('WizTree...', download_wiztree)

View file

@ -688,6 +688,14 @@ def auto_bleachbit(group, name) -> None:
save_settings(group, name, result=result)
def auto_bcuninstaller(group, name) -> None:
"""Run BCUninstaller."""
result = TRY_PRINT.run(
'BCUninstaller...', run_bcuninstaller, msg_good='DONE',
)
save_settings(group, name, result=result)
def auto_chkdsk(group, name) -> None:
"""Run CHKDSK repairs."""
needs_reboot = False
@ -932,14 +940,6 @@ def auto_system_restore_set_size(group, name) -> None:
save_settings(group, name, result=result)
def auto_uninstallview(group, name) -> None:
"""Run UninstallView."""
result = TRY_PRINT.run(
'UninstallView...', run_uninstallview, msg_good='DONE',
)
save_settings(group, name, result=result)
def auto_windows_updates_disable(group, name) -> None:
"""Disable Windows Updates."""
result = TRY_PRINT.run('Disable Windows Updates...', disable_windows_updates)
@ -1250,6 +1250,11 @@ def run_emsisoft_cmd_scan():
proc.wait()
def run_bcuninstaller() -> None:
"""Run BCUninstaller."""
run_tool('BCUninstaller', 'BCUninstaller')
def run_hitmanpro() -> None:
"""Run HitmanPro scan."""
log_path = format_log_path(log_name='HitmanPro', timestamp=True, tool=True)

View file

@ -0,0 +1,81 @@
DeviceCleanup V1.2.1 - Removes non-present devices from the Windows device management
Freeware by Uwe Sieber - www.uwe-sieber.de
Works under Window 2000, XP, Windows Vista, Windows 7, 8, 10, 11 and their Server versions.
On x64 Windows only the x64 release can delete devices.
All devices listed by DeviceCleanup are currently not present, usually they have the problem
code 45 which is CM_PROB_PHANTOM, "The devinst currently exists only in the registry".
You can select one, multiple or all devices and remove them by pressing the Delete key or
right-click and select "Remove Device". If the device is attached again it will be detected as new.
The 'last used' time comes from the write time of the device's registry key
under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum
On some Windows the times are set on startup or even while it is running every few hours,
so all devices seem to have the same age. On a Windows 7 the Sysinternal ProcessMonitor
shows a recurring RegSetKeySecurity caused by a svchost.exe hosting the PlugPlay service
every 11 hours 45 minutes. No idea what is causing it. I you want to check yourself:
Set a filter "operation is RegSetKeySecurity" and set the option "Filter -> Drop filtered
events", otherwise your pagefile (or other backing file) gets flooded in no time.
On most Windows the time is set when the device gets active, so it makes sense to use this as
'last used' time.
If the last device using a certain COM-port is removed then the reservation under
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter
is removed.
Since Windows 10 version 1903 there is a sub-key "Devices" here where Windows keeps track of COM-ports
and their devices. Windows uses this to remove the reservation when a COM-port device is uninstalled.
Finally after 25 years...
For removing devices admin privileges are required, otherwise you get an access denied error.
System Restore Point
Since Windows 8 one can only create one SRP within 24 hours. For any further the API pretends to have
created one but did nothing in fact.
This can be overruled by setting the registry value SystemRestorePointCreationFrequency under
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\SystemRestore to a minimal allowed
interval in minutes, 0 disables the blocking completely.
When creating a System Restore Point, DeviceCleanup sets this value to 0 temporarily.
Setting in the INI file
By default the settings are stored in a DeviceCleanup.ini file beside the EXE.
Since V1.2, when running from the "C:\Program Files" folder and the INI cannot be written because of
missing admin privileges it writes to "C:\ProgramData\Uwe Sieber\DeviceCleanup.ini" instead.
A command line version is available too:
http://www.uwe-sieber.de/misc_tools_e.html#devicecleanupcmd
Licence: Freeware
Allowed:
- usage in any environment, including commercial
- include in software products, including commercial
- include on CD/DVD of computer magazines
- making available for download by means of package managers
Not allowed:
- modify any of the files
- offer for download by means of a "downloader" software
Uwe Sieber, mail@uwe-sieber.de
Dec 2021

Binary file not shown.

Binary file not shown.

View file

@ -109,10 +109,10 @@ if ($MyInvocation.InvocationName -ne ".") {
# Python: psutil
$DownloadPage = "https://pypi.org/project/psutil/"
$RegEx = "href=.*-cp36-abi3-win32.whl"
$RegEx = "href=.*-abi3-win32.whl"
$Url = FindDynamicUrl $DownloadPage $RegEx
DownloadFile -Path $Temp -Name "psutil32.whl" -Url $Url
$RegEx = "href=.*-cp36-abi3-win_amd64.whl"
$RegEx = "href=.*-abi3-win_amd64.whl"
$Url = FindDynamicUrl $DownloadPage $RegEx
DownloadFile -Path $Temp -Name "psutil64.whl" -Url $Url

View file

@ -1,6 +1,6 @@
{
"7-Zip": "https://7-zip.org/a/7z2301.msi",
"ConEmu": "https://github.com/Maximus5/ConEmu/releases/download/v22.12.18/ConEmuPack.221218.7z",
"Python x32": "https://www.python.org/ftp/python/3.10.11/python-3.10.11-embed-win32.zip",
"Python x64": "https://www.python.org/ftp/python/3.10.11/python-3.10.11-embed-amd64.zip"
"ConEmu": "https://github.com/Maximus5/ConEmu/releases/download/v23.07.24/ConEmuPack.230724.7z",
"Python x32": "https://www.python.org/ftp/python/3.12.0/python-3.12.0-embed-win32.zip",
"Python x64": "https://www.python.org/ftp/python/3.12.0/python-3.12.0-embed-amd64.zip"
}