Creates a new instance of the ServiceBase class.
[Visual Basic] Public Sub New() [C#] public ServiceBase(); [C++] public: ServiceBase(); [JScript] public function ServiceBase();
Do not create an instance of the ServiceBase class. Instead, derive from ServiceBase and instantiate your derived class. The minimum you need to implement in the constructor for a class inherited from ServiceBase is to set the ServiceName on your component. No other processing is specifically required in the constructor. You should handle most initialization in OnStart rather than in the constructor. Otherwise, there is no guarantee the objects will be reinitialized when you restart a service after it has been stopped.
If you override the constructor in your derived class, call the base class constructor in your code.
The ServiceBase constructor sets AutoLog to true. If you do not want to automatically log calls to the service from the Service Control Manager (SCM), set AutoLog to false.
If the executable contains a single service, the system calls the service's constructor when Start is selected from the SCM, and runs the destructor if Stop is called.
If the executable contains multiple services, calling Start on one service causes the constructors to be called for all services in the executable, but only the specified service is started. Destructors for the services are run together when all services have been stopped, not individually when each service is stopped.
Note If you override the base class constructor, you should explicitly call it in the constructor of your derived class.
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:
- Full trust for the immediate caller. This member cannot be used by partially trusted code. For more information, see Using Libraries From Partially Trusted Code