2010-10-01 5 views
31

Ich bekomme nicht den Unterschied zwischen System.ServiceProcess.ServiceProcessInstaller und System.ServiceProcess.ServiceInstaller. Aus Metadaten: Der erste installiert eine ausführbare Datei und der zweite eine Klasse. Nach dem Lesen des Beispiels der MSDN, wo es einen ServiceProcessInstaller und zwei ServiceInstaller mit verschiedenen ServiceName (s) gibt, war ich vollständig verloren.Unterschied zwischen ServiceProcessInstaller und ServiceInstaller

Gibt es eine klare Erklärung?

Antwort

42

Es ist möglich, dass eine ausführbare Datei tatsächlich mehrere Dienste enthält. In diesem Fall verfügen Sie über einen ServiceInstaller, der jeden Dienst darstellt, jedoch über einen einzelnen ServiceProcessInstaller, der die ausführbare Datei darstellt.

Jeder Dienst wird (in .NET) als eine andere Klasse implementiert. Aber die verschiedenen Dienste (wenn sie alle gestartet sind) teilen eine AppDomain (glaube ich). Es ist wahrscheinlich ziemlich selten, dass Sie ein solches Setup benötigen, und in den meisten Fällen gibt es eine 1-1-Zuordnung zwischen ausführbaren Dateien und Diensten (Sie hätten also nur einen einzigen ServiceInstaller und ServiceProcessInstaller in der ausführbaren Datei).

Verwandte Themen