ServiceInstaller.Install(IDictionary) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nainstaluje službu zápisem informací o aplikaci služby do registru. Tuto metodu mají používat instalační nástroje, které příslušné metody zpracovávají automaticky.
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)
Parametry
- stateSaver
- IDictionary
Objekt IDictionary , který obsahuje kontextové informace spojené s instalací.
Výjimky
Instalace neobsahuje ServiceProcessInstaller pro spustitelný soubor.
-nebo-
Název souboru pro sestavení je null
nebo prázdný řetězec.
-nebo- Název služby je neplatný.
-nebo- Správce řízení služeb se nepodařilo otevřít.
Zobrazovaný název pro službu je delší než 255 znaků.
Systém nemohl pro službu vygenerovat popisovač.
-nebo-
Služba s tímto názvem je již nainstalována.
Poznámky
Za normálních okolností metody ve vašem kódu nevoláte. Obvykle se volají pouze ServiceInstaller instalačním nástrojem. Instalační nástroj během instalace Install automaticky volá metodu . V případě potřeby zálohuje selhání voláním metody u objektu, Rollback který výjimku vygeneroval.
Rutina instalace aplikace automaticky udržuje informace o komponentách, které už byly nainstalovány, pomocí instalačního programu projektu Installer.Context . Tyto informace o stavu předané jako parametr se průběžně aktualizují s tím, jak se instance a každá Install stateSaver
instance ServiceProcessInstaller ServiceInstaller instaluje pomocí nástroje . Obvykle není nutné, aby kód explicitně upravl tyto informace o stavu.
Objekt ServiceProcessInstaller přidružený k instalační třídě projektu nainstaluje informace společné pro všechny instance v ServiceInstaller projektu. Pokud má tato služba cokoli, co ji odděluje od ostatních služeb v instalačním projektu, tato metoda nainstaluje informace specifické pro službu.
Pokud chcete nainstalovat službu, vytvořte třídu instalačního programu projektu, která dědí z třídy , a nastavte atribut třídy Installer RunInstallerAttribute na true
. V rámci projektu vytvořte jednu instanci pro každou aplikaci služby a jednu ServiceProcessInstaller instanci pro každou službu v ServiceInstaller aplikaci. V rámci konstruktoru třídy instalačního programu projektu nastavte vlastnosti instalace pro službu pomocí ServiceProcessInstaller ServiceInstaller instancí a a přidejte instance do Installers kolekce.
Poznámka
Doporučuje se použít konstruktor pro přidání instancí Instalační služby; Pokud však potřebujete přidat do Installers kolekce v Install metodě, nezapomeňte provést stejné dodatky do kolekce v Uninstall metodě.
Pro všechny třídy, které jsou odvozeny od Installer třídy, Installers musí být stav kolekce stejný v Install Uninstall metodách a. Můžete však zabránit údržbě kolekce napříč Install Uninstall metodami a, pokud přidáte instance instalačního programu do Installers kolekce ve vlastním konstruktoru třídy instalačního programu.