I haven't heard of such a feature in Windows nor have i seen a helper
service pair that would wait for a service on one server and ask it's
counterpart service on another server to continue it's startup (so that your
service can depend on it) or start another service (yours).
If i were you i would just let the service start and poll for the SQL and
then let activities commence when the SQL is available. Note that your
service should cope with SQL server shutdowns and network problems anyways
so you can as well use a (named) mutex (if 1 at a time is enough), event
(any amount of connections at ones) or a semaphore (n simultaneous
threads/connections). Or you could use a thread that performs enqueued
queries. Or ofcourse you could just retry+Sleep(60000) -loop.
Or you could make a helper service that is started after SQL service and
post a message to your service. But ofcourse you won't get the message if
the server was already running when your non-sql-server service starts so
you would end up trying the sql connect anyway...
- Sten