ServiceInstaller.Install(IDictionary) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Instala o serviço escrevendo as informações da aplicação do serviço no registo. Este método destina-se a ser utilizado por ferramentas de instalação, que processam automaticamente os métodos apropriados.
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)
Parâmetros
- stateSaver
- IDictionary
E IDictionary que contém a informação de contexto associada à instalação.
Exceções
A instalação não contém um ServiceProcessInstaller para o executável.
-ou-
O nome do ficheiro para o assembly é null ou uma string vazia.
-ou-
O nome do serviço é inválido.
-ou-
O Gestor de Controlo de Serviço não pôde ser aberto.
O nome de exibição do serviço tem mais de 255 caracteres.
O sistema não conseguia gerar um handle para o serviço.
-ou-
Um serviço com esse nome já está instalado.
Observações
Normalmente, não vais chamar os métodos no ServiceInstaller teu código; geralmente são chamados apenas pela ferramenta de instalação. A ferramenta de instalação chama automaticamente o Install método durante a instalação. Recua falhas, se necessário, apelando Rollback ao objeto que gerou a exceção.
A rotina de instalação de uma aplicação mantém automaticamente informações sobre os componentes que já estavam instalados, utilizando o arquivo do Installer.Contextinstalador do projeto. Esta informação de estado, passada Install como parâmetro stateSaver , é continuamente atualizada como instância ServiceProcessInstaller e cada ServiceInstaller instância é instalada pela utilidade. Normalmente não é necessário que o seu código modifique explicitamente esta informação de estado.
A ServiceProcessInstaller classe de instalação associada ao seu projeto fornece informações comuns a todas ServiceInstaller as instâncias do projeto. Se este serviço tiver algo que o diferencie dos outros serviços no projeto de instalação, essa informação específica do serviço é instalada por este método.
Para instalar um serviço, crie uma classe de instalador de projeto que herde da Installer classe e defina o RunInstallerAttribute atributo da classe para true. No seu projeto, crie uma ServiceProcessInstaller instância por aplicação de serviço e uma ServiceInstaller instância para cada serviço da aplicação. Dentro do construtor de classe instalador do projeto, defina as propriedades de instalação do serviço usando as ServiceProcessInstaller instâncias e ServiceInstaller adicione as instâncias à Installers coleção.
Note
Recomenda-se que utilize o construtor para adicionar instâncias de instalador; No entanto, se precisares de acrescentar à Installers coleção no Install método, certifica-te de fazer as mesmas adições à coleção no Uninstall método.
Para todas as classes derivadas da Installer classe, o estado da Installers coleção deve ser o mesmo nos Install métodos e Uninstall . No entanto, pode evitar a manutenção da coleção ao longo dos Install métodos e Uninstall se adicionar instâncias de instalador à Installers coleção no seu construtor de classes instaladoras personalizadas.