CPM asks to reboot after each "cxomplete uninstall" something about files it can't delete..... I underrstand this, but it really inconviniant (as of current version) to update a program. I mean if you just install new version over older one CPM will list older one as "Partially uninstalled", and if you try to uninstall that you're most likely delete the new version.
Now if you uninstall the older version first it'll most likely will ask you for a reboot (due to currentlky undeletable files), and if you'll install new version without rebooting chances are you'll lose part of the program in next reboot due to "cleaning" after old version.............. So currently to update a program you'll need to uninstall old version, reboot, then install new version...... isn't that kinda needlessly complicated?
Suggestions to fix: 1) add "Update mode" or 2) ask user if he \ she is updating the program or not.
Things to consider: 1) handling auto update feature in some programs. 2) installing patches to games \ programs