Restore Point Creator

fluid

super saiyajin...
Fąfel
Dołączył
4 Czerwiec 2013
Posty
7200
Reakcje/Polubienia
47
Restore Point Creator 5.2 Build 1

Moved much of the error handling for HTTP requests to a central error handler more better error handling.
Cut down on many of the error message that users could receive if an HTTP request error occurs.
Added multi-user support to the Create Restore Point at User Logon task.
Changed the type of Event Log that's written to the Application Event Log when an HTTP error occurs.
The program didn't give the user any feedback if the latest version was a beta version and the user chose not to receive beta versions (only RCs). This has been fixed.
Concentrated the decision to show either a message box or a balloon-type message based upon the user's preferences to a new giveFeedbackToUser() function. This cleans up much of the code so that there's not quite so many IF statements everywhere, just a call to a function.
Optimized much of the code in the deleteRPLifeIntervalValue() and giveFeedbackAfterCreatingRestorePoint() functions.
Wrapped the code that retrieves the task schedule data on the Task Scheduler's Form Load Event to better handle FormatException exceptions when loading invalid data data from the task's XML data.
Fixed the saving of the Update Message window size.
Made it so that there's not quite so many events that trigger the disableCountdown() function on the Update Notification window.
Cleaned up some code in the MyApplication_Startup responsible for loading several Registry key values for the program.
Included some changes to how the program accesses and closes out the RegistryKey objects.
Moved the loadExceptionHandler() in the application startup routine to be earlier in the code than in the past.
Fixed a possible ArgumentException exception in the function that kills processes that have a certain parent executable. This is mainly used during the application update routine to make sure that executable files aren't locked during the program update process.
Added the ability to save the size of the Official Changelog window.
Changed the way that the program stores and saves some user preferences.
Fixed a long standing issue in which the Please Wait window wasn't cented in the screen when launching one of the Jumplist tasks

Zaloguj lub Zarejestruj się aby zobaczyć!
 

fluid

super saiyajin...
Fąfel
Dołączył
4 Czerwiec 2013
Posty
7200
Reakcje/Polubienia
47
Restore Point Creator 5.4 Build 1

Changed much of the multi-threaded code to use Background Pool Threads instead of spawning my own threads.
* Simplified the GUI code of the update notification window.
* Updated HTTPHelper to version 1.215.
* Added the ability to auto-elevate the task when executing the program with the "-createrestorepoint" switch along with the "-name" parameter. This was broken in the past, thanks goes out to Paul Merritt for reporting this issue to me.
* Added note to the Command Line Arguments window that the commands are recommended to be ran from an elevated command prompt. Thanks goes out to Paul Merritt for reporting this to me.
* Fixed a bug in which the Reserved System Restore Space for System Drive window wasn't showing on top of other windows like it should.
* Completely rewrote the selected restore point deletion routine. Now all confirmation of restore points happen on the main thread with only the process of deleting said restore points being processed on a background thread.
* Implemented a way for the user to tell the program to not ask to confirm the deletion of each selected restore point if the user so chooses to do so once the confirmation dialog box is shown.
* Finally added a long requested feature to the program, the ability to confirm the deletion of selected restore points in a batch.
* Included some code optimizations on the Disk Space Usage window.
* Finally fixed a handle leak on the disk space usage tool in which it was leaking system handles/objects.

Zaloguj lub Zarejestruj się aby zobaczyć!
 

fluid

super saiyajin...
Fąfel
Dołączył
4 Czerwiec 2013
Posty
7200
Reakcje/Polubienia
47
Restore Point Creator 5.5 Build 1

Added a "Check All" and "Uncheck All" button to the batch confirmation window
Cleaned up some of the code in the configuration backup and restore feature as well as adding some additional checks to the backup tool for path verifications
Put in a workaround for a situation in which the Windows Clipboard was locked by another program thus can't be opened by my program. Thanks goes out to Philippe for reporting this issue to me.
Changed much of the code dealing with list view items to add additional attributes for better handling of data internal to the program. This includes multiple fixes and improvements to how the program stores internal restore point details such as the ID, name, and date created.
Enabled High DPI Awareness to many of the program's windows. Prior to this change only the main window was High DPI Aware.
Rewrote much of the code that works with the Windows BCDStore. Included a way to query if the Safe Mode Boot flag has been set or not
Fixed some issues with the Please Wait window
Included some code optimizations to the Application Event Log window.

