Compartilhar via


EventLogInstaller Classe

Definição

Permite que você instale e configure um log de eventos do qual seu aplicativo lê ou grava ao executar.

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 exemplo de código a seguir define as propriedades de instalação para uma nova fonte de evento. O exemplo de código define o nome de origem e o nome do log de eventos e adiciona a EventLogInstallerInstallers 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

Comentários

O EventLogInstaller é usado pelo Installutil.exe (Ferramenta do Instalador) ao instalar um log de eventos. A EventLogInstaller classe pode instalar logs de eventos somente no computador local.

Use a EventLogInstaller classe quando seu aplicativo gravar em um log de eventos; não é necessário usar um instalador de log de eventos para seu aplicativo ler de um log de eventos. Aplicativos e serviços devem ser gravados no log do aplicativo ou em um log personalizado. Os drivers de dispositivo devem gravar no log do sistema.

Observação

O log de segurança é somente leitura.

O instalador cria a origem do evento especificada na propriedade e registra-a Source para o log de eventos especificado na Log propriedade. Esse comportamento é semelhante à chamada CreateEventSource ao EventLog componente.

Use o e WriteEntry os WriteEvent métodos para gravar eventos em um log de eventos. Você deve especificar uma fonte de evento para gravar eventos; você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem.

Crie a nova fonte de evento durante a instalação do aplicativo. Isso permite tempo para o sistema operacional atualizar sua lista de fontes de eventos registradas e suas configurações. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova origem usando uma EventLogInstallerou usando o CreateEventSource método. Você deve ter direitos administrativos no computador para criar uma nova fonte de evento.

Você pode criar uma fonte de evento para um log de eventos existente ou um novo log de eventos. Quando você cria uma nova fonte para um novo log de eventos, o sistema registra a origem desse log, mas o log não é criado até que a primeira entrada seja gravada nele.

Para instalar um log de eventos, crie uma classe de instalador de Installerprojeto que herda e defina a RunInstallerAttribute classe truecomo . Em seu projeto, crie um EventLogInstaller log de eventos para o qual seu aplicativo gravará e adicione a instância à classe do instalador de projeto.

Quando o Installutil.exe (Ferramenta do Instalador) é chamado, ele examina o RunInstallerAttribute. Se for true, a ferramenta instalará todos os itens da Installers coleção associados ao instalador do projeto. Se RunInstallerAttribute for false, a ferramenta ignorará o instalador do projeto.

Modifique outras propriedades de um EventLogInstaller antes ou depois de adicionar a instância à Installers coleção do instalador do projeto, mas antes da execução da ferramenta do instalador. Você deve definir a Source propriedade se o aplicativo estiver gravando no log de eventos.

Use EventLogInstaller para registrar uma nova fonte para um log 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 origem existente para corresponder às propriedades de instalação especificadas. O Install método gerará uma exceção se a propriedade corresponder a Source um nome de origem registrado para um log de eventos diferente no computador. O Install método não registrará a origem se a propriedade corresponder a Source um nome de origem que já está registrado para o mesmo log de eventos especificado na Log propriedade.

Você pode registrar a origem do evento com arquivos de recurso localizados para sua categoria de evento e cadeias de caracteres de mensagem. Seu aplicativo pode gravar entradas de log de eventos usando identificadores de recurso, em vez de especificar a cadeia de caracteres real. O Visualizador de Eventos usa o identificador de recurso para localizar e exibir a cadeia de caracteres correspondente do arquivo de recurso localizado com base nas configurações de idioma atuais. Você pode registrar um arquivo separado para categorias de evento, mensagens e cadeias de caracteres de inserção de parâmetro ou registrar o mesmo arquivo de recurso para todos os três tipos de cadeias de caracteres. Use as CategoryCountpropriedades , CategoryResourceFilee MessageResourceFileParameterResourceFile , para configurar a origem para gravar entradas localizadas no log de eventos. Se o aplicativo gravar valores de cadeias de caracteres diretamente no log de eventos, você não precisará definir essas propriedades.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Normalmente, você não chama os métodos da EventLogInstaller classe de dentro de seu código; eles geralmente são chamados apenas por Installutil.exe. A ferramenta chama automaticamente o Install método durante o processo de instalação. Ele faz backup de falhas, se necessário, chamando o Rollback método para o objeto que gerou a exceção.

Construtores

Nome Description
EventLogInstaller()

Inicializa uma nova instância da classe EventLogInstaller.

Propriedades

Nome 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 arquivo de recurso de categoria.

CategoryResourceFile

Obtém ou define o caminho do arquivo de recurso que contém cadeias de caracteres de categoria para a origem.

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á no modo de design no momento.

(Herdado de Component)
Events

Obtém a lista de manipuladores de eventos anexados a isso Component.

(Herdado de Component)
HelpText

