Inicie o Serviço Windows programaticamente
Estou tendo um problema com um aplicativo que estou criando. Estou tentando iniciar um serviço windows através do meu aplicativo c #. Quando clico no botão Iniciar, parece que tudo passa, mas quando faço logon no servidor, o serviço ainda não mostra que está em execução. No entanto, na segunda vez em que o executo, recebo uma exceção informando que a instância do serviço já está em execução. Novamente, quando entro no servidor, o serviço parece estar parado. Alguém já viu isso
qui está o meu códig
try
{
while (reader.Read())
{
int timeoutMilliseconds = 1000;
string serviceName = reader["ServiceName"].ToString();
string permission = reader["Permission"].ToString();
if (permission == "E")
{
lblServStartSuccess.Visible = true;
ServiceController service = new ServiceController(serviceName);
TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds);
service.Start();
service.WaitForStatus(ServiceControllerStatus.Running, timeout);
}
else
{
lblServErrorStart.Visible = true;
}
}
}
catch (Exception ex)
{
Response.Write(ex.ToString());
}
EDITAR Aqui está a exceção que recebi em um serviço:
System.InvalidOperationException: o serviço administrativo do Logical Disk Manager não foi encontrado no computador '.'. ---> System.ComponentModel.Win32Exception: o serviço especificado não existe como um serviço instalado --- Fim do rastreamento da pilha de exceção interna
Sei que o serviço existe. Preciso adicionar algo na frente do serviço para informar em qual servidor procurar?