1) Можно запросить дополнительное время на шатдаун через RequestAdditionalTime(extraTimeslot), но в любом случае это не больше чем HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WaitToKillServiceTimeout. По-умолчанию 20 секунд.
2) Можно попробовать прописать SQL в зависимости твоего сервиса.
Вот так например. Не знаю только учитываются ли зависимости при шатдауне.
Еще можно проверять, запущен ли SQL-ный сервис, e.g.
ServiceController sc = new ServiceController(SERVICENAME);
sc.Status == ServiceControllerStatus.Running
Здравствуйте, RushDevion, Вы писали:
RD>1) Можно запросить дополнительное время на шатдаун через RequestAdditionalTime(extraTimeslot), но в любом случае это не больше чем HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WaitToKillServiceTimeout. По-умолчанию 20 секунд.
RD>2) Можно попробовать прописать SQL в зависимости твоего сервиса. Вот так например. Не знаю только учитываются ли зависимости при шатдауне.
RD>Еще можно проверять, запущен ли SQL-ный сервис, e.g.
RD>RD>ServiceController sc = new ServiceController(SERVICENAME);
RD>sc.Status == ServiceControllerStatus.Running
RD>
помоему лучше пускай он киляется нафих.
Здравствуйте, UberPsychoSvin, Вы писали:
UPS>2) Сервис зависит от Sql сервиса. При перезагрузке винда отрубает его перед нашим сервисом, и в лог валятся ошибки. Как такую ситуацию нормально обработать?
Выставить зависимости. Тогда Windows будет сначала рубить твою службу, затем службу SQL Server.
... << RSDN@Home 1.2.0 alpha 5 rev. 66>> SQL Express 2012