What does Windows error code 1083 (ERROR_SERVICE_NOT_IN_EXE) mean?

 
Previous Next
ERROR_NO_RECOVERY_PROGRAM ERROR_NOT_SAFEBOOT_SERVICE

ERROR_SERVICE_NOT_IN_EXE

The configured service is not implemented by the service executable

A service process calls StartServiceCtrlDispatcher with a SERVICE_TABLE_ENTRY array that maps service names to ServiceMain callbacks. When SCM starts a service, the process must present the service name it is configured to host. ERROR_SERVICE_NOT_IN_EXE indicates that the executable and SCM service record disagree about that mapping.

Compare the service name in the SCM database with the names in the dispatch table of the deployed binary. This commonly appears after renaming a service, reusing one executable for shared-process services, or deploying a binary from a different product version. The display name is not the same as the service name. Do not fix the problem by changing only the friendly display name; update the actual service identity or the service table so the SCM start request can be routed to the correct ServiceMain callback.

What to inspect

  • Read the SCM service name, not only the display name.
  • Compare it byte-for-name with the SERVICE_TABLE_ENTRY names used by the executable.
  • Verify the executable path points to the intended build and hosting model.

References


Looking for a different code? Search another status or error code.