Restore Point Creator — Beta Testing

A Public Beta version is being distributed. If you want to test it for me, you can download it using one of the links below. It's not ready for distribution but if you are having issues with the latest public version I suggest you download the Public Beta version and see if the fixes contained in it fix the issues you're having.

To instruct the program to download the release candidate versions, go to Program Options/Settings -> Software Update Settings -> Program Updates Channel -> Public Betas to receive new beta and release candidate updates. Then go to System Restore Point Utilities and click on the Check for Updates. The program will then tell you that you have a new version to download along with the changes to the public beta versions.

Please note that development is pretty fast in the beta channel and that new builds are released as soon as new code has been added. So if you don't like lots of updates and prefer updates to be a twice-a-month kind of thing, the beta channel isn't for you.


You can download the beta version using one of the URLs below depending upon which type of distribution package you want.

Version 6.4 Build 40 (Public Beta 31)

Public Beta 31 Changes
  • Includes some minor code cleanups.
  • Removed a lot of low level API calls to determine if a user is part of the Administrator group and replaced it with much simpler native .NET API calls.
  • Included a call to the sort command in the getNewestSystemRestorePointID() function.
  • Improved and optimized the code of the getRestorePointName() function by no longer requiring a For-Each loop.
Public Beta 30 Changes
  • Added code to disable the Stable Update Channel if the current version is a Public Beta or Release Candidate version.
  • Includes better and cleaner OS version detection code.
Public Beta 29 Changes
  • Added the ability to save the sorting order for the Mount Shadow Copy tool.
Public Beta 28 Changes
  • Added sorting to the Mount Volume Shadow Copy tool's listbox.
Public Beta 27 Changes
  • Completely rewrote all of the application log file handling code. All writes to the log are immediately written to disk. Writing to the log file now involves opening the file, reading it, adding to it, and writing it out.
Public Beta 26 Changes
  • Fixed a bug in the log export tool in which it was getting the log data from disk when it should have been getting it from memory. Added a call to the log file save function before exporting the log to disk.
  • Fixed a crash bug on the Application Event Log window that occurs if the log file doesn't exist.
  • Put in code into the event log code to check for the existence of the log file, if it doesn't exist we create one.
  • Added a file system watcher to update the log file size on the Application Event Log window in real time.
Public Beta 25 Changes
  • Changed the text that prepended to an imported log entry.
Public Beta 24 Changes
  • Put in code to disable the log file cleaning function if you launched the application event log window using one of the other Start Menu shortcuts that are provided to users.
  • Added notations to imported log entries that it was an imported log entry.
Public Beta 23 Changes
  • Added the ability for the log importer to tell you how many log entries were imported.
Public Beta 22 Changes
  • Fixed a bug in the runtime task setup in which there were double log entries.
  • Added an additional update channel check if you are running a beta version.
Public Beta 21 Changes
  • Made it so that log file conversion occurs on a background thread while displaying a Please Wait panel to tell the user that work is being done.
Public Beta 20 Changes
  • Fixed a bug on that only occured on Windows 7 systems in which the areWeRunningAsATask() function would incorrectly return a False value.
Public Beta 19 Changes
  • Fixed a bug in the Application Event Log window in which the error icon wasn't being shown in the list of events.
  • Added some additional checks to the program update routine to check for the existence of an already existing new application binary file.
  • Fixed a bug in the function that writes an exception to the log file in which it didn't set the changed bit to True so the saveLogFileToDisk() function wouldn't write the log to disk.
Public Beta 18 Changes
  • Added a check to see if the program is running as the SYSTEM user and if so the path access check function will always return True.
  • Fixed the functions that convert Date objects to UNIX timestamps and back again. There were some serious conversion issues.
  • Removed a time conversion that wasn't needed on the Application Event Log window.
  • Added a call to the function that saves the log to disk to the the wmi.createRestorePoint() function.
  • Added calls to the function that saves the log to disk to several parts of the application startup routine.
  • Included a command line switch for debugging log file writing.
Public Beta 17 Changes
  • Applied some additional fixes to the checkByFolderACLs() function.
Public Beta 16 Changes
  • Fixed a bug in the log conversion code in which the log ID numbers were starting off at zero.
Public Beta 15 Changes
  • Fixed a bug in which the Application Event Log Data wasn't updated with any new entries in the Application Event Log window until after a program reload. This was due to the Application Event Log window loading data from disk before the new data was written to disk.
Public Beta 14 Changes
  • Changed the order in which errors are logged. The error is logged first then the exception data.
  • Added some calls to the saveLogFileToDisk() function throughout the program in situations in which the program needs to be abruptly aborted.
  • Made it so that writing to the application log doesn't trigger a write to disk unless absolutely required. Exiting the program by normal means will always trigger a write of the log to disk.
Public Beta 13 Changes
  • Fixed a bug in which the log count was shown to be 0 during the log export routine due to a missing line of code in the log export function.
Public Beta 12 Changes
  • Fixed a bug in which old log data wasn't being loaded by the program due to a code sequence issue in which the name of the log file wasn't being placed in memory before the function that loads the data from disk.
Public Beta 11 Changes
  • Made it so that privilege checks to see if the program can write the application log file is done only once per run time since this check includes attempting to write an empty file to disk.
Public Beta 10 Changes
  • Fixed the checkByFolderACLs() function, it was failing to check to see if the user group that the user belongs to was allowed access.
Public Beta 9 Changes
  • Included a couple of fixes to the log file conversion code.
Public Beta 8 Changes
  • Lets try the new log file type code again.
Public Beta 7 Changes
  • Reverted all changes back to the old way of storing application log data.
Public Beta 6 Changes
  • Removed a bit of debug code.
Public Beta 5 Changes
  • Fixed a crash issue on load.
Public Beta 4 Changes
  • Changed the way that the application stores application log data from the Windows Event Log to its own log file format.
Public Beta 3 Changes
  • Removed an unneccessary block of code in the writeToSystemEventLog() function.
  • Fixed an InvalidCastException that could be thrown due to an incurrent use of the "+" where a "&" should have been used.
Public Beta 2 Changes
  • Made it so that the update notification window is the top most window.
Public Beta 1 Changes
  • Included code to get the parent process.
  • Included code to elevate the priority if the program was auto-elevated by the Task Wrapper.

  • Dl Cabling

    The ‘manage system restore storage space’ is greyed out…………

    • trparky

      Are you running Windows XP?

  • Dl Cabling

    Yes

  • Peter

    I found that RPC crashes on volumes that have *zero shadow storage* *allotted*. (The crash is in the command Manage System Restore Point Space and then clicking one of the volumes with zero shadow storage. My solution was to allot 1% from the System Control Panel on all volumes (short of remembering what volumes not to click).
    I found that RPC does not show the Manage button in View Disk Space Usage for volumes that have *zero shadow storage* *used*. This is not crashing, but strange.
    This is for version 2.6.3 and I reported on the Uninstall report page.
    Really and sincerely many thanks for RPC.

    • Peter

      Really and sincerely many thanks for RPC. (this means positively I installed version 2.6.3 again immediately after Uninstall and after having isolated the issue.)

      • trparky

        I have pushed out an update to correct the crash issue in the Manage System Restore Point Space tool. Build 10 is out now. The changelog reflects you as being the person who pointed the issue out to me.

  • Georges PapyNet

    Beta 8.2.6
    It’s OK for me

    But …. 3 times
    Running As: Système
    Message: (10,8):LogonType:
    Exception Type: System.Runtime.InteropServices.COMException

    The exception occurred à Microsoft.Win32.TaskScheduler.V2Interop.ITaskFolder.RegisterTaskDefinition(String Path, ITaskDefinition pDefinition, Int32 flags, Object UserId, Object password, TaskLogonType LogonType, Object sddl)
    à Microsoft.Win32.TaskScheduler.TaskFolder.RegisterTaskDefinition(String Path, TaskDefinition definition, TaskCreation createType, String UserId, String password, TaskLogonType LogonType, String sddl)
    à Microsoft.Win32.TaskScheduler.TaskFolder.RegisterTaskDefinition(String Path, TaskDefinition definition)
    à Restore_Point_Creator.My.MyApplication.addRunTimeTask(String taskName, String taskDescription, String taskEXEPath, String taskParameters)

    • Georges PapyNet

      it’s = with beta 3 (8.2.7)

      • Georges PapyNet

        Sorry
        it’s = with beta 5 (8.2.9

        • trparky

          What? Are you saying that the issue still exists in Beta 5? I don’t understand the “it’s = (insert version here)” part.

          • Georges PapyNet

            It’s OK avec la 2.8.10 (beta 6)
            W7 SP1 64 bits et W8.1 64 bits
            Georges

  • Vanya

    Hi there! Thanks for good prog! Is it possible to add such an option for “Protecting created Restore Point from automatic system deleting?”
    I have not found a something like “protection option from removing points” among Windows 7 itself, perhaps it can be done standard tools? Anyway I would like to see this option in your program! Thank you!
    I use Version 2.8 Build 4 stable
    Windows 7 Home Basic 64x

  • Georges PapyNet

    Version 2.8.11
    It’s OK for me
    W8.1 et W7 64 bits
    Bien cordialement
    Georges

    • Georges PapyNet

      Version 2.8.12

      It’s OK but a friend of W8.1 Dell IT: :

      “Message: La référence d’objet n’est pas définie à une instance d’un objet.
      Exception Type: System.NullReferenceException

      The exception occurred at Restore_Point_Creator.My.MyApplication.MyApplication_Startup(Object sender, StartupEventArgs e)
      at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.OnStartup(StartupEventArgs eventArgs)
      at Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase.DoApplicationModel()”

      An idea, a track because no repair has solved the problem and we do not know what you are using Visual C ++

      Thanks

      • trparky

        Alright, download this file…
        http://www.toms-world.org/beta/RestorePointCreator.pdb

        That’s the debug symbol file for the program. Simply download it, put it into the same folder as the program, and then run the program again. When it crashes it should give far more information in terms of crash data.

        No, it’s not C++ that I write the program in, I use Visual Basic.NET (believe it or not).

        • Georges PapyNet

          Hello!
          Sorry
          I do not open .pdb
          Georges

          • trparky

            You don’t open a PDB file, you simply put it into the program’s folder and when the program crashes the .NET debugger and exception handlers now has the PDB file to get the debug symbols from.

          • Georges PapyNet

            Hello!
            OK I do this tomorrow
            my friend’s house

            OK je fais cela demain
            chez mon ami