EventLogEntry EventLogEntry EventLogEntry EventLogEntry Class


在事件日志中封装单个记录。Encapsulates a single record in the event log. 此类不能被继承。This class cannot be inherited.

public ref class EventLogEntry sealed : System::ComponentModel::Component, System::Runtime::Serialization::ISerializable
public sealed class EventLogEntry : System.ComponentModel.Component, System.Runtime.Serialization.ISerializable
type EventLogEntry = class
    inherit Component
    interface ISerializable
Public NotInheritable Class EventLogEntry
Inherits Component
Implements ISerializable


下面的代码示例演示如何使用EventLogEntry类。The following code example demonstrates the use of the EventLogEntry class. 在此示例中, switch语句使用控制台输入搜索指定事件类型的事件日志条目。In this example, a switch statement uses console input to search for event log entries for the specified event type. 如果找到匹配项,则会在控制台中显示日志条目的源信息。If a match is found, log entry source information is displayed at the console.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;

int main()
   String^ myEventType = nullptr;
   // Associate the instance of 'EventLog' with local System Log.
   EventLog^ myEventLog = gcnew EventLog( "System","." );
   Console::WriteLine( "1:Error" );
   Console::WriteLine( "2:Information" );
   Console::WriteLine( "3:Warning" );
   Console::WriteLine( "Select the Event Type" );
   int myOption = Convert::ToInt32( Console::ReadLine() );
   switch ( myOption )
      case 1:
         myEventType = "Error";

      case 2:
         myEventType = "Information";

      case 3:
         myEventType = "Warning";

   EventLogEntryCollection^ myLogEntryCollection = myEventLog->Entries;
   int myCount = myLogEntryCollection->Count;
   // Iterate through all 'EventLogEntry' instances in 'EventLog'.
   for ( int i = myCount - 1; i > -1; i-- )
      EventLogEntry^ myLogEntry = myLogEntryCollection[ i ];
      // Select the entry having desired EventType.
      if ( myLogEntry->EntryType.Equals( myEventType ) )
         // Display Source of the event.
         Console::WriteLine( "{0} was the source of last event of type {1}", myLogEntry->Source, myLogEntry->EntryType );
         return 0;
using System;
using System.Diagnostics;
   class MyEventlogClass
      public static void Main()
         String myEventType=null;
         // Associate the instance of 'EventLog' with local System Log.
         EventLog myEventLog = new EventLog("System", ".");
         Console.WriteLine("Select the Event Type");
         int myOption=Convert.ToInt32(Console.ReadLine());
            case 1:  myEventType="Error";
            case 2:  myEventType="Information";
            case 3:  myEventType="Warning";
            default: break;

            EventLogEntryCollection myLogEntryCollection=myEventLog.Entries;
            int myCount =myLogEntryCollection.Count;
            // Iterate through all 'EventLogEntry' instances in 'EventLog'.
            for(int i=myCount-1;i>-1;i--)
               EventLogEntry myLogEntry = myLogEntryCollection[i];
               // Select the entry having desired EventType.
                  // Display Source of the event.
                     +" was the source of last event of type "

Imports System.Diagnostics

Class MyEventlogClass
   Public Shared Sub Main()
      Dim myEventType As String = Nothing
      ' Associate the instance of 'EventLog' with local System Log.
      Dim myEventLog As New EventLog("System", ".")
      Console.WriteLine("Select the Event Type")
      Dim myOption As Integer = Convert.ToInt32(Console.ReadLine())
      Select Case myOption
         Case 1
            myEventType = "Error"
         Case 2
            myEventType = "Information"
         Case 3
            myEventType = "Warning"
         Case Else
      End Select

      Dim myLogEntryCollection As EventLogEntryCollection = myEventLog.Entries
      Dim myCount As Integer = myLogEntryCollection.Count
      ' Iterate through all 'EventLogEntry' instances in 'EventLog'.
      Dim i As Integer
      For i = myCount - 1 To 0 Step -1
         Dim myLogEntry As EventLogEntry = myLogEntryCollection(i)
         ' Select the entry having desired EventType.
         If myLogEntry.EntryType.ToString().Equals(myEventType) Then
            ' Display Source of the event.
            Console.WriteLine(myLogEntry.Source + " was the source of last "& _
                             "event of type " & myLogEntry.EntryType.ToString())
         End If
   End Sub
End Class