Zaloguj lub Zarejestruj się aby zobaczyć!
 

Camel1965

Bardzo aktywny
Zasłużony
Dołączył
8 Wrzesień 2010
Posty
42447
Reakcje/Polubienia
36103
Restore Point Creator 5.6 Build 1
January 1, 2017 -- Version 5.6 Build 1
HAPPY NEW YEAR! HAPPY 2017!

This version includes a number of fixes and improvements to the program.

* Included code to handle an IOException if the application settings file is locked by another process. Thanks goes out to Brad Pospisal for reporting this issue to me.
* Added two new command line switches, "-deleteoldrestorepoints" and "-keepxnumberofrestorepoints". Details about how to use these commands are in the About, Command Line Switches.
* Included a work around for a situation in which System Restore may return error 1058. The work around sets the reserved space to 20 GBs, enables System Restore, and attempts to create the restore point again.
* Added handling of IO.FileLoadException to the function that initiates a system restore to a previous restore point.
* Included a new handler to log IO.FileLoadException since this exception type requires more logging specific to this exception type.
* Clarified some things on the Confirm Restore Point Deletion window.
* Put additional checks into the Manage System Restore Storage Space tool.
* Moved the code that's used to document how many restore points will be deleted by the "-keepxnumberofrestorepoints" command line argument to another part of the program's code.
* Added an additional call to the function that documents current restore points to the Application Event Log before the call of the function that deletes an X number of restore points to document how many system restore points the system had before and after the deletion routine.
* Fixed an issue in which the scrolling of the textbox on the Update Notification window doesn't disable the update countdown if the user uses a touchscreen to scroll it.
* Added better handling of HTTP Protocol Errors such as 500 and 404 errors.
* Updated HTTPHelper class to version 1.225.
* Implemented a fix to a program crash in the Task Scheduler tool that could occur if the Task Scheduler library returns an invalid task start time.
Instalator:
Zaloguj lub Zarejestruj się aby zobaczyć!

Portable:
Zaloguj lub Zarejestruj się aby zobaczyć!
 

fluid

super saiyajin...
Fąfel
Dołączył
4 Czerwiec 2013
Posty
7200
Reakcje/Polubienia
47
Restore Point Creator 5.7 Build 1

Fixed an issue in which the scrolling of the textbox on the Update Notification window doesn't disable the update countdown if the user uses a touchscreen to scroll it.
Added additional handling of several common HTTP error codes.
Fixed an issue on the Mount Shadow Copy Tool in which the Mount button wasn't disabled when a user clicked outside of the column in the list. Clicking on the Mount button would then result in an ArgumentOutOfRangeException exception. Thanks goes out to Nick Zdenkovic for reporting this issue to me.
Put in a question asking the user if the user wants to repair the system if error code 1058 is returned by the system restore point API.
Put in a question asking the user if System Restore Point Creator should attempt to repair System Restore.
Includes some changes to the some of the VSS related code.
Added a new app setting, Confirm Smaller Restore Point Space Setting; this is used by the Manage System Restore Storage Space window.
Fixed a bug in which the program was giving an error about the new size being smaller than the old size for setting the restore point space even though it was wrong. This was caused by a logic error in the code. Thanks goes out to Mark Bitter for reporting this issue to me.
Added the ability to turn off that confirmation via a checkbox on the window if you so chose to do so.
Added several new handlers for various exceptions to improve program crash reporting.
Updated HTTPHelper class to version 1.240.
Added full custom proxy support to the program, these changes camr about because of additions to the HTTPHelper class.
Added the ability to convert many integer error codes into hex strings for crash reports and error logging.
Added the ability to check for updates immediately after changing the software update channel. This removes an added step when changing update channels, namely the fact that you had to manually check for updates.

