Inno Setup for Windows service?
c#, inno-setup, windows-services
Solution
You don't need `installutil.exe` and probably you don't even have rights to redistribute it.
Here is the way I'm doing it in my application:
using System;
using System.Collections.Generic;
using System.Configuration.Install;
using System.IO;
using System.Linq;
using System.Reflection;
using System.ServiceProcess;
using System.Text;
static void Main(string[] args)
{
if (System.Environment.UserInteractive)
{
string parameter = string.Concat(args);
switch (parameter)
{
case "--install":
ManagedInstallerClass.InstallHelper(new string[] { Assembly.GetExecutingAssembly().Location });
break;
case "--uninstall":
ManagedInstallerClass.InstallHelper(new string[] { "/u", Assembly.GetExecutingAssembly().Location });
break;
}
}
else
{
ServiceBase.Run(new WindowsService());
}
}
Basically you can have your service to install/uninstall on its own by using `ManagedInstallerClass` as shown in my example.
Then it's just matter of adding into your InnoSetup script something like this:
[Run]
Filename: "{app}\MYSERVICE.EXE"; Parameters: "--install"
[UninstallRun]
Filename: "{app}\MYSERVICE.EXE"; Parameters: "--uninstall"
Problem
I have a .Net Windows service. I want to create an installer to install that windows service. Basically, it has to do the following: - Pack `installutil.exe` (Is it required?) - Run `installutil.exe` MyService.exe - Start MyService Also, I want to provide an uninstaller which runs the following command: ``` installutil.exe /u MyService.exe ``` How to do these using Inno Setup?