Export (0) Print
Expand All

Configuring Services.exe to Load a Standalone Service

Windows CE .NET

By default, all service DLLs are loaded into the same copy of Services.exe that is started on device initialization. In certain cases it may be preferable to isolate a service by having a new copy of Services.exe created explicitly for it. The main reason for isolating a service is to ensure that it will not corrupt other services.

Isolating a service is useful for debugging because locating a corruption in a process with only one service running is easier than trying to find a problem with multiple services running concurrently. Running a standalone services also provides increased reliability.

For Windows CE .NET 4.2 and later you can configure Services.exe to load a service into a separate copy of Services.exe by setting the service's context flag in the registry.

To configure Services.exe to load a service in standalone mode

  1. Under the HKEY_LOCAL_MACHINE\Services\<Service Name> registry key for your service, set the Context value of type REG_DWORD to SERVICE_INIT_STANDALONE (0x02). The following example shows the registry settings for a service named "MyService":

    HKEY_LOCAL_MACHINE\Services\MyService\Context=dword:0x00000002

  2. Services.exe will pass the context flags to the service's xxx_Init function in the dwData parameter. If the service does not support running in standalone mode, xxx_Init should return FALSE if the SERVICE_INIT_STANDALONE flag is passed on startup.

See Also

Services.exe | Configuring Services.exe to Load a Standalone Service | Shutting down a Standalone Service | xxx_Init | Limitations to Standalone Services


 Last updated on Saturday, April 10, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.

Show:
© 2014 Microsoft