Releases: little-apps/LittleRegistryCleaner
Releases · little-apps/LittleRegistryCleaner
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
- 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
- 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
- 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
- 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
- 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