使用EventLog类时,通常不会EventLogEntry直接创建的实例。You usually will not create instances of EventLogEntry directly when working with the EventLog class. 类的Entries成员EventLogEntryCollection.Item[Int32]包含实例的集合,这些实例在通过使用类索引成员读取时进行循环访问。 EventLogEntry EventLogThe Entries member of the EventLog class contains a collection of EventLogEntry instances, which you iterate over when reading by using the EventLogEntryCollection.Item[Int32] class index member.


此类型实现 IDisposable 接口。This type implements the IDisposable interface. 在使用完类型后,您应直接或间接释放类型。When you have finished using the type, you should dispose of it either directly or indirectly. 若要直接释放类型,请在 try/catch 块中调用其 Dispose 方法。To dispose of the type directly, call its Dispose method in a try/catch block. 若要间接释放类型,请使用 using(在 C# 中)或 Using(在 Visual Basic 中)等语言构造。To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). 有关详细信息,请参阅 IDisposable 接口主题中的“使用实现 IDisposable 的对象”一节。For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.


CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

获取一个指示组件是否可以引发事件的值。Gets a value indicating whether the component can raise an event.

(Inherited from Component)
Category Category Category Category

获取与该项的 CategoryNumber 属性关联的文本。Gets the text associated with the CategoryNumber property for this entry.

CategoryNumber CategoryNumber CategoryNumber CategoryNumber

获取事件日志项的类别号。Gets the category number of the event log entry.

Container Container Container Container

获取 IContainer,它包含 ComponentGets the IContainer that contains the Component.

(Inherited from Component)
Data Data Data Data

获取与该项关联的二进制数据。Gets the binary data associated with the entry.

DesignMode DesignMode DesignMode DesignMode

获取一个值,用以指示 Component 当前是否处于设计模式。Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
EntryType EntryType EntryType EntryType

获取该项的事件类型。Gets the event type of this entry.

EventID EventID EventID EventID

获取当前事件项的应用程序特定事件标识符。Gets the application-specific event identifier for the current event entry.

Events Events Events Events

获取附加到此 Component 的事件处理程序的列表。Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Index Index Index Index

获取该项在事件日志中的索引。Gets the index of this entry in the event log.

InstanceId InstanceId InstanceId InstanceId

获取指定事件项的消息文本的资源标识符。Gets the resource identifier that designates the message text of the event entry.

MachineName MachineName MachineName MachineName

获取在其上生成该项的计算机的名称。Gets the name of the computer on which this entry was generated.

Message Message Message Message

获取与该事件项关联的本地化消息。Gets the localized message associated with this event entry.

ReplacementStrings ReplacementStrings ReplacementStrings ReplacementStrings

获取与事件日志项关联的替换字符串。Gets the replacement strings associated with the event log entry.

Site Site Site Site

获取或设置 ComponentISiteGets or sets the ISite of the Component.

(Inherited from Component)
Source Source Source Source

获取生成该事件的应用程序的名称。Gets the name of the application that generated this event.

TimeGenerated TimeGenerated TimeGenerated TimeGenerated

获取生成该事件的本地时间。Gets the local time at which this event was generated.

TimeWritten TimeWritten TimeWritten TimeWritten

获取在日志中写入该事件的本地时间。Gets the local time at which this event was written to the log.

UserName UserName UserName UserName

获取负责该事件的用户的名称。Gets the name of the user who is responsible for this event.


CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

释放由 Component 使用的所有资源。Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

释放由 Component 占用的非托管资源,还可以另外再释放托管资源。Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Inherited from Component)
Equals(EventLogEntry) Equals(EventLogEntry) Equals(EventLogEntry) Equals(EventLogEntry)

对两个事件日志项进行比较。Performs a comparison between two event log entries.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

确定指定的对象是否等于当前对象。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

作为默认哈希函数。Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

检索控制此实例的生存期策略的当前生存期服务对象。Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

返回一个对象,该对象表示由 Component 或它的 Container 提供的服务。Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

获取当前实例的 TypeGets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

获取生存期服务对象来控制此实例的生存期策略。Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

创建当前 Object 的浅表副本。Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

创建当前 MarshalByRefObject 对象的浅表副本。Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
ToString() ToString() ToString() ToString()

返回包含 Component 的名称的 String(如果有)。Returns a String containing the name of the Component, if any. 不应重写此方法。This method should not be overridden.

(Inherited from Component)


ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext) ISerializable.GetObjectData(SerializationInfo, StreamingContext)

使用将目标对象序列化所需的数据填充 SerializationInfoPopulates a SerializationInfo with the data needed to serialize the target object.


Disposed Disposed Disposed Disposed

当通过调用 Dispose() 方法释放组件时发生。Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)