This documentation is archived and is not being maintained.

ServiceBase.CanStop Property

Gets or sets a value indicating whether the service can be stopped once it has started.

[Visual Basic]
Public Property CanStop As Boolean
public bool CanStop {get; set;}
public: __property bool get_CanStop();
public: __property void set_CanStop(bool);
public function get CanStop() : Boolean;
public function set CanStop(Boolean);

Property Value

true if the service can be stopped and the OnStop method called; otherwise, false.


Exception Type Condition
InvalidOperationException The service has already been started. The CanStop property cannot be changed once the service has started.


When Stop is called on a service, the Service Control Manager (SCM) verifies whether the service accepts Stop commands using the value of CanStop. For most services, the value of CanStop is true, but some operating system services, for example, do not allow the user to stop them.

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 derived class, the SCM handles the Stop command through the empty base class ServiceBase.OnStop method.


Platforms: Windows NT Server 4.0, Windows NT Workstation 4.0, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

.NET Framework Security: 

See Also

ServiceBase Class | ServiceBase Members | System.ServiceProcess Namespace | OnStop | CanPauseAndContinue | CanShutdown | CanHandlePowerEvent