EventLogInstaller Classe

Definição

Permite-lhe instalar e configurar um registo de eventos que a sua aplicação lê ou escreve quando está a correr.

public ref class EventLogInstaller : System::Configuration::Install::ComponentInstaller
public class EventLogInstaller : System.Configuration.Install.ComponentInstaller
type EventLogInstaller = class
    inherit ComponentInstaller
Public Class EventLogInstaller
Inherits ComponentInstaller
Herança

Exemplos

O seguinte exemplo de código define as propriedades de instalação para uma nova fonte de eventos. O exemplo de código define o nome fonte e o nome do registo de eventos, e adiciona-os EventLogInstaller à Installers coleção.

using System;
using System.Configuration.Install;
using System.Diagnostics;
using System.ComponentModel;

[RunInstaller(true)]
public class MyEventLogInstaller: Installer
{
    private EventLogInstaller myEventLogInstaller;

    public MyEventLogInstaller()
    {
        // Create an instance of an EventLogInstaller.
        myEventLogInstaller = new EventLogInstaller();

        // Set the source name of the event log.
        myEventLogInstaller.Source = "NewLogSource";

        // Set the event log that the source writes entries to.
        myEventLogInstaller.Log = "MyNewLog";

        // Add myEventLogInstaller to the Installer collection.
        Installers.Add(myEventLogInstaller);
    }

    public static void Main()
    {
        MyEventLogInstaller myInstaller = new MyEventLogInstaller();
    }
}
   Imports System.Configuration.Install
Imports System.Diagnostics
Imports System.ComponentModel

<RunInstaller(True)>  _
Public Class MyEventLogInstaller
   Inherits Installer
   Private myEventLogInstaller As EventLogInstaller
   
   Public Sub New()

      ' Create an instance of an EventLogInstaller.
      myEventLogInstaller = New EventLogInstaller()

      ' Set the source name of the event log.
      myEventLogInstaller.Source = "NewLogSource"

      ' Set the event log that the source writes entries to.
      myEventLogInstaller.Log = "MyNewLog"

      ' Add myEventLogInstaller to the Installer collection.
      Installers.Add(myEventLogInstaller)
   End Sub

 Public Shared Sub Main()
 End Sub
 Dim myInstaller As New EventLogInstaller()
End Class

Observações

É EventLogInstaller usado pelo Installutil.exe (Ferramenta de Instalação) ao instalar um registo de eventos. A EventLogInstaller classe só pode instalar registos de eventos no computador local.

Use a EventLogInstaller classe quando a sua aplicação escreve num registo de eventos; não é necessário usar um instalador de registo de eventos para que a sua aplicação leia um registo de eventos. As aplicações e serviços devem escrever no registo de aplicações ou num registo personalizado. Os drivers de dispositivo devem escrever no registo do sistema.

Note

O registo de segurança é só de leitura.

O instalador cria a fonte de eventos que especifica na Source propriedade e regista-a no registo de eventos especificado na Log propriedade. Este comportamento é semelhante a chamar CreateEventSource o EventLog componente.

Use os WriteEvent métodos e WriteEntry para escrever eventos num registo de eventos. Deve especificar uma fonte de eventos para escrever eventos; Deve criar e configurar o código-fonte do evento antes de escrever a primeira entrada com o código-fonte.

Crie a nova fonte de eventos durante a instalação da sua aplicação. Isto permite que o sistema operativo atualize a sua lista de fontes de eventos registadas e as suas configurações. Se o sistema operativo não atualizou a sua lista de fontes de eventos, e tentar escrever um evento com a nova fonte, a operação de escrita falhará. Pode configurar uma nova fonte usando um EventLogInstaller, ou usando o CreateEventSource método. Deve ter direitos administrativos no computador para criar uma nova fonte de eventos.

Pode criar uma fonte de eventos para um registo de eventos existente ou para um novo registo de eventos. Quando crias uma nova fonte para um novo registo de eventos, o sistema regista a fonte desse registo, mas o registo só é criado quando a primeira entrada é escrita nele.

Para instalar um registo de eventos, crie uma classe de instalador de projeto que herde de Installer, e defina a RunInstallerAttribute classe para true. No teu projeto, cria um EventLogInstaller registo de eventos para cada aplicação onde a tua aplicação irá escrever e adiciona a instância à tua classe de instalador do projeto.

