ServiceInstaller.Install(IDictionary) Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
A szolgáltatás telepítése a szolgáltatásalkalmazás adatainak a beállításjegyzékbe való írásával. Ezt a módszert a telepítési eszközöknek kell használniuk, amelyek automatikusan feldolgozzák a megfelelő módszereket.
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)
Paraméterek
- stateSaver
- IDictionary
A IDictionary telepítéshez társított környezeti információkat tartalmazó fájl.
Kivételek
A telepítés nem tartalmaz végrehajtható példányt ServiceProcessInstaller .
-vagy-
A szerelvény null fájlneve vagy üres sztring.
-vagy-
A szolgáltatásnév érvénytelen.
-vagy-
A Service Control Manager nem nyitható meg.
A szolgáltatás megjelenítendő neve több mint 255 karakter hosszúságú.
A rendszer nem tudott leírót létrehozni a szolgáltatáshoz.
-vagy-
Már telepítve van egy ilyen nevű szolgáltatás.
Megjegyzések
A metódusokat ServiceInstaller általában nem fogja betárcsázni a kódon belül, általában csak a telepítési segédprogram hívja meg őket. A telepítési segédprogram automatikusan meghívja a metódust a Install telepítés során. Szükség esetén biztonsági másolatot készít a hibákról a kivételt létrehozó objektum meghívásával Rollback .
Az alkalmazás telepítési rutinja automatikusan megőrzi a már telepített összetevőkkel kapcsolatos információkat a projekttelepítő Installer.Contexthasználatával. A paraméterként Install átadott stateSaver állapotinformációk folyamatosan frissülnek a ServiceProcessInstaller példányként, és minden ServiceInstaller példányt a segédprogram telepített. Általában szükségtelen, hogy a kód explicit módon módosítsa ezeket az állapotinformációkat.
A ServiceProcessInstaller projekttelepítési osztályhoz társított példányok a projekt összes ServiceInstaller példányára vonatkozóan gyakran előforduló információkat telepítik. Ha a szolgáltatás rendelkezik bármivel, amely elválasztja azt a telepítési projekt többi szolgáltatásától, a szolgáltatásspecifikus információkat ezzel a módszerrel települ.
Szolgáltatás telepítéséhez hozzon létre egy, az Installer osztálytól öröklő projekttelepítő osztályt, és állítsa az RunInstallerAttribute osztály attribútumát a következőre true: . A projekten belül hozzon létre egy példányt ServiceProcessInstaller szolgáltatásalkalmazásonként, és egy példányt ServiceInstaller az alkalmazás minden egyes szolgáltatásához. A projekt telepítőosztályának konstruktorán belül állítsa be a szolgáltatás telepítési tulajdonságait a példányok és ServiceProcessInstaller a ServiceInstaller példányok használatával, és adja hozzá a példányokat a Installers gyűjteményhez.
Note
Javasoljuk, hogy a konstruktort használja a telepítőpéldányok hozzáadásához; Ha azonban hozzá kell adnia a Installers gyűjteményhez a Install metódusban, mindenképpen végezze el ugyanazokat a hozzáadásokat a gyűjteményhez a Uninstall metódusban.
Az osztályból Installer származó összes osztály esetében a Installers gyűjtemény állapotának azonosnak kell lennie a metódusokban és Install a Uninstall metódusokban. Ha azonban telepítőpéldányokat ad hozzá a gyűjteményhez az Install egyéni telepítőosztály-konstruktorban, elkerülheti a gyűjtemény karbantartását a Uninstall különböző módszerek és Installers módszerek között.