Estoy teniendo este problema al intentar iniciar el servicio que escribí y de verdad no tengo idea de que más puedo hacer para solucionar, puesto que intenté subir el timeout y otras soluciones que "googlee" por allí, pero nada.
El error que arroja el sistema al intentar iniciar el servicio es el siguiente; Error 1053 el servicio no ha respondido a la petición o inicio del control en un tiempo adecuado. No consigo explicación, he revisado el código mil veces, a ver si es que no está iniciando por algún fallo en el inicio del mismo, pero no veo nada. De igual manera les dejo las clases principales por si uds. logran ver la caída.
He intentado corrrer el servicio en una máquina con Windows 7 de 64 bits y otra (la que mas me interesa que corra) con Windows Server 2003 de 32 bits.
Por favor, ayuda! Ya tengo días bloqueado con este problema
P.D.: Si, revisé bien la compilación para cada máquina respectivamente, y verifiqué que el Framework destino fuera .NET 4.0.
P.D-P.D.: Acá les dejo el código a ver. Saludos y muchas gracias!
Program.cs
Código vb:
Ver original
using System; using System.Collections.Generic; using System.Linq; using System.ServiceProcess; using System.Text; using System.Threading.Tasks; namespace WindowsService2 { static class Program { /// <summary> /// The main entry point for the application. /// </summary> static void Main() { //ServiceBase[] ServicesToRun; /*ServicesToRun = new ServiceBase[] { new Service1() };*/ ServiceBase.Run(new Service1()); } } }
Service1.cs
Código vb:
Ver original
using AttLogsManagerApp.App; using System; using System.Collections.Generic; using System.ComponentModel; using System.Configuration; using System.Data; using System.Diagnostics; using System.Linq; using System.ServiceProcess; using System.Text; using System.Threading.Tasks; using System.Timers; namespace WindowsService2 { public partial class Service1 : ServiceBase { public Service1() { InitializeComponent(); } private bool brake = true; protected override void OnStart(string[] args) { brake = true; while (brake) { double Seconds = Convert.ToDouble(ConfigurationManager.AppSettings["ExecutionTime"]); System.Timers.Timer aTimer = new System.Timers.Timer(); aTimer.Elapsed += new ElapsedEventHandler(runApp); aTimer.Interval = TimeSpan.FromSeconds(Seconds).TotalMilliseconds; aTimer.Enabled = true; } } protected override void OnStop() { brake = false; } private static void runApp(object source, ElapsedEventArgs e) { Daemon app = Daemon.getInstance(); app.run(); } } }
Cualquier cosa estoy a la orden para facilitarles otra info necesaria, yo ya había probado el servicio como una aplicación de consola y funcionaba de maravilla, luego de implementarlo dentro de la platilla de servicios, fue que me encontré con este fallo.
Saludos!