sodcalculator

10 Tech How-To

Fix Error 1051: Stop Control Sent to a Service in Windows 10

Guide 10-31666 · Updated · Step by step

Error 1051 (“A stop control has been sent to a service that the specified service has not started”) appears when Windows tries to stop a service that is not currently running. The fix is to start the service first, or correct the service’s startup type and dependencies so it runs when expected. Below is a complete guide to resolving the error, including the background, step-by-step fixes, and common pitfalls.

What Does Error 1051 Mean?

Windows services are background programs that run without a user interface. When you (or an application) attempt to stop a service that is already stopped, Windows returns error 1051. This is not a sign of corruption or malware—it simply means the service’s current state does not match the command.

For example, if you open the Services console (services.msc), right-click a service that is “Stopped,” and choose “Stop,” you’ll get error 1051. The same happens if a script or program sends a stop command without first checking the service status.

Why Does Error 1051 Occur?

The most common causes are:

  • Manual startup type: The service is set to “Manual” and hasn’t been started by any process.
  • Dependency failure: A service that this one depends on failed to start, so this service never started.
  • Disabled service: The service is disabled in the registry or Group Policy, so it cannot start.
  • Incorrect command: A script or scheduled task issues a stop command without checking status first.
  • Service not installed correctly: The service entry exists but the executable is missing or misconfigured.

How to Fix Error 1051

Follow these steps in order. Most cases are resolved by the first two.

  1. Start the service manually: Press Win + R, type services.msc, and press Enter. Find the service in the list, right-click it, and choose Start. If it starts without error, the issue is that something tried to stop it while it was already stopped.
  2. Set the startup type to Automatic (or Automatic (Delayed Start)): Right-click the service, select Properties, change the “Startup type” to Automatic, click Apply, then click Start if it’s still stopped.
  3. Check dependencies: In the service’s Properties, go to the Dependencies tab. Note the services listed under “This service depends on the following system components.” Ensure each of those is running. If any are stopped, start them first.
  4. Enable the service if it is disabled: Open the Properties and look at the “Startup type” drop-down. If it shows Disabled, change it to Manual or Automatic and click Apply.
  5. Use the command line: Open Command Prompt as Administrator and run net start <ServiceName> to start it, or sc start <ServiceName>. Replace <ServiceName> with the actual service name (not the display name). You can find the service name in the Properties window.
  6. Repair the service executable path: In the Properties, check the “Path to executable” field. If the file is missing or the path is wrong, you’ll need to reinstall the program that owns the service or correct the path manually (requires registry editing—back up first).

Common Scenarios and Specific Fixes

Scenario 1: You’re trying to stop a service that’s already stopped. This is the most common. Simply start the service first if you need it running, or ignore the error if you intended it to be stopped. If a script or application repeatedly triggers this, modify the script to check the status before stopping.

Scenario 2: The service is stuck in “Starting” or “Stopping.” Sometimes the service state is not updated. Restart the computer, or use sc query <ServiceName> to see the actual state. If it’s stuck, you may need to kill the process or wait for the timeout.

Scenario 3: The service is set to “Automatic” but still not running. This usually means a dependency failed. Check the Windows Event Log (Event Viewer > Windows Logs > System) for errors from the service or its dependencies. The error code will point to the root cause, such as a missing file or a timeout.

What to Do If the Service Won’t Start

If starting the service gives a different error (like 1053 or 1068), the problem is deeper. Here are the next steps:

  • Check the executable path: In the service Properties, verify the path exists. If it points to a file that’s been deleted, reinstall the associated software.
  • Check permissions: The service account (e.g., LocalSystem, NetworkService) may lack permissions to the executable or its folder. Right-click the folder, go to Properties > Security, and ensure the service account has read/execute rights.
  • Look for missing dependencies: Some services require specific Windows features or third-party drivers. Check the Event Log for clues.
  • Run System File Checker: Open Command Prompt as Administrator and run sfc /scannow. This repairs corrupted system files that might prevent a service from starting.
  • Use the Registry to verify the service configuration: Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<ServiceName>. Check the ImagePath and Start values. The Start value should be 2 (Automatic), 3 (Manual), or 4 (Disabled). Do not edit unless you are confident, and always back up the registry first.

Preventing Error 1051 in the Future

To avoid this error, always check the service status before sending a stop command. In scripts, use sc query or PowerShell’s Get-Service to verify the state. For example, in PowerShell:

if ((Get-Service -Name "ServiceName").Status -eq "Running") { Stop-Service -Name "ServiceName" }

Also, ensure that services you rely on are set to Automatic startup and that their dependencies are also set to Automatic. This prevents situations where a service fails to start because a dependency hasn’t been triggered.

Frequently Asked Questions

Is error 1051 harmful?

No. It is an informational error indicating that the service was already stopped. It does not damage your system or data.

Can I ignore error 1051?

Yes, if the service is supposed to be stopped. If you need the service running, you must start it first.

Why does error 1051 appear when I try to start a service?

It shouldn’t. Starting a stopped service should not produce 1051. If you see it, you may be using a script that sends a stop command instead of a start command—double-check the command syntax.

How do I find the service name for a service?

Open the service’s Properties in services.msc. The “Service name” is listed at the top. You can also use sc query in Command Prompt to list all services and their names.

What if the service is disabled and I need it?

Change the startup type to Automatic or Manual in the service Properties, then click Start. If the service is critical for Windows, you may need to run sfc /scannow or check Group Policy settings.

Can a third-party antivirus cause error 1051?

Yes, some security software can prevent services from starting or stopping. Temporarily disable your antivirus (if safe) and see if the error persists. If it does, re-enable it and consult the antivirus vendor’s support.

Related

General steps for current mainstream versions; menus can differ by device and version. See the disclaimer or report an error.

More in this bed

The whole Tech How-To bed →