Merge pull request #82 from oleg-nenashev/issue-55

Better diagnosis in install and uninstall commands
pull/90/head
Oleg Nenashev 2015-02-03 00:07:59 +03:00
commit 0c20961c21
1 changed files with 11 additions and 0 deletions

11
Main.cs
View File

@ -561,6 +561,14 @@ namespace winsw
args[0] = args[0].ToLower(); args[0] = args[0].ToLower();
if (args[0] == "install") if (args[0] == "install")
{ {
// Check if the service exists
if (s != null)
{
Console.WriteLine("Service with id '" + d.Id + "' already exists");
Console.WriteLine("To install the service, delete the existing one or change service Id in the configuration file");
throw new Exception("Installation failure: Service with id '" + d.Id + "' already exists");
}
string username=null, password=null; string username=null, password=null;
bool setallowlogonasaserviceright = false; bool setallowlogonasaserviceright = false;
if (args.Count > 1 && args[1] == "/p") if (args.Count > 1 && args[1] == "/p")
@ -633,7 +641,10 @@ namespace winsw
if (args[0] == "uninstall") if (args[0] == "uninstall")
{ {
if (s == null) if (s == null)
{
Console.WriteLine("Warning! The service with id '" + d.Id + "' does not exist. Nothing to uninstall");
return; // there's no such service, so consider it already uninstalled return; // there's no such service, so consider it already uninstalled
}
try try
{ {
s.Delete(); s.Delete();