понедельник, 11 августа 2008 г.

Сервисы

Дорогой блог!

Сегодня я расскажу тебе о службах. Служба -- это такая специальная программа, у которой нет окошка и она работает сама по себе. Еще службы называются Windows Services.
В C#, на котором я пишу программы и сервисы, можно управлять сервисами из других программ. Микрософт говорит, что для этого есть хороший класс ServiceController. Он позволяет запускать службы и останавливать их, а еще отправлять им всякие команды. Для этого есть метод ExecuteCommand, в который можно передать код команды. И сервис должен уметь обрабатывать такие команды, для этого надо написать в нем метод OnCustomCommand. Вот, и все это вместе хорошо и красиво работает.

Дорогоуважаемые программисты! Когда вы будете писать свои сервисы, не забудьте, про все эти замечательные методы и про то, что они требуют разных разрешений. А еще не забудьте, что параметрами метода ExecuteCommand могут быть только целые числа от 128 до 256. А если вы вдруг об этом забудете, то добрый .Net напомнит вам об этом с помощью InvalidOperationException и еще скажет примерно вот так: "Невозможно управлять <...> службой на компьютере '<...>'.".

До скорых встреч!

2 комментария:

Olegg21 комментирует...

Спасибо на добром слове!!!
А то, понимаешь, передавал туда двойку ... (onCustomCommand)
- выручил!

Анонимный комментирует...

Автор, спасибо большое. образумил по поводу диапазона передаваемых команд. А я уже было отчаялся :-)