diff --git a/src/Core/ServiceWrapper/Main.cs b/src/Core/ServiceWrapper/Main.cs index a47f3f4..192e548 100644 --- a/src/Core/ServiceWrapper/Main.cs +++ b/src/Core/ServiceWrapper/Main.cs @@ -718,7 +718,22 @@ namespace winsw if (s is null) ThrowNoSuchService(); - s.StartService(); + try + { + s.StartService(); + } + catch (WmiException e) + { + if (e.ErrorCode == ReturnValue.ServiceAlreadyRunning) + { + Log.Info($"The service with ID '{descriptor.Id}' has already been started"); + } + else + { + throw; + } + } + return; }