Deploying an UPDATEABLE Windows Service with Settings Program

I am trying to determine the best way to accomplish the following:
     I have a windows service and a settings program for this service.

I need to be able to do the following:
     With one installer service, install the service, and the settings program for the service, add it to the start menu, and create an icon on the task bar.
     The toughest part, is that I would like this set of programs to be updateable, and if possible, have the updates automatically checked for and downloaded, and the possibility to roll back an update.

This is an in-house set of programs that is rolled out to multiple servers, so the cheaper the solution, the better.
sjamal_hsjAsked:
Who is Participating?
 
-eVe-Connect With a Mentor Commented:
0
 
SriVaddadiCommented:
Update must be available at a particular location so that it could be downloaded on to the server. Lets say your update is available on "Serv1"

1. You could poll to the Serv1 from your windows service and check the time stamp of the application and download it as required.

2. Run a service on Serv1 and when an update is available, the service should publish an event and all subscribers get the message and they could download the latest update.

IOW solution could be

1. Polling model
2. Publish - Subscriber model
0
 
-eVe-Commented:
Most of this is handled by "ClickOnce". It is not well supported by "other" browsers but 've used it for almost two years now and I like it. Just don't publish your updates with VS 2010 Beta2... or any other beta.
0
 
sjamal_hsjAuthor Commented:
Clickonce cannot be used to publish a service. Also, do you have a sample of this polling model. Also, what method do I need to use for the install?

Thanks
0
 
SriVaddadiCommented:
If you are talking about installing windows service then you are supposed to use installutil tool to install and uninstall windows service.

You should be making a remote call to your windows service. You could use WCF service and host it in windows service or you could even use .net remoting
0
All Courses

From novice to tech pro — start learning today.