ServiceInstaller.Install(IDictionary) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Installeert de service door servicetoepassingsinformatie naar het register te schrijven. Deze methode is bedoeld om te worden gebruikt door installatiehulpprogramma's, die automatisch de juiste methoden verwerken.
public:
override void Install(System::Collections::IDictionary ^ stateSaver);
public override void Install(System.Collections.IDictionary stateSaver);
override this.Install : System.Collections.IDictionary -> unit
Public Overrides Sub Install (stateSaver As IDictionary)
Parameters
- stateSaver
- IDictionary
Een IDictionary met de contextinformatie die is gekoppeld aan de installatie.
Uitzonderingen
De installatie bevat geen voor ServiceProcessInstaller het uitvoerbare bestand.
– of –
De bestandsnaam voor de assembly is null of een lege tekenreeks.
– of –
De servicenaam is ongeldig.
– of –
Service Control Manager kan niet worden geopend.
De weergavenaam voor de service is langer dan 255 tekens.
Het systeem kan geen ingang genereren voor de service.
– of –
Er is al een service met die naam geïnstalleerd.
Opmerkingen
Normaal gesproken roept u de methoden in uw code niet aan ServiceInstaller ; ze worden meestal alleen aangeroepen door het installatieprogramma. Het installatieprogramma roept de methode automatisch aan tijdens de Install installatie. Er worden, indien nodig, fouten geretourneerd door het object aan te roepen Rollback dat de uitzondering heeft gegenereerd.
De installatieroutine van een toepassing onderhoudt automatisch informatie over de onderdelen die al zijn geïnstalleerd, met behulp van de installatieprogramma's van Installer.Contexthet project. Deze statusinformatie, doorgegeven Install als de stateSaver parameter, wordt continu bijgewerkt wanneer het ServiceProcessInstaller exemplaar en elke ServiceInstaller instantie wordt geïnstalleerd door het hulpprogramma. Het is meestal niet nodig dat uw code deze statusinformatie expliciet wijzigt.
De ServiceProcessInstaller installatieklasse van uw project installeert informatie die gebruikelijk is voor alle ServiceInstaller exemplaren in het project. Als deze service iets bevat dat deze scheidt van de andere services in het installatieproject, wordt die servicespecifieke informatie door deze methode geïnstalleerd.
Als u een service wilt installeren, maakt u een klasse voor het installatieprogramma van het project die van de Installer klasse overkomt en stelt u het RunInstallerAttribute kenmerk voor de klasse truein op . Maak binnen uw project één ServiceProcessInstaller exemplaar per servicetoepassing en één ServiceInstaller exemplaar voor elke service in de toepassing. Stel in de klasseconstructor van uw projectinstallatieprogramma de installatie-eigenschappen voor de service in met behulp van de ServiceProcessInstaller en ServiceInstaller exemplaren en voeg de exemplaren toe aan de Installers verzameling.
Note
Het wordt aanbevolen om de constructor te gebruiken voor het toevoegen van installatie-exemplaren; Als u echter aan de Installers verzameling in de Install methode moet toevoegen, moet u dezelfde toevoegingen aan de verzameling in de Uninstall methode uitvoeren.
Voor alle klassen die zijn afgeleid van de Installer klasse, moet de status van de Installers verzameling hetzelfde zijn in de Install en Uninstall methoden. U kunt echter het onderhoud van de verzameling in de Install en Uninstall methoden voorkomen als u installatie-exemplaren toevoegt aan de verzameling in uw Installers aangepaste constructor voor installatieklassen.