ServiceBase-Konstruktor
Erstellt eine neue Instanz der ServiceBase-Klasse.
Namespace: System.ServiceProcess
Assembly: System.ServiceProcess (in system.serviceprocess.dll)
Syntax
'Declaration
Public Sub New
'Usage
Dim instance As New ServiceBase
public ServiceBase ()
public:
ServiceBase ()
public ServiceBase ()
public function ServiceBase ()
Hinweise
Erstellen Sie keine Instanz der ServiceBase-Klasse. Leiten Sie stattdessen von ServiceBase ab, und instanziieren Sie die abgeleitete Klasse. Bei einer von ServiceBase abgeleiteten Klasse muss als Mindestimplementierung der ServiceName für die Komponente im Konstruktor festgelegt sein. Dies ist die einzige Verarbeitung, die im Konstruktor speziell erforderlich ist. Den überwiegenden Teil der Initialisierung müssen Sie in OnStart anstatt im Konstruktor verarbeiten. Andernfalls ist nicht gewährleistet, dass beim Neustart eines beendeten Diensts die Objekte erneut initialisiert werden.
Wenn Sie den Konstruktor in der abgeleiteten Klasse überschreiben, rufen Sie den Konstruktor der Basisklasse im Code auf.
Der ServiceBase-Konstruktor legt AutoLog auf true fest. Wenn Sie nicht möchten, dass die Aufrufe des Diensts vom Dienststeuerungs-Manager automatisch protokolliert werden, legen Sie AutoLog auf false fest.
Wenn die ausführbare Datei einen einzigen Dienst enthält, ruft das System beim Auswählen von Starten im Dienststeuerungs-Manager den Konstruktor des Diensts auf und führt den Destruktor aus, wenn Beenden aufgerufen wird.
Wenn die ausführbare Datei mehrere Dienste enthält, bewirkt das Aufrufen von Starten für einen Dienst, dass die Konstruktoren für alle Dienste in der ausführbaren Datei aufgerufen werden. Es wird jedoch lediglich der angegebene Dienst gestartet. Destruktoren für die Dienste werden nach dem Beenden aller Dienste gemeinsam ausgeführt, und nicht einzeln bei der Beendung des jeweiligen Diensts.
Hinweis
Wenn Sie den Basisklassenkonstruktor überschreiben, müssen Sie ihn explizit im Konstruktor der abgeleiteten Klasse aufrufen.
Beispiel
Im folgenden Beispiel wird ein Konstruktor für eine Dienstklasse veranschaulicht, die von ServiceBase abgeleitet ist. Dieses Codebeispiel ist Teil eines umfangreicheren Beispiels für die ServiceBase-Klasse.
Public Sub New()
CanPauseAndContinue = True
CanHandleSessionChangeEvent = True
ServiceName = "SimpleService"
End Sub 'New
public SimpleService()
{
CanPauseAndContinue = true;
CanHandleSessionChangeEvent = true;
ServiceName = "SimpleService";
}
public:
SimpleService()
{
CanPauseAndContinue = true;
ServiceName = "SimpleService";
workerThread = nullptr;
CanHandleSessionChangeEvent = true;
}
.NET Framework-Sicherheit
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter .
Plattformen
Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
Siehe auch
Referenz
ServiceBase-Klasse
ServiceBase-Member
System.ServiceProcess-Namespace
OnStart
AutoLog
Run