Obtém o texto de ajuda para todos os instaladores na coleção do instalador.

(Herdado de Installer)
Installers

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

(Herdado de Installer)
Log

Obtém ou define o nome do log para o qual definir a origem.

MessageResourceFile

Obtém ou define o caminho do arquivo de recurso que contém cadeias de caracteres de formatação de mensagem para a origem.

ParameterResourceFile

Obtém ou define o caminho do arquivo de recurso que contém cadeias de caracteres de parâmetro de mensagem para a origem.

Parent

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

(Herdado de Installer)
Site

Obtém ou define o ISiteComponent.

(Herdado de Component)
Source

Obtém ou define o nome de origem a ser registrado no log.

UninstallAction

Obtém ou define um valor que indica se o Installutil.exe (Ferramenta do Instalador) deve remover o log de eventos ou deixá-lo em seu estado instalado no momento da desinstalação.

Métodos

Nome Description
Commit(IDictionary)

Quando substituído em uma classe derivada, conclui a transação de instalação.

(Herdado de Installer)
CopyFromComponent(IComponent)

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

CreateObjRef(Type)

Cria um objeto que contém todas as informações relevantes necessárias para gerar um proxy usado para se comunicar com um objeto remoto.

(Herdado de MarshalByRefObject)
Dispose()

Libera todos os recursos usados pelo Component.

(Herdado de Component)
Dispose(Boolean)

Libera os recursos não gerenciados usados pelo Component e, opcionalmente, libera os recursos gerenciados.

(Herdado de Component)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetLifetimeService()
Obsoleto.

Recupera o objeto de serviço de tempo de vida atual que controla a política de tempo de vida para essa instância.

(Herdado de MarshalByRefObject)
GetService(Type)

Retorna um objeto que representa um serviço fornecido pelo Component ou por sua Container.

(Herdado de Component)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
InitializeLifetimeService()
Obsoleto.

Obtém um objeto de serviço de tempo de vida para controlar a política de tempo de vida dessa instância.

(Herdado de MarshalByRefObject)
Install(IDictionary)

Executa a instalação e grava informações de log de eventos no Registro.

IsEquivalentInstaller(ComponentInstaller)

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

MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
MemberwiseClone(Boolean)

Cria uma cópia superficial do objeto atual MarshalByRefObject .

(Herdado de MarshalByRefObject)
OnAfterInstall(IDictionary)

Aciona o evento AfterInstall.

(Herdado de Installer)
OnAfterRollback(IDictionary)

Aciona o evento AfterRollback.

(Herdado de Installer)
OnAfterUninstall(IDictionary)

Aciona o evento AfterUninstall.

(Herdado de Installer)
OnBeforeInstall(IDictionary)

Aciona o evento BeforeInstall.

(Herdado de Installer)
OnBeforeRollback(IDictionary)

Aciona o evento BeforeRollback.

(Herdado de Installer)
OnBeforeUninstall(IDictionary)

Aciona o evento BeforeUninstall.

(Herdado de Installer)
OnCommitted(IDictionary)

Aciona o evento Committed.

(Herdado de Installer)
OnCommitting(IDictionary)

Aciona o evento Committing.

(Herdado de Installer)
Rollback(IDictionary)

Restaura o computador para o estado em que estava antes da instalação revertendo as informações do log de eventos que o procedimento de instalação escreveu no registro.

ToString()

Retorna um String que contém o nome do Component, se houver. Esse método não deve ser substituído.

(Herdado de Component)
Uninstall(IDictionary)

Remove uma instalação removendo informações de log de eventos do registro.

Eventos

Nome Description
AfterInstall

Ocorre depois que os Install(IDictionary) métodos de todos os instaladores na Installers propriedade são executados.

(Herdado de Installer)
AfterRollback

Ocorre depois que as instalações de todos os instaladores na Installers propriedade são revertidas.

(Herdado de Installer)
AfterUninstall

Ocorre depois que todos os instaladores na Installers propriedade executam suas operações de desinstalação.

(Herdado de Installer)
BeforeInstall

Ocorre antes da execução do Install(IDictionary) método de cada instalador na coleção do instalador.

(Herdado de Installer)
BeforeRollback

Ocorre antes que os instaladores na Installers propriedade sejam revertidos.

(Herdado de Installer)
BeforeUninstall

Ocorre antes que os instaladores na Installers propriedade executem suas operações de desinstalação.

(Herdado de Installer)
Committed

Ocorre depois que todos os instaladores na Installers propriedade confirmam suas instalações.

(Herdado de Installer)
Committing

Ocorre antes que os instaladores na Installers propriedade confirmem suas instalações.

(Herdado de Installer)
Disposed

Ocorre quando o componente é descartado por uma chamada para o Dispose() método.

(Herdado de Component)

Aplica-se a

Confira também