Поделиться через


EventLogInstaller Класс

Определение

Позволяет установить и настроить журнал событий, который приложение считывает или записывает в нее при запуске.

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
Наследование

Примеры

В следующем примере кода задаются свойства установки для нового источника событий. В примере кода задаются имя источника и имя журнала событий, а также добавляется EventLogInstaller в коллекцию Installers .

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

Комментарии

Он EventLogInstaller используется Installutil.exe (средство установщика) при установке журнала событий. Класс EventLogInstaller может устанавливать журналы событий только на локальном компьютере.

EventLogInstaller Используйте класс, когда приложение записывает в журнал событий. Не обязательно использовать установщик журнала событий для приложения для чтения из журнала событий. Приложения и службы должны записываться в журнал приложений или в пользовательский журнал. Драйверы устройств должны записываться в системный журнал.

Замечание

Журнал безопасности доступен только для чтения.

Установщик создает источник событий, указанный в свойстве Source , и регистрирует его для журнала событий, указанного в Log свойстве. Это поведение аналогично вызову CreateEventSourceEventLog компонента.

WriteEvent Используйте методы для WriteEntry записи событий в журнал событий. Необходимо указать источник событий для записи событий; Необходимо создать и настроить источник событий перед записью первой записи с исходным кодом.

Создайте новый источник событий во время установки приложения. Это позволяет операционной системе обновлять список зарегистрированных источников событий и их конфигураций. Если операционная система не обновила свой список источников событий и попытается написать событие с новым источником, операция записи завершится ошибкой. Вы можете настроить новый источник с помощью EventLogInstallerметода или использовать CreateEventSource его. Для создания нового источника событий необходимо иметь права администратора на компьютере.

Вы можете создать источник событий для существующего журнала событий или нового журнала событий. При создании нового источника для нового журнала событий система регистрирует источник для этого журнала, но журнал не создается, пока первая запись не будет записана в нее.

Чтобы установить журнал событий, создайте класс установщика проекта, наследующий его Installer, и задайте RunInstallerAttribute для класса trueзначение . В проекте создайте EventLogInstaller для каждого журнала событий, в который приложение будет записывать и добавлять экземпляр в класс установщика проекта.

Когда вызывается Installutil.exe (средство установщика), он смотрит на него RunInstallerAttribute. Если это trueтак, средство устанавливает все элементы в коллекции, связанной Installers с установщиком проекта. Если RunInstallerAttribute это falseтак, средство игнорирует установщик проекта.

Вы изменяете другие свойства EventLogInstaller либо до, либо после добавления экземпляра в Installers коллекцию установщика проекта, но перед запуском средства установщика. Необходимо задать свойство, Source если приложение будет записываться в журнал событий.

Используйте для регистрации нового источника для нового или существующего журнала событий; не используйте EventLogInstallerEventLogInstaller для изменения существующего источника. Класс EventLogInstaller не изменяет свойства конфигурации существующего источника в соответствии с указанными свойствами установки. Метод Install вызывает исключение, если Source свойство соответствует исходному имени, зарегистрированному для другого журнала событий на компьютере. Метод Install не регистрирует источник, если Source свойство соответствует исходному имени, которое уже зарегистрировано для того же журнала событий, указанного в свойстве Log .

Вы можете зарегистрировать источник событий с локализованными файлами ресурсов для категории событий и строк сообщений. Приложение может записывать записи журнала событий с помощью идентификаторов ресурсов, а не указывать фактическую строку. Средство просмотра событий использует идентификатор ресурса для поиска и отображения соответствующей строки из локализованного файла ресурсов на основе текущих параметров языка. Вы можете зарегистрировать отдельный файл для категорий событий, сообщений и строк вставки параметров или зарегистрировать один и тот же файл ресурсов для всех трех типов строк. CategoryCountИспользуйте свойства и MessageResourceFileCategoryResourceFileParameterResourceFile свойства, чтобы настроить источник для записи локализованных записей в журнал событий. Если приложение записывает значения строк непосредственно в журнал событий, вам не нужно задавать эти свойства.

Источник должен быть настроен для записи локализованных записей или для записи прямых строк. Если приложение записывает записи с помощью идентификаторов ресурсов и строковых значений, необходимо зарегистрировать два отдельных источника. Например, настройте один источник с файлами ресурсов, а затем используйте этот источник в методе WriteEvent для записи записей с помощью идентификаторов ресурсов в журнал событий. Создайте другой источник без файлов ресурсов, а затем используйте этот источник в методе для записи строк непосредственно в WriteEntry журнал событий с помощью этого источника.

Как правило, методы EventLogInstaller класса в коде не вызываются; они обычно вызываются только Installutil.exe. Средство автоматически вызывает Install метод во время установки. При необходимости он возвращает ошибки, вызывая Rollback метод для объекта, создающего исключение.

Конструкторы

Имя Описание
EventLogInstaller()

Инициализирует новый экземпляр класса EventLogInstaller.

Свойства

Имя Описание
CanRaiseEvents

Возвращает значение, указывающее, может ли компонент вызвать событие.

(Унаследовано от Component)
CategoryCount

Возвращает или задает количество категорий в файле ресурсов категории.

CategoryResourceFile

Возвращает или задает путь к файлу ресурсов, содержаму строки категорий для источника.

Container

Возвращает объект IContainer , содержащий Componentобъект .

(Унаследовано от Component)
Context

Возвращает или задает сведения о текущей установке.

(Унаследовано от Installer)
DesignMode

Возвращает значение, указывающее, находится ли текущий Component режим разработки.

(Унаследовано от Component)
Events

Возвращает список обработчиков событий, подключенных к этому Component.

(Унаследовано от Component)
HelpText

Возвращает текст справки для всех установщиков в коллекции установщиков.

(Унаследовано от Installer)
Installers

Возвращает коллекцию установщиков, содержащихся в этом установщике.

(Унаследовано от Installer)
Log

Возвращает или задает имя журнала для задания исходного значения.

MessageResourceFile

Возвращает или задает путь к файлу ресурса, который содержит строки форматирования сообщений для источника.

ParameterResourceFile

Возвращает или задает путь к файлу ресурса, который содержит строки параметров сообщения для источника.

Parent

Возвращает или задает установщик, содержащий коллекцию, к которой принадлежит этот установщик.

(Унаследовано от Installer)
Site

Возвращает или задает ISite объект Component.

(Унаследовано от Component)
Source

Возвращает или задает имя источника для регистрации в журнале.

UninstallAction

Возвращает или задает значение, указывающее, должен ли Installutil.exe (средство установщика) удалить журнал событий или оставить его в состоянии установки во время удаления.

Методы

Имя Описание
Commit(IDictionary)

При переопределении в производном классе завершает транзакцию установки.

(Унаследовано от Installer)
CopyFromComponent(IComponent)

Копирует значения EventLog свойств компонента, который требуется во время установки для журнала событий.

CreateObjRef(Type)

Создает объект, содержащий все соответствующие сведения, необходимые для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.

(Унаследовано от MarshalByRefObject)
Dispose()

Освобождает все ресурсы, используемые параметром Component.

(Унаследовано от Component)
Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые Component и при необходимости освобождает управляемые ресурсы.

(Унаследовано от Component)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetLifetimeService()
Устаревшие..

Извлекает текущий объект службы времени существования, который управляет политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
GetService(Type)

Возвращает объект, представляющий службу, предоставляемую Component или ее Container.

(Унаследовано от Component)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
InitializeLifetimeService()
Устаревшие..

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
Install(IDictionary)

Выполняет установку и записывает сведения журнала событий в реестр.

IsEquivalentInstaller(ComponentInstaller)

Определяет, ссылается ли установщик и другой указанный установщик на тот же источник.

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неглубокую копию текущего MarshalByRefObject объекта.

(Унаследовано от MarshalByRefObject)
OnAfterInstall(IDictionary)

Вызывает событие AfterInstall.

(Унаследовано от Installer)
OnAfterRollback(IDictionary)

Вызывает событие AfterRollback.

(Унаследовано от Installer)
OnAfterUninstall(IDictionary)

Вызывает событие AfterUninstall.

(Унаследовано от Installer)
OnBeforeInstall(IDictionary)

Вызывает событие BeforeInstall.

(Унаследовано от Installer)
OnBeforeRollback(IDictionary)

Вызывает событие BeforeRollback.

(Унаследовано от Installer)
OnBeforeUninstall(IDictionary)

Вызывает событие BeforeUninstall.

(Унаследовано от Installer)
OnCommitted(IDictionary)

Вызывает событие Committed.

(Унаследовано от Installer)
OnCommitting(IDictionary)

Вызывает событие Committing.

(Унаследовано от Installer)
Rollback(IDictionary)

Восстанавливает компьютер до его состояния перед установкой, откатив сведения журнала событий, записанные процедурой установки в реестр.

ToString()

String Возвращает имя, содержащее имя , если таковое Componentимеется. Этот метод не должен быть переопределен.

(Унаследовано от Component)
Uninstall(IDictionary)

Удаляет установку, удалив сведения журнала событий из реестра.

События

Имя Описание
AfterInstall

Происходит после Install(IDictionary) запуска методов всех установщиков в свойстве Installers .

(Унаследовано от Installer)
AfterRollback

Происходит после отката всех установщиков в свойстве Installers .

(Унаследовано от Installer)
AfterUninstall

Происходит после выполнения всех установщиков в свойстве Installers операций удаления.

(Унаследовано от Installer)
BeforeInstall

Происходит перед запуском Install(IDictionary) метода каждого установщика в коллекции установщика.

(Унаследовано от Installer)
BeforeRollback

Происходит до отката установщиков в Installers свойстве.

(Унаследовано от Installer)
BeforeUninstall

Происходит до выполнения установщиками в свойстве Installers операций удаления.

(Унаследовано от Installer)
Committed

Происходит после того, как все установщики в свойстве Installers зафиксировали свои установки.

(Унаследовано от Installer)
Committing

Происходит до того, как установщики в свойстве Installers фиксируют их установки.

(Унаследовано от Installer)
Disposed

Происходит при удалении компонента вызовом Dispose() метода.

(Унаследовано от Component)

Применяется к

См. также раздел