From June 2003, the Microsoft Updater Application Block for .NET allowed self-updating programs to be written. The framework included post-processors, specifically for the purpose of running transformations against the updated program's data after the updating.
http://web.archive.org/web/20030701151934/http://msdn.microsoft.com/library/en-us/dnbda/html/updater.asp
Would you like to develop "self-updating" applications? If so, the Updater Application Block for .NET is for you.
The Updater Application Block is a .NET component that you can use to detect, validate, and download application updates deployed in a central location. By using the Updater Application Block, you can keep desktop applications up to date with little or no user intervention. You can also extend the Updater Application Block to use custom classes for downloading and validating files, performing post-deployment configuration tasks, and controlling the update process.
... A post-processor is a class that performs any post-deployment configuration tasks that your updated application might require (such as editing registry values, creating message queues, and so on).
Steps 3 to 5 in "Updating applications with the Updater Application Block" appear to anticipate and invalidate all claims in the current filing:
*3. The application updater periodically initiates the update process. When this happens, the application updater uses the specified downloader to copy the manifest file for each application specified in the application configuration file to the client. If updates are available, the downloader copies the updated files to a temporary directory on the client.
*4. The application updater loads the specified validator and validates the downloaded files. If the files are valid, they are copied to the appropriate application folder and the configuration file for the application launcher is updated to reflect the new version.
*5. If a post-processor was specified in the manifest, the application updater loads and executes it.
Apart from the trivial modification in the present filing of being specifically used to downgrade or delete an application, this Microsoft invention appears to completely invalidate the present patent application.