Estúdio visual
Se você estiver criando um projeto de instalação com o VS, pode criar uma ação personalizada que chamou um método .NET para iniciar o serviço. Porém, não é realmente recomendável usar a ação personalizada gerenciada em um MSI. Veja esta página .
ServiceController controller = new ServiceController();
controller.MachineName = "";//The machine where the service is installed;
controller.ServiceName = "";//The name of your service installed in Windows Services;
controller.Start();
InstallShield ou Wise
Se você estiver usando o InstallShield ou Wise, esses aplicativos fornecem a opção de iniciar o serviço. Por exemplo, com o Wise, você deve adicionar uma ação de controle de serviço. Nesta ação, você especifica se deseja iniciar ou parar o serviço.
Wix
Usando o Wix, você precisa adicionar o seguinte código xml no componente do seu serviço. Para mais informações sobre isso, você pode verificar esta página .
<ServiceInstall
Id="ServiceInstaller"
Type="ownProcess"
Vital="yes"
Name=""
DisplayName=""
Description=""
Start="auto"
Account="LocalSystem"
ErrorControl="ignore"
Interactive="no">
<ServiceDependency Id="????"/> ///Add any dependancy to your service
</ServiceInstall>