Quando a Installutil.exe (Ferramenta de Instalação) é chamada, ela olha para o RunInstallerAttributearquivo . Se for true, a ferramenta instala todos os itens da Installers coleção associados ao instalador do teu projeto. Se RunInstallerAttribute for false, a ferramenta ignora o instalador do projeto.

Modificas outras propriedades de um EventLogInstaller antes ou depois de adicionar a instância à Installers coleção do instalador do teu projeto, mas antes da ferramenta de instalação ser executada. Deve definir a Source propriedade se a sua aplicação estiver a escrever no registo de eventos.

Use EventLogInstaller para registar uma nova fonte para um registo de eventos novo ou existente; não use EventLogInstaller para alterar uma fonte existente. A EventLogInstaller classe não modifica as propriedades de configuração de uma fonte existente para corresponder às propriedades de instalação especificadas. O Install método lança uma exceção se a Source propriedade corresponder a um nome de origem registado para um registo de eventos diferente no computador. O Install método não regista a fonte se a Source propriedade coincidir com um nome de origem já registado para o mesmo registo de eventos especificado na Log propriedade.

Pode registar a fonte do evento com ficheiros de recursos localizados para a sua categoria de evento e as strings de mensagens. A sua aplicação pode escrever entradas do registo de eventos usando identificadores de recursos, em vez de especificar a cadeia real. O Visualizador de Eventos usa o identificador de recurso para encontrar e mostrar a cadeia correspondente do ficheiro de recurso localizado com base nas definições de idioma atuais. Pode registar um ficheiro separado para categorias de eventos, mensagens e cadeias de inserção de parâmetros, ou pode registar o mesmo ficheiro de recurso para os três tipos de cadeias. Use as CategoryCountpropriedades , CategoryResourceFile, MessageResourceFile, e ParameterResourceFile para configurar a fonte e escrever entradas localizadas no registo de eventos. Se a sua aplicação escreve valores de cadeias diretamente no registo de eventos, não precisa de definir essas propriedades.

A fonte deve ser configurada para escrever entradas localizadas ou para escrever strings diretas. Se a sua aplicação escrever entradas usando tanto identificadores de recursos como valores de cadeia, deve registar duas fontes separadas. Por exemplo, configure uma fonte com ficheiros de recursos e depois use essa fonte no WriteEvent método para escrever entradas usando identificadores de recurso no registo de eventos. Cria uma fonte diferente sem ficheiros de recurso e depois usa essa fonte no WriteEntry método para escrever strings diretamente no registo de eventos usando essa fonte.

Normalmente, não chamas os métodos da EventLogInstaller classe dentro do teu código; geralmente são chamados apenas por Installutil.exe. A ferramenta chama automaticamente o Install método durante o processo de instalação. Recua as falhas, se necessário, chamando o Rollback método do objeto que gerou a exceção.

Construtores

Name Description
EventLogInstaller()

Inicializa uma nova instância da EventLogInstaller classe.

Propriedades

Name Description
CanRaiseEvents

Obtém um valor que indica se o componente pode gerar um evento.

(Herdado de Component)
CategoryCount

Obtém ou define o número de categorias no ficheiro de recurso da categoria.

CategoryResourceFile

Obtém ou define o caminho do ficheiro de recurso que contém as strings de categoria para a fonte.

Container

Obtém o IContainer que contém o Component.

(Herdado de Component)
Context

Obtém ou define informações sobre a instalação atual.

(Herdado de Installer)
DesignMode

Obtém um valor que indica se o Component está atualmente em modo de design.

(Herdado de Component)
Events

Obtém a lista de gestores de eventos que estão ligados a isto Component.

(Herdado de Component)
HelpText

Recebe o texto de ajuda para todos os instaladores na coleção de instaladores.

(Herdado de Installer)
Installers

Fica com a coleção de instaladores que este instalador contém.

(Herdado de Installer)
Log

Obtém ou define o nome do registo para definir a fonte.

MessageResourceFile

Obtém ou define o caminho do ficheiro de recurso que contém as strings de formatação da mensagem para a fonte.

ParameterResourceFile

Obtém ou define o caminho do ficheiro de recurso que contém as strings de parâmetros da mensagem para a fonte.

Parent

Obtém ou define o instalador que contém a coleção a que este instalador pertence.

(Herdado de Installer)
Site

Obtém ou define o ISite do Component.

(Herdado de Component)
Source

Obtém ou define o nome de origem para registar no log.

UninstallAction

Recebe ou define um valor que indica se o Installutil.exe (Ferramenta de Instalação) deve remover o registo de eventos ou deixá-lo no estado instalado no momento da desinstalação.

Métodos

Name Description
Commit(IDictionary)

Quando é sobreposto numa classe derivada, completa a transação de instalação.

(Herdado de Installer)
CopyFromComponent(IComponent)

Copia os valores de propriedades de um EventLog componente que são necessários no momento da instalação para um registo de eventos.

CreateObjRef(Type)

Cria um objeto que contém toda a informação relevante necessária para gerar um proxy usado para comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Liberta todos os recursos utilizados pelo Component.

(Herdado de Component)
Dispose(Boolean)

Liberta os recursos não geridos usados pelo Component e opcionalmente liberta os recursos geridos.

(Herdado de Component)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetLifetimeService()

Recupera o objeto de serviço de tempo de vida atual que controla a política de vida útil neste caso.

(Herdado de MarshalByRefObject)
GetService(Type)

Devolve um objeto que representa um serviço fornecido pelo Component ou pelo seu Container.

(Herdado de Component)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()

Obtém-se um objeto de serviço vitalício para controlar a apólice vitalícia neste caso.

(Herdado de MarshalByRefObject)
Install(IDictionary)

Realiza a instalação e escreve a informação do registo de eventos no registo.

IsEquivalentInstaller(ComponentInstaller)

Determina se um instalador e outro instalador especificado se referem à mesma fonte.

MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
OnAfterInstall(IDictionary)

Eleva o AfterInstall evento.

(Herdado de Installer)
OnAfterRollback(IDictionary)

Eleva o AfterRollback evento.

(Herdado de Installer)
OnAfterUninstall(IDictionary)

Eleva o AfterUninstall evento.

(Herdado de Installer)
OnBeforeInstall(IDictionary)

Eleva o BeforeInstall evento.

(Herdado de Installer)
OnBeforeRollback(IDictionary)

Eleva o BeforeRollback evento.

(Herdado de Installer)
OnBeforeUninstall(IDictionary)

Eleva o BeforeUninstall evento.

(Herdado de Installer)
OnCommitted(IDictionary)

Eleva o Committed evento.

(Herdado de Installer)
OnCommitting(IDictionary)

Eleva o Committing evento.

(Herdado de Installer)
Rollback(IDictionary)

Restaura o computador ao estado em que estava antes da instalação, revertendo a informação do registo de eventos que o procedimento de instalação escreveu para o registo.

ToString()

Devolve a String contendo o nome do Component, se existir. Este método não deve ser ultrapassado.

(Herdado de Component)
Uninstall(IDictionary)

Remove uma instalação ao remover a informação do registo de eventos do registo.

evento

Name Description
AfterInstall

Acontece depois de os Install(IDictionary) métodos de todos os instaladores da Installers propriedade terem sido executados.

(Herdado de Installer)
AfterRollback

Acontece depois de as instalações de todos os instaladores Installers na propriedade serem revertidas.

(Herdado de Installer)
AfterUninstall

Ocorre depois de todos os instaladores da propriedade realizarem Installers as operações de desinstalação.

(Herdado de Installer)
BeforeInstall

Ocorre antes de o Install(IDictionary) método de cada instalador na coleção de instaladores ter sido executado.

(Herdado de Installer)
BeforeRollback

Acontece antes de os instaladores Installers da propriedade serem recuados.

(Herdado de Installer)
BeforeUninstall

Ocorre antes de os instaladores Installers da propriedade realizarem as operações de desinstalação.

(Herdado de Installer)
Committed

Acontece depois de todos os instaladores Installers da propriedade terem concluído as suas instalações.

(Herdado de Installer)
Committing

Ocorre antes de os instaladores Installers da propriedade realizarem as instalações.

(Herdado de Installer)
Disposed

Ocorre quando o componente é eliminado por uma chamada ao Dispose() método.

(Herdado de Component)

Aplica-se a

Ver também