ServiceController.Stop Method ()


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Stops this service and any services that are dependent on this service.

Namespace:   System.ServiceProcess
Assembly:  System.ServiceProcess (in System.ServiceProcess.dll)

public void Stop()

Exception Condition

An error occurred when accessing a system API.


The service was not found.

If any services depend on this service for their operation, they will be stopped before this service is stopped. The DependentServices property contains the set of services that depend on this one.

If you stop a service that this service depends on, call the Stop method on this service within the Stop method of the parent service. The ServicesDependedOn property contains the services that this service depends on.

The following example uses the ServiceController class to check the current status of the Telnet service. If the service is stopped, the example starts the service. If the service is running, the example stops the service.

// Toggle the Telnet service - 
// If it is started (running, paused, etc), stop the service.
// If it is stopped, start the service.
ServiceController sc = new ServiceController("Telnet");
Console.WriteLine("The Telnet service status is currently set to {0}", 

if  ((sc.Status.Equals(ServiceControllerStatus.Stopped)) ||
   // Start the service if the current status is stopped.

   Console.WriteLine("Starting the Telnet service...");
   // Stop the service if its status is not set to "Stopped".

   Console.WriteLine("Stopping the Telnet service...");

// Refresh and display the current service status.
Console.WriteLine("The Telnet service status is now set to {0}.", 


for controlling services on the computer. Associated enumeration: ServiceControllerPermissionAccess.Control


for unrestricted access to service information. Associated enumeration: PermissionState.Unrestricted

.NET Framework
Available since 1.1
Return to top