Skip to content

Releases: little-apps/LittleRegistryCleaner

1.3

28 Aug 06:36
Compare
Choose a tag to compare
1.3
  • Scan dialog is thread safe
  • Scanners use base class to save coding and work
  • Added details control to display more information
  • Convert value to string function is now a static function
  • Checks if registry key is not null before continuing in AppInfo.cs
  • Checks for MsiExec in UninstallString instead of evaluating WindowsInstaller in AppInfo.cs
  • Changed the log formatting of bad registry keys
  • Displays files and directorys being scanned in scan dialog
  • Resets details control after scanning is finished
  • Fixed null bug in COMObjects.ScanClasses()
  • Catches DllNotFoundException if srclient.dll cant be found when creating system restore points
  • Catches Exception if unable to convert SystemComponent or EstimatedSize when retrieving ARP info
  • Disabled textbox editing in startup manager
  • Uses TreeViewAdv so UI has more nicer graphical design
  • Fixed "Index was outside the bounds of the array" exception in xmlRegistry.addRegistryValues(Int32 hKey)
  • Startup file paths are checked before being added to manager
  • Startup scanner has been fixed (also added 64bit compatiblity)
  • Cross checks start menu registry keys with folders for obsolete keys
  • Did some minor fixes to the ProgramList class
  • Files and folders can be added to the exclude list
  • Doesnt recursively check for obsolete software keys
  • Added checks for files and folders before there added to the problem list
  • Locks stream writer in logger so it cant be opened or written to at the same time
  • Logger uses streamwriter as a base class
  • Crash Reporter no longer saves reports to the hard disk before sending them
  • RegEditGo uses SetForegroundWindow instead of ShowWindow to bring up regedit
  • ActiveX scanner uses ole32.dll to get CLSID from program id and check icons

1.2

28 Aug 06:36
Compare
Choose a tag to compare
1.2
  • Removed HKLM from subkey path in RemoveFromRegistry()
  • Removed View Changelog from main menu
  • Checks for updates every 2 weeks
  • Fixed invalid argument when trying to view registry key without value name
  • Crash reporter wont be displayed when debugging
  • Updated assembly info
  • Fixed installer script so it deletes desktop shortcut
  • Checks for missing CLSID references in ProgID's
  • Added sorter for List View in main dialog
  • Scans for missing installer folders (HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Folders)
  • Makes sure registry key is writable before adding it to array
  • Displays type of exception in crash reporter
  • Log files are copied and displayed only if there were bad registry keys
  • Fixed program crashing when it calls RegEnumValue() in 64 bit
  • Scans needed Wow6432Node subkeys for errors (needs more updating)
  • The logger is more verbose
  • Fixed updater because it wasnt checking the right timespan
  • Added option to disable log being showed after scanning
  • Only checks last time since update when program starts

1.1

28 Aug 06:35
Compare
Choose a tag to compare
1.1
  • Scans HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts for unused file extensions
  • Cleaned up COMObjects.cs
  • No longer collects Machine and username in crash reporter
  • Changed the look of update dialog, also added date to xml file
  • Uses CollectionBase class to store bad registry keys in array
  • Uses shlwapi.dll instead to parse drive type and added check for removable media in Utils.DirExists()
  • Cleaned up Utils.cs
  • Checks if file exists before extracting arguments in startup manager
  • Added check for srclient.dll before creating restore points
  • Scan dialog uses Xp Progress Bar
  • Added TreeListView that performs combines the treeview and listview into one and also added project for controls
  • BadRegistryKey class uses ListViewItem as base class
  • Moved xmlRegistry static functions to Utils class
  • Scanner classes are now static to make thread calling faster
  • Optimizer wont compact registry if difference is more than 90%
  • Hive class implements IDisposable interface
  • Implemented TreeViewAdv into Startup Manager and removed vista message when running a program
  • ExtractFileLocation() is private and integrated into ExtractArguments()
  • Added images to startup manager tree view
  • Fixed bug in uninstall manager that causes not to update listview properly
  • Startup and uninstall manager can no longer be minimized and maximized
  • Buttons are bigger in Uninstall manger and it is not started maximized
  • Displays message box instead of notify box when form is activated
  • Moved Logger class back to seperate file
  • Opens log file after scanning finishes
  • Doesnt show crash reporter when debugging is enabled
  • Optimizer will now be in its own project (Little Registry Optimizer)
  • LaunchURI() checks for default browser HKCR\HTTP\shell\open\command
  • Startup Manager will check if item is leaf before executing operation

1.0

28 Aug 06:34
Compare
Choose a tag to compare
1.0
  • Restore points can be created on Windows ME, XP, and Vista
  • Creates restore points before fixing registry problems instead of before scanning and also creates restore point before restoring
  • Uses function instead of try-catch to find invalid path characters
  • Added Icons to TreeView Sections
  • Added registry optimizer
  • Asks user to exit program no matter what close reason is and shows dialog if it is minimized
  • Displays number of problems found in scan dialog
  • No longer uses ExtractRunPath() to get file arguments thanks to discovery of PathGetArgs() and PathRemoveArgs() :D
  • Added startup manager that lists current programs that are launched at startup
  • Added uninstall managaer that lists installed programs
  • Searches App Paths "Path" value name for file and also deletes whole subkey instead of just default value
  • Uses Windows API's to go to exact value name in regedit instead of just setting LastKey
  • Scans Add Remove Programs Cache for old programs
  • Changed contact email to [email protected]
  • Updated Crash Reporter, no longer sends name and email, also can restart program
  • Fixed bug when optimizer closes
  • Shows total size difference between registry hives in optimizer, also fixed a minor bug
  • Fixed bug causing restore points to not be created

0.8

28 Aug 06:33
Compare
Choose a tag to compare
0.8
  • Fixed FILETIME compile warnings
  • Corrected bad registry paths in AppInfo.cs
  • Uses array to pass bad registry keys instead of just using the ListView
  • No longer uses Program settings for sections to scan
  • Log file path can be accessed statically
  • FileExists and DirExists are used instead of Directory.Exists() and File.Exists()
  • Moved IconExists() and SearchFilePath() to Misc.cs
  • Cleaned up scanners
  • StartScanning() is now a ThreadPool
  • ScanDlg is now longer passed to Scanners as a parameter, it is a static variable
  • UpdateScanSubKey() is a static function
  • Registry objects are casted properly
  • Created LaunchURI function to check for default web browser (fixed: checks for null strings)
  • Made a minor fix to CreateRestorePoint()
  • Added more checks to ScanBHOReferences(), renamed it to ScanExplorer()

0.7

28 Aug 06:32
Compare
Choose a tag to compare
0.7
  • Recoded Logger class
  • Writes exception message to debug listeners when SecurityException is caught
  • Fixed up StartUp.cs
  • Checks if registry key exists before scanning key in ScanBHOReferences()
  • Sees if System Restore service is running before creating restore point (fixed: goes thru service list instead of trying to create a reference)
  • Added finally to try-catch block in StartScanning()
  • Scans HKEY_CLASSES_ROOT + HKEY_CURRENT_USER in COMObjects.cs
  • Deletes subkey tree from base key instead of deleting it from the parent subkey
  • Added help menu items that redirect to launchpad project
  • Added History List scanner to scan "Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs"
  • Tries to catch ObjectDisposedException when storing registry keys
  • Stops current thread immediatley when scanning is stopped
  • Checks for update when program starts