Prática recomendada para escrever um serviço do Windows de atualização automática

Precisamos criar um serviço do Windows que tenha a capacidade de se auto atualizar.

Três opções vêm à mente,

um segundo serviço que gerencia a recuperação, desinstalação e instalação do primeiro serviço.

Uso de alguma estrutura de terceiros (sugestões bem-vindas. Acredito que o .NET suporte atualizações automáticas para aplicativos de formulários do Windows, mas não para serviços do Windows)

Uso de um modelo de plug-in, em que o serviço é meramente um shell que contém a lógica de atualização e execução, e a lógica de negócios do serviço está contida em uma DLL que pode ser trocada.

Alguém pode lançar alguma luz sobre a solução para este problema?

obrigado

questionAnswers(2)

yourAnswerToTheQuestion