A Service API

Environment: VC6, NT/Windows 2000

Service API…

The Service API consists of a set of functions and a couple of callback functions that must be supported. Together, these functions allow an application to run independent of any logged-on user.

At its heart, a service application supports at least three functions:

  • The main function. This is just a standard main function with arguments like any console-mode, Win32 application. The main function must call certain functions in a timely manner.

  • VOID main( DWORD dwArgc, LPTSTR* lpszArgv );

  • The ServiceMain function. This is the entry point for the service. The ServiceMain function must have the following prototype, though it can have a different name:

  • VOID ServiceMain( DWORD dwArgc, LPTSTR* lpszArgv );

  • The control handler (Handler) function. This function receives requests for the service. The control handler function must have the following prototype, though it can have a different name:

  • VOID WINAPI Handler(DWORD fdwControl );

    Or

    DWORD WINAPI HandlerEx(

    DWORD dwControl, // requested control code

    DWORD dwEventType, // event type

    LPVOID lpEventData, // event data

    LPVOID lpContext // user-defined context data

    );

The HandlerEx function is primarily useful for services that need to manage multiple services from a single control handler or for a service that needs to react to device notifications.

Downloads

Download source - 38.4 Kb

More by Author

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Must Read