Zaloguj lub Zarejestruj się aby zobaczyć!
 

Camel1965

Bardzo aktywny
Zasłużony
Dołączył
8 Wrzesień 2010
Posty
42447
Reakcje/Polubienia
36103
Restore Point Creator 5.8 Build 2
January 30, 2017 -- Version 5.8 Build 2
Minor changes were applied after the Build 1 compile.

January 30, 2017 -- Version 5.8 Build 1
This version includes a number of fixes and improvements to the program.

* Updated the HTTPHelper to version 1.245 which includes some changes to how it gets the system proxy configuration.
* Put in a fix for an issue in which the Reserved System Restore Space for System Drive window locks the program up. Thanks goes out to "nextgraf" for reporting this issue to me.
* Included some internal "behind the scenes" code changes.
* Moved the SSL image to the left side of the Update Message window.
* Included completely new update checking code based upon an XML document that's on my web site. Being that it's XML it's far easier to parse than the convoluted code that I had before. It requires far less code and is simpler to debug.
Zaloguj lub Zarejestruj się aby zobaczyć!
 

Camel1965

Bardzo aktywny
Zasłużony
Dołączył
8 Wrzesień 2010
Posty
42447
Reakcje/Polubienia
36103
Restore Point Creator 5.8 Build 3
February 1, 2017 -- Version 5.8 Build 3
This is an emergency update. Fixed an issue in which the update code may not run in specific circumstances. Thanks goes out to Charles Ray for helping me get to the bottom of the issue.
Zaloguj lub Zarejestruj się aby zobaczyć!
 

Camel1965

Bardzo aktywny
Zasłużony
Dołączył
8 Wrzesień 2010
Posty
42447
Reakcje/Polubienia
36103
Restore Point Creator 5.9 Build 1
February 13, 2017 -- Version 5.9 Build 1
Because this month, February, is a 28 day month it kind of messes up the whole 15-day release cycle of the program. Oh well, such is life. Anyways, onto the number of fixes and improvements to the program.

Fixed an issue on the main form when loading that could cause the program to lock up due to the Please Wait window being tied to the main thread of the main form.

Fixed a false positive in the program when there are no restore points on the system in which the program asks to repair System Restore even though it doesn't need to be done. Thanks goes out to Charles Ray for reporting this issue to me.

Added additional logging to the application update procedure to catch possible errors.

Fixed the wording on the Update Notification text at the top when the update is a standard update but the text indicated that it was a Public Beta, this is wrong. This has been corrected.

Implemented a whole new exported log file type. The new file type is based upon XML instead of a custom-formatted file type. The new file type is reslogx.

Included some changes to some of the code that deals with the Event Log.

Added four new functions to set values in the Registry for behind the scenes access to the Registry.

Updated the update checking code to first download the release version when a new release version has been released when the user is the public beta branch. Before it would automatically skip to the next beta branch version. This was incorrect behavior. The newest release branch version should always be the version that's downloaded when a new branch version is released. If this situation occurs, the program sets a value in the Registry to trigger an update check the next time the program runs to check for any new public beta branch versions.
Instalator:
Zaloguj lub Zarejestruj się aby zobaczyć!

Portable:
Zaloguj lub Zarejestruj się aby zobaczyć!
 

fluid

super saiyajin...
Fąfel
Dołączył
4 Czerwiec 2013
Posty
7200
Reakcje/Polubienia
47

fluid

