Dienste programmieren mit .NET

von THOMAS WOELFER , 11.11.2003
PDF PDF | eBook eBook
Aufmacher
Mit der Win32-API gestaltete sich das Programmieren von Windows-Diensten mühsam und fehleranfällig. Wie Sie mit dem .NET-Framework jetzt schnell und einfach Ihren eigenen Windows-Dienst erstellen, zeigt dieser Beitrag.
Die so genannten Windows-Dienste gibt es schon seit Windows NT 3.1 und natürlich auch in 2000, XP und 2003. Diese Dienste bieten den Vorteil, dass sie auch laufen, ohne dass eine Person am Rechner angemeldet ist: Der Rechner bietet dann eben einen Dienst an, den andere Rechner nutzen können.
Dienste schaffen aber auch Probleme -sie sind relativ kompliziert zu programmieren, zu debuggen und zu installieren. .NET und das Visual Studio machen die Entwicklung von Diensten jedoch erheblich einfacher, als das mit der Win32-API der Fall ist. Dennoch gibt es immer noch genügend Fallstricke.
Bevor es an die Entwicklung des ersten eigenen Dienstes geht, sind einige Hintergrundinformationen unabdingbar. Ein Dienst ist ein Programm, das beim Booten des Rechners automatisch gestartet werden kann und so lange läuft, wie der Rechner eingeschaltet ist. Dazu muss kein Anwender angemeldet sein, da der Dienst in einem speziellen Windows-Kontext läuft. Hier werden entweder die Anmeldedaten eines Benutzer-Accounts verwendet oder der lokale System-Account.
Das hat verschiedene Konsequenzen - unter anderem die, dass ein Dienst nicht einfach von einem Anwender gestartet und benutzt werden kann. Vielmehr unterliegt die Kontrolle der Dienste dem Service Control Manager, einer zentralen Windows-Komponente. Daher muss ein Dienstprogramm dem Service Control Manager bekannt gemacht werden. Für Dienste, die mit der .NET-Klassenbibliothek entwickelt wurden, gibt es dazu das spezielle Werkzeug InstallUtil.exe.
Die kompletten Quelltexte unserer Beispielprogramme können Premium-Kunden über die "Links zum Beitrag" kostenlos herunterladen.
Auf der nächsten Seite: Dienste und deren Modi
 
Seite 1 von 13
Inhalt dieses Artikels

Kostenlose AppsGratis-Apps für Smartphones und Tablet-PCs
Holen Sie sich die kostenlosen TecChannel-Apps für iPhone, iPad, Android, bada und Windows 7 Slate. Oder nutzen Sie mobil.tecchannel.de für alle Geräte.



Links zum Artikel
Links zum Thema


Meinungen zu diesem Artikel (1 von 1)
Bienentoeter
19.07.05 23:24

Dienste programmieren mit .NET
Den Beitrag "Dienste programmieren mit .NET " vom 11.11.2003 (nochmal im TecChannel vom 19
Ihre Meinung zum Artikel
Benutzername:
Passwort: