Когда я запускаю свой сервис без запускаемого параметра, он останавливается сразу после запуска. Когда я передаю параметр некоторому int, он всегда работает в фоновом режиме, все нормально.
Этот сервис просто периодически удаляет старый файл. Я пытаюсь передать значение по умолчанию, но безуспешно.
protected override void OnStart(string[] args)
{
bool parseOk = false;
base.OnStart(args);
parseOk = int.TryParse(args[0], out dayLimit);
if (!parseOk) dayLimit = 2;
// Update the service state to Running.
ServiceStatus serviceStatus = new ServiceStatus()
{
dwCurrentState = ServiceState.SERVICE_RUNNING
};
SetServiceStatus(this.ServiceHandle, ref serviceStatus);
// Set up a timer that triggers every minute.
System.Timers.Timer timer = new System.Timers.Timer
{
Interval = 3600000 // 3600000 milisecond = 3600 seconds = 1hrs
};
timer.Elapsed += new System.Timers.ElapsedEventHandler(this.TimerSuppress_Tick);
timer.Start();
}
Сообщение, которое я получаю, когда он останавливается: «Служба на локальном компьютере установлена и остановлена. Некоторые службы автоматически останавливаются, если они не используются другими службами или программами ». Почему это остановить? Могу ли я это исправить и выбрать между значением по умолчанию и параметром запуска?