How to update an installed Windows service?

shenku picture shenku · Mar 4, 2014 · Viewed 17.5k times · Source

I have written a Windows service in C#.

I have since installed it on my machine, and it runs just fine.

When you install a service, does the exe get copied somewhere? Or does it point to my bin folder?

This is for me to know that when I update my code from time to time, do I have to uninstall and re-install my service to update it?

Answer

J0e3gan picture J0e3gan · Mar 4, 2014

If the Windows service's location has not changed and the name of its executable has not changed, you should not have to uninstall and reinstall it. You can simply stop the service with net stop, update its executable with a new version, and start it again with net start. This approach worked reliably for me for many months.

If you want to update your Service automatically, you can use a framework such as Google Omaha. This is the technology which Google use to update Chrome. It works well with Services because it runs silently in the background, just like a Service. This article gives more information about using Omaha to auto-update a Service.