Daily Archives: October 24, 2004

There goes Dare

One of the cool things about working at Microsoft is that there are so many interesting ways to pursue your interests. Recently we have seen people who are very strongly associated with particular technologies move to something totally different – Dan Fernandez Eric Gunnerson (sorry, I was stuck in C#, too) and Keith Ballinger come to mind the most quickly. Dare Obasanjo wrote that he is moving from the xml team to go work on the back end of things related to social software – which has been an interest of his. Opportunity abounds. Don’t think this means that you can just post whatever nonsense comes to mind about XML! I’m sure he’ll continue to keep us all in line 🙂 . Have fun, Dare!!

My final thoughts for today on the Application Updater Block

I realize I made a bad design decision for using this method. (previous post)

I did not want the application constantly polling for a new version so I just check once before I start up the app. Unfortunately, the process of checking (not even downloading) takes about 8 seconds (on my fast client machine). So everytime they start the app they have to wait. Which is why you want it to happen in the background. Maybe the polling isn’t so bad after all.

I don’t like the options. I would like to find a happy medium. But for now because I have spent so much time trying to get this worked out (was it even worth it) and my client needs me to move on to other projects, I’m going to have to leave it. So all in all I’m very unhappy that I went this route. I wish I had known enough about the process to realize this problem in advance.

I never really discussed this part of my design with Chris Kinsman when he offered to work out the other issue I was having. I probably should have. He knows this stuff better than almost anyone.

The people who are in-house hitting the web server locally are going to be the big losers with this solution. The people who are using this application over the web (the back end is a web service) will definitely benefit since we couldn’t figure out how to push out updates to them. So I may end up modifying this again to handle local connections differently.

Posted from BLInk!

Complex deployment

I have a very complicated application to deploy and update. I mentioned a while ago that Chris Kinsman helped me overcome a limitation of the application updater block. After that I had to work pretty hard to get it to work with an insane set of rules and layers of applications. A few things I had to deal with:

1) I did not want to download complete applications (including all dll’s) for every update. THerefore I needed to have a special folder to dump updates into and launch my application from.
2) I have three different related applications to launch and wanted them all to be responsible for downloading the same bits. Therefore, they each had to have knowledge of the latest version downloaded even if that was from a different application
3) My webserver location is dynamic
4) complicated configuration issues abounded
5) I had to do a lot of customization of the updater block to get it to work my way.

When all of that was said and done I still had a huge task ahead of me: creating an MSI that would install this whole crazy mess. I have been working on this all day and am near the end. I just learned how to use the launch conditions to force WSE2 to be installed as well.

It is amazing how entire days get soaked up with things like this. However, now I have a very intimate understanding of the Application Updater Block. I have not looked at ClickOnce, but I sure hope I’ll have as much access to make changes I want as I do with the raw code supplied with the AUB.

I miss weekends.

Posted from BLInk!