super saiyajin...
Fąfel
Dołączył
4 Czerwiec 2013
Posty
7200
Reakcje/Polubienia
47
Restore Point Creator 6.1 Build 1
  • Added code to manage the list of file operations that occur at system reboot. Removed the MoveFileEx API declaration since we no longer need it. The deleteAtReboot Class replaces the MoveFileEx API declaration.
  • Updated the uninstall info update code to indicate if the current build is a public beta or release candidate. This wasn't specified in the past.
  • Implemented additional checks to see if the Settings file is locked at application startup.
  • Added additional Null Reference checks to the function that opens the Please Wait window.
  • Added a message box if an IO.FileNotFoundException is thrown when attempting to load the list of System Restore Points.
  • Implemented some changes in the code that exports the settings to a file.
  • Included some additional catches around the window focus commands.
  • Updated the HTTPHelper to version 1.280 which includes better handling of DNS Resolution errors and a couple of fixes for the RegEx that parses out the domain name from the URL.
  • Added special handling of DNS Resolution errors.
  • Changed the message box that appears if you don't answer Yes to the UAC elevation prompt to be a system modal type message box.
  • Added additional handling of IO.DirectoryNotFoundException's to the addExtendedCrashData() function.
  • Added a function to verify window locations to make sure that windows never get lost by having a negative X or Y value.
  • Fixed a bug in which many of the windows saved the location but never loaded it back.
  • Updated the Fody package from version 1.28.3 to 1.29.4 which is used at compile time.
  • Added missing references to make Visual Studio 2017 happy.
  • Moved many of the PInvoke methods to a new special class called NativeMethods. This is another thing that I had to do to make Visual Studio 2017 happy.
  • Fixed declaration of the SendMessage API.
  • Fixed declaration of the QueryFullProcessImageName and SearchPath APIs to close possible security hole, this was due to using the incorrect variable/object type in the function declaration.
  • Removed a bunch of unnecessary Dispose() calls.
  • Brought back the 'Enable "My Computer" Right-Click Option' on Windows 10. This is because I was able to develop a workaround for an issue that was preventing me from doing this in the past.
  • Developed a workaround for an issue in which I could not add any options to the My Computer right-click context menu on Windows 10. This workaround includes writing to the CLSID root of the current user's registry hive instead of writing to the HKEY_CLASSES_ROOT hive which is forbidden starting with Windows 10.
  • Added code to the update XML file parser to simplify the data needed in the XML file, specifically the "betaRCVersion" node.
  • Moved some code around internal to the program.
  • Added the ability to ignore a version at update time. If you ignore a version it will ignore it when ever the program checks for an update and notate it in the application log that it was ignored.
Zaloguj lub Zarejestruj się aby zobaczyć!
 

Jarom

Bardzo aktywny
Zasłużony
Dołączył
23 Wrzesień 2016
Posty
3893
Reakcje/Polubienia
1229
Restore Point Creator 6.2 Build 1
  • Added the ability to make the Please Wait window that appears when updating a System Modal window.
  • Removed a system restore setup check from the WMI.createRestorePoint() function that's used by the program to create restore points. It was causing too many false positives which caused some users to lose system restore points.
  • Added the ability to save the location of the update notification window.
  • Fixed an issue in which a label on the update notification window wasn't being placed right after a window resize.
  • Removed a system restore setup check from many parts of the program. It was causing too many false positives which caused some users to lose system restore points.
  • Fixed an issue in which the message box telling you that the reserved space is set properly and that something else is wrong is obscured by the Please Wait window.
  • Added application modal properties to the ERROR_SERVICE_DISABLED message box.
  • Fixed an issue in which the handleLockedSettingsFile() function could be passed a ConfigurationErrorsException object when the function was expecting an IOException object. This has been fixed by changing the input parameter type to a general purpose Exception object type. Thanks goes out to Jack Reynolds for reporting this issue to me.
  • Fixed a potential bug in which the "-deleteoldrestorepoints" command line switch wasn't working properly.
  • Implemented a possible fix for an issue that's been eluding me for quite some time. Thanks goes out to Charles Ray for getting me a full memory dump file at the time of the program crash, this was extremely helpful in narrowing down where the bug may be in the code.
  • Updated copyright line in the About box for the year 2018.
  • Added copyright line for the task scheduler library to the About box.
  • Updated embedded Microsoft.Win32.TaskScheduler library DLL to version 2.5.23.
  • Added a reference a DLL that's needed by the new version of the task library.
  • Moved a function from one part of the code to another, specifically the deleteAtUserLogonTask() function.
Zaloguj lub Zarejestruj się aby zobaczyć!
 

Jarom

