This documentation is archived and is not being maintained.

ServiceBase.OnStop Method

When implemented in a derived class, executes when a Stop command is sent to the service by the Service Control Manager (SCM). Specifies actions to take when a service stops running.

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

protected:
virtual void OnStop ()
protected void OnStop ()
protected function OnStop ()
Not applicable.

Use OnStop to specify the processing that occurs when the service receives a Stop command.

When the SCM receives a Stop command, it uses the value of CanStop to verify whether the service accepts Stop commands. If CanStop is true, the Stop command is passed to the service, and the OnStop method is called if it is defined. If OnStop is not implemented in the service, the SCM handles the Stop command.

If CanStop is false, the SCM ignores the Stop command. It is not passed to the service. The Stop command returns and throws an exception.

OnStop is expected to be overridden in the derived class. For the service to be useful, OnStart and OnStop should both be implemented in your service class.

The following example shows an implementation of the OnStop method for a service class derived from ServiceBase. This code example is part of a larger example provided for the ServiceBase class.

No code example is currently available or this language may not be supported.

Windows 98, Windows Server 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0
Show: