Merge remote-tracking branch 'upstream/dev' into dev
This commit is contained in:
commit
1beab4b4b4
10 changed files with 144 additions and 43 deletions
|
|
@ -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'),
|
||||
),
|
||||
},
|
||||
|
|
|
|||
|
|
@ -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',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -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',
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
|
|
|
|||
81
setup/windows/bin/DeviceCleanup/DeviceCleanup.txt
Normal file
81
setup/windows/bin/DeviceCleanup/DeviceCleanup.txt
Normal 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
|
||||
|
||||
|
||||
|
||||
|
||||
BIN
setup/windows/bin/DeviceCleanup/DeviceCleanup32.exe
Normal file
BIN
setup/windows/bin/DeviceCleanup/DeviceCleanup32.exe
Normal file
Binary file not shown.
BIN
setup/windows/bin/DeviceCleanup/DeviceCleanup64.exe
Normal file
BIN
setup/windows/bin/DeviceCleanup/DeviceCleanup64.exe
Normal file
Binary file not shown.
|
|
@ -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
|
||||
|
||||
|
|
|
|||
|
|
@ -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"
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue