Whether this is a good idea or not really depends on how much you do. A full system restore point is significant - it takes time to create disk space for storing and adding recovery points to the interface, possibly pushing earlier recovery points out of storage.
So, if your update really only changes your application (i.e. the data stored in it, the binary files that make it up, the registry entries for it), then this is actually not a change in the system level, and I voted for no point recovery. You can emulate functionality simply by backing up the parts that you are changing, and offer a recovery option for the backup. My opinion is that System Restore should consist in restoring the system when global changes are made that can lead to its damage (application installation, etc.).
The counter argument that you just need to use the system service does not contain water for me; I am worried that if you need to release several updates for your application, the set of system restore points may become so large that important, real "system" updates may be supplanted or lost in noise.
source share