summaryrefslogtreecommitdiff
path: root/docs/service/README
blob: a0462129630064ce79b4f8cd5d62ddfd5ffc0191 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Most examples in the web are not correct! Writing a service is a lot
about understanding the state machines involved (between SCM, service
handler in the service and the operating system).

Most frameworks try to abstract too much and set values to defaults
they don't understand (for instance startup groups and order, service
dependencies).

We should try to get to a set of service functions as for the daemon.

The normal foreground mode in the console should also be possible
and act on events:

Good links:
- http://www.codeproject.com/KB/winsdk/console_event_handling.aspx: how
  to handle the events in foreground/console mode
- the Sphynx searchd.cpp: especially service description, console events
- POCO: on some design questions
- Microsoft Knoledge Base: best source as always