what is the right way to exit Windoes Service OnStart if configuration is wrong and nothing to do in
- by matti
Is something like this ok?
protected override void OnStart(string[] args)
{
if (SomeApp.Initialize())
{
SomeApp.StartMonitorAndWork();
base.OnStart(args);
}
}
protected override void OnStop()
{
SomeApp.TearDown();
base.OnStop();
}
Here Initialize reads a config file and if it's wrong there's nothing to do so service should STOP! If config is ok StartMonitorAndWork starts:
Timer(new TimerCallback(DoWork), null, startTime, loopTime);
and DoWork polls database periodically.
The question is: "Is exiting OnStart without doing nothing enough if Initialize returns false?
OR should there be something like this:
private void ExitService()
{
this.OnStop();
System.Environment.Exit(1);
}
protected override void OnStart(string[] args)
{
if (ObjectFolderApp.Initialize())
{
SomeApp.StartMonitorAndWork();
base.OnStart(args);
}
else
{
ExitService();
}
}
Thanks & BR - Matti