Bardzo aktywny
Zasłużony
Dołączył
23 Wrzesień 2016
Posty
3893
Reakcje/Polubienia
1229
Restore Point Creator 6.2 Build 2
  • I recompiled the program's main executable without the executable packing program that I was using to reduce the size of the program's executable file and also guard it against decompilers to protect my intellectual property. I was using a tool called "mpress" which can be found at
    Zaloguj lub Zarejestruj się aby zobaczyć!
    but it appears to be triggering a lot of antivirus vendors to detect it as a virus. I have recompiled the program and redistributed it without compressing it. I have uploaded the main program's executable file to VirusTotal which is web site that scans a file with multiple antivirus programs and all but two vendors are showing that it's clean as proof that the new file is clean
Zaloguj lub Zarejestruj się aby zobaczyć!
 

Camel1965

Bardzo aktywny
Zasłużony
Dołączył
8 Wrzesień 2010
Posty
42447
Reakcje/Polubienia
36103
Restore Point Creator 6.3 Build 1
June 17, 2017 -- Version 6.3 Build 1
As of this point going further development of the program will be considerably slowed down. In the past new public release versions would be released every fifteen days with public beta versions being released in between, this is going to end. From this point on there may be as much as two months of time (or even more) between new release versions due to personal reasons. There's no big development house behind this program, no large team of developers; it's just me. One single guy who writes this program for donations. Largely I give away this program for free but if you want to, you can donate. At no point do I tell you that you have to donate or even lock you out of parts of the program because you haven't donated. No, that's not my style. Anyways, I'm just here to tell you that development of the program will be slowed considerably from this point on due to personal reasons.

And now onto fixes that are included in this version.
  • Added the ability to assign a maxdays setting at runtime while executing the "-deleteoldrestorepoints" command line switch. This is done by providing "-maxdays=(0-9)" at runtime. This change was scheduled to go live in version 6.2's public release but I've held it back for more testing.
  • Took out much of the unhandled application exception and thread exception handling code and replaced it with simple logging instead along with message that the application is terminating and a process kill command.
  • Fixed a bug in the "Create Restore Point at User Logon" tool in which it didn't delete the task when clicking on the "Stop Making Restore Points" button. Thanks goes out to Bill Boyle for reporting this issue to me.
  • Included a possible fix to the Manage System Restore Storage Space window in which the height and width of the window is incorrectly set on some systems that have weird DPI settings. This would result in some elements on the screen being hidden from view.
  • Merged in new version of the deleteAtReboot class.
  • Merged in version 1.285 of the HTTPHelper.
  • Added logging to the parts of the program that create scheduled tasks to try and figure out why creating tasks for some users fails and results in a program crash. The logging logs the name of the task that's being created.
  • Updated the embedded Microsoft.Win32.TaskScheduler library to version 2.5.26.
  • Removed a bit of code from the Please Wait window that seems to be causing some issues upon startup for some users.
Zaloguj lub Zarejestruj się aby zobaczyć!
 

Jarom

Bardzo aktywny
Zasłużony
Dołączył
23 Wrzesień 2016
Posty
3893
Reakcje/Polubienia
1229
Restore Point Creator 6.3 Build 3

Restore Point Creator 6.3 Build 3

  • Added several additional checks to the WMI namespace functions to check for Null References. Hopefully this puts an end to the issues that two people have been reporting to me.
Restore Point Creator 6.3 Build 2
  • Patched a number of possible Null Reference Exceptions in the WMI code. Thanks goes out to "jenn" for reporting this issue to me
Zaloguj lub Zarejestruj się aby zobaczyć!
 

Jarom

Bardzo aktywny
Zasłużony
Dołączył
23 Wrzesień 2016
Posty
3893
Reakcje/Polubienia
1229
Restore Point Creator 6.3 Build 4
August 10, 2017 -- Version 6.3 Build 4
Fixed a small bug in the setBooleanValueInRegistry() function in which the Boolean value wasn't converted to a String value before the data was passed to the setValueInRegistry() function. This could result in incorrect data being written to the Windows Registry.
Zaloguj lub Zarejestruj się aby zobaczyć!
 
Do góry