SERVICE_CONTROL_NETBINDREMOVE Компонент для соединения был удален. Необходимо заново считать информацию соединения и отсоединиться от удаленного компонента.
SERVICE_CONTROL_NFTBINDENABLED Ранее отключенное соединение снова включено.
SERVICE_CONTROL_NETBINDDISABLE Ранее включенное соединение теперь отключено.

Если служба использует соединение, необходимо заново прочитать информацию соединения и удалить соединения, которые стали недоступными. Служба реагирует на сетевые изменения, поэтому перезагрузка не требуется.

Windows 2000 добавляет также увеличенную поддержку управления электропитанием. Существует поддержка для перевода системы в нерабочее состояние — память записывается на диск, поэтому возможна более быстрая начальная загрузка системы. Также возможно временно остановить машину, чтобы сократить потребление электроэнергии, при этом система в случае необходимости автоматически пробуждается.

Для всех событий электропитания служба получает управляющий код SERVICE_CONTROL_POWEREVENT с дополнительными параметрами. В параметре отражена причина события. Код причины может говорить о разряженности батареи, о том, что система переходит в приостановленное состояние, или об изменении статуса электропитания. В зависимости от кода причины служба должна замедлить скорость, приостановить фоновые потоки выполнения, закрыть сетевые соединения, закрыть файлы и т.д.

Классы в пространстве имен System.ServiceProcess также имеют поддержку для этих свойств Windows 2000 Служба конфигурируется так, чтобы она реагировала на события паузы и продолжении с помощью свойства CanPauseAndContinue, и задается свойство для управления электропитанием: CanHandlePowerEvent. Службы Windows 2000, которые управляют электропитанием, регистрируются в SCM с помощью метода API Win32 RegisterServiceCtrlHandlerEx().

Задавая значение CanHandlePowerEvent как True, метод

protected virtual bool OnPowerEvent(PowerBroadcastStatus power Status);

будет вызываться, как только изменится статус электропитания. Некоторые из значений, получаемые из PowerBroadcastStatus, перечислены ниже в таблице:

Значение powerStatus Описание
BatteryLow Слабый заряд батареи. Необходимо сократить функционирование службы до минимума.
PowerStatusChange Произошло переключение электропитания от батареи на внешний источник, или мощность батареи опустилась ниже допустимого значения и т.д.
QuerySuspend Полномочия системных запросов перешли в приостановленный режим. Можно отказаться от полномочий или приготовиться к переходу в приостановленный режим, закрывая файлы, разъединяя сетевые соединения и т.д.
QuerySuspendFailed Переход в приостановленный режим был отвергнут системой. Можно продолжать с той же функциональностью.
Suspend Никто не отменил запрос перехода в приостановленный режим. Система скоро будет приостановлена.

Восстановление

Автоматическое восстановление является вопросом конфигурации, оно используется для всех свойств выполняющихся в системе Windows 2000. Если процесс службы разрушается, то служба автоматически запускается снова или конфигурируется специальный файл, или автоматически перезагружается вся система. Обычно существует причина разрушения службы, и нежелательно автоматически непрерывно перезагружать систему, поэтому нужно разнообразить ответы на первую, вторую и последующие ошибки.

Приложения COM+ в роли служб

Начиная с Windows ХР (кодовое имя Whistler), приложение COM+ выполняется как служба. В Windows ХР служба имеет прямой доступ к таким службам COM+, как транзакции, пулы объектов, пулы потоков выполнения и т.д. Если желательно использовать службы COM+ в Windows 2000 как службы Windows, то создаются два отдельных приложения: одно имеет дело с функциями службы, а второе — со службами COM+. Это нам дает некоторые преимущества:

□ Легче создать служебное приложение. Нам не нужно больше иметь дело со специальной установкой службы, так как это выполняется прямо из конфигурации COM+.

□ Приложение COM+ может действовать как служба. Оно автоматически запускается во время начальной загрузки, имеет права учетной записи System и реагирует на управляющие коды службы, которые посылаются из управляющей программы службы.

□ Служебное приложение, создаваемое как приложение COM+, имеет прямой доступ к таким

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату