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.dll>
#using <System.Configuration.Install.dll>

using namespace System;
using namespace System::Configuration::Install;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

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

public:
   MyEventLogInstaller()
   {
      // Create an instance of an EventLogInstaller.
      myEventLogInstaller = gcnew 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 );
   }
};
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継承するプロジェクト インストーラー クラスを作成し、 クラスの を RunInstallerAttributetrue設定します。 プロジェクト内で、アプリケーションが書き込むイベント ログごとに を EventLogInstaller 作成し、そのインスタンスをプロジェクト インストーラー クラスに追加します。

Installutil.exe (インストーラー ツール) が呼び出されると、 が表示されますRunInstallerAttribute。 の場合、 trueプロジェクト インストーラーに関連付けられているコレクション内 Installers のすべての項目がツールによってインストールされます。 が のfalse場合RunInstallerAttribute、ツールはプロジェクト インストーラーを無視します。

インスタンスを EventLogInstaller プロジェクト インストーラーのコレクションに追加する前または追加した後、インストーラー ツールを実行する Installers 前に、 の他のプロパティを変更します。 アプリケーションがイベント ログに Source 書き込む場合は、 プロパティを設定する必要があります。

を使用して EventLogInstaller 、新規または既存のイベント ログの新しいソースを登録します。既存のソースの変更には を使用 EventLogInstaller しないでください。 クラスは EventLogInstaller 、指定したインストール プロパティと一致するように既存のソースの構成プロパティを変更しません。 プロパティが Install 、コンピューター上の別の Source イベント ログに登録されているソース名と一致する場合、メソッドは例外をスローします。 プロパティが Install 、プロパティで指定されたのと同じイベント ログに既に登録されているソース名と一致する場合 Source 、メソッドはソースを Log 登録しません。

イベント ソースは、イベント カテゴリとメッセージ文字列のローカライズされたリソース ファイルに登録できます。 アプリケーションでは、実際の文字列を指定するのではなく、リソース識別子を使用してイベント ログ エントリを書き込むことができます。 イベント ビューアーでは、リソース識別子を使用して、現在の言語設定に基づいてローカライズされたリソース ファイルから対応する文字列を検索して表示します。 イベント カテゴリ、メッセージ、パラメーター挿入文字列用に個別のファイルを登録することも、3 種類の文字列すべてに同じリソース ファイルを登録することもできます。 、CategoryResourceFileCategoryCountMessageResourceFile、および ParameterResourceFile の各プロパティを使用して、ローカライズされたエントリをイベント ログに書き込むソースを構成します。 アプリケーションが文字列値をイベント ログに直接書き込む場合は、これらのプロパティを設定する必要はありません。

ソースは、ローカライズされたエントリを書き込むか、直接文字列を記述するように構成する必要があります。 アプリケーションがリソース識別子と文字列値の両方を使用してエントリを書き込む場合は、2 つの個別のソースを登録する必要があります。 たとえば、リソース ファイルを使用して 1 つのソースを構成し、 メソッドでそのソースを 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

ComponentISite を取得または設定します。

(継承元 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()

Component の名前 (存在する場合) を格納する String を返します。 このメソッドはオーバーライドできません。

(継承元 Component)
Uninstall(IDictionary)

レジストリからイベント ログ情報を削除して、コンポーネントを削除します。

イベント

AfterInstall

Installers プロパティ内のすべてのインストーラーの Install(IDictionary) メソッドが実行された後で発生します。

(継承元 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)

適用対象

こちらもご覧ください