Question about Updater Aware CAB Application

Sep 8, 2007 at 4:36 PM
I have an appliation that uses CAB, and I currently update this application using the updater application block and the Updater Agent. It works great..I made a slight modification to make it talk to a java web service, but besides that it worked out of the box.

I would like to make my CAB application updater aware, but am quite confused by the sample app provided with the updater application block. If anyone has done this and could give me a really short over view of how to get started that would be great. Specifically I don't quite understand how the queueing works in the sample (as opposed to calling the web service to get the manifest list, like the updater application).

Perhaps this is documented some where and I missed it, in that case a documentation reference would be great.

Sep 10, 2007 at 2:55 PM

The Ipc library and the p2p message queue is used just for inter-process communication between the updater agent and the client application.
From your client application you should just use the UpdaterAgent.common lib to interact with the updater agent, it will use Ipc in a transparent way for you.
In order to do this, your client application must create a new NotifierClient using the same application-id included in the manifest (due to this app-id the updater agent knows who should be notified if there are new updates available or an update installation is in progress), and subscribing to the UpdatesAvailable and UpdatingInProcess events.
As you are working in a CAB Application, you can relay on the notification-broker to propagate the events, and you should create the NotifierClient within your RootWorkItem as shown in the sample app.
From the event handlers depending on your app status you can decide if you want to download the available updates or not, and if you want to pospone the new update installation until the app completes a critical task or just close your app and continue with the installation.
Sep 12, 2007 at 1:14 AM

Thank you very much for your explanation. I have been swamped so have not got back to it yet, but am sure your tips will help.