EventLogEntryCollection Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Definuje velikost a enumerátory pro kolekci EventLogEntry instancí.
public ref class EventLogEntryCollection : System::Collections::ICollection
public class EventLogEntryCollection : System.Collections.ICollection
type EventLogEntryCollection = class
interface ICollection
interface IEnumerable
Public Class EventLogEntryCollection
Implements ICollection
- Dědičnost
-
EventLogEntryCollection
- Implementuje
Příklady
Následující příklad ukazuje, jak získat informace protokolu událostí z objektu EventLogEntryCollection .
#using <System.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Diagnostics;
int main()
{
try
{
String^ myLogName = "MyNewLog";
// Check if the source exists.
if ( !EventLog::SourceExists( "MySource" ) )
{
//Create source.
EventLog::CreateEventSource( "MySource", myLogName );
Console::WriteLine( "Creating EventSource" );
}
else
myLogName = EventLog::LogNameFromSourceName( "MySource", "." );
// Get the EventLog associated if the source exists.
// Create an EventLog instance and assign its source.
EventLog^ myEventLog2 = gcnew EventLog;
myEventLog2->Source = "MySource";
// Write an informational entry to the event log.
myEventLog2->WriteEntry( "Successfully created a new Entry in the Log" );
myEventLog2->Close();
// Create a new EventLog Object*.
EventLog^ myEventLog1 = gcnew EventLog;
myEventLog1->Log = myLogName;
// Obtain the Log Entries of S"MyNewLog".
EventLogEntryCollection^ myEventLogEntryCollection = myEventLog1->Entries;
myEventLog1->Close();
Console::WriteLine( "The number of entries in 'MyNewLog' = {0}", myEventLogEntryCollection->Count );
// Display the 'Message' property of EventLogEntry.
for ( int i = 0; i < myEventLogEntryCollection->Count; i++ )
{
Console::WriteLine( "The Message of the EventLog is : {0}", myEventLogEntryCollection[ i ]->Message );
}
// Copy the EventLog entries to Array of type EventLogEntry.
array<EventLogEntry^>^myEventLogEntryArray = gcnew array<EventLogEntry^>(myEventLogEntryCollection->Count);
myEventLogEntryCollection->CopyTo( myEventLogEntryArray, 0 );
IEnumerator^ myEnumerator = myEventLogEntryArray->GetEnumerator();
while ( myEnumerator->MoveNext() )
{
EventLogEntry^ myEventLogEntry = safe_cast<EventLogEntry^>(myEnumerator->Current);
Console::WriteLine( "The LocalTime the Event is generated is {0}", myEventLogEntry->TimeGenerated );
}
}
catch ( Exception^ e )
{
Console::WriteLine( "Exception: {0}", e->Message );
}
}
using System;
using System.Collections;
using System.Diagnostics;
class EventLogEntryCollection_Item
{
public static void Main()
{
try
{
string myLogName = "MyNewLog";
// Check if the source exists.
if (!EventLog.SourceExists("MySource"))
{
// Create the source.
// An event log source should not be created and immediately used.
// There is a latency time to enable the source, it should be created
// prior to executing the application that uses the source.
// Execute this sample a second time to use the new source.
EventLog.CreateEventSource("MySource", myLogName);
Console.WriteLine("Creating EventSource");
Console.WriteLine("Exiting, execute the application a second time to use the source.");
// The source is created. Exit the application to allow it to be registered.
return;
}
else
{
// Get the EventLog associated if the source exists.
myLogName = EventLog.LogNameFromSourceName("MySource", ".");
}
// Create an EventLog instance and assign its source.
EventLog myEventLog2 = new EventLog();
myEventLog2.Source = "MySource";
// Write an informational entry to the event log.
myEventLog2.WriteEntry("Successfully created a new Entry in the Log");
myEventLog2.Close();
// Create a new EventLog object.
EventLog myEventLog1 = new EventLog();
myEventLog1.Log = myLogName;
// Obtain the Log Entries of "MyNewLog".
EventLogEntryCollection myEventLogEntryCollection =
myEventLog1.Entries;
myEventLog1.Close();
Console.WriteLine("The number of entries in 'MyNewLog' = "
+ myEventLogEntryCollection.Count);
// Display the 'Message' property of EventLogEntry.
for (int i = 0; i < myEventLogEntryCollection.Count; i++)
{
Console.WriteLine("The Message of the EventLog is :"
+ myEventLogEntryCollection[i].Message);
}
// Copy the EventLog entries to Array of type EventLogEntry.
EventLogEntry[] myEventLogEntryArray =
new EventLogEntry[myEventLogEntryCollection.Count];
myEventLogEntryCollection.CopyTo(myEventLogEntryArray, 0);
IEnumerator myEnumerator = myEventLogEntryArray.GetEnumerator();
while (myEnumerator.MoveNext())
{
EventLogEntry myEventLogEntry = (EventLogEntry)myEnumerator.Current;
Console.WriteLine("The LocalTime the Event is generated is "
+ myEventLogEntry.TimeGenerated);
}
}
catch (Exception e)
{
Console.WriteLine("Exception:{0}", e.Message);
}
}
}
Imports System.Collections
Imports System.Diagnostics
Class EventLogEntryCollection_Item
Public Shared Sub Main()
Try
Dim myLogName As String = "MyNewlog"
' Check if the source exists.
If Not EventLog.SourceExists("MySource") Then
'Create source.
EventLog.CreateEventSource("MySource", myLogName)
Console.WriteLine("Creating EventSource")
' Get the EventLog associated if the source exists.
Else
myLogName = EventLog.LogNameFromSourceName("MySource", ".")
End If
' Create an EventLog instance and assign its source.
Dim myEventLog2 As New EventLog()
myEventLog2.Source = "MySource"
' Write an informational entry to the event log.
myEventLog2.WriteEntry("Successfully created a new Entry in the Log")
myEventLog2.Close()
' Create a new EventLog object.
Dim myEventLog1 As New EventLog()
myEventLog1.Log = myLogName
' Obtain the Log Entries of "MyNewLog".
Dim myEventLogEntryCollection As EventLogEntryCollection = myEventLog1.Entries
myEventLog1.Close()
Console.WriteLine("The number of entries in 'MyNewLog' = " + _
myEventLogEntryCollection.Count.ToString())
' Display the 'Message' property of EventLogEntry.
Dim i As Integer
For i = 0 To myEventLogEntryCollection.Count - 1
Console.WriteLine("The Message of the EventLog is :" + _
myEventLogEntryCollection(i).Message)
Next i
' Copy the EventLog entries to Array of type EventLogEntry.
Dim myEventLogEntryArray(myEventLogEntryCollection.Count-1) As EventLogEntry
myEventLogEntryCollection.CopyTo(myEventLogEntryArray, 0)
Dim myEnumerator As IEnumerator = myEventLogEntryArray.GetEnumerator()
While myEnumerator.MoveNext()
Dim myEventLogEntry As EventLogEntry = CType(myEnumerator.Current, EventLogEntry)
Console.WriteLine("The LocalTime the Event is generated is " + _
myEventLogEntry.TimeGenerated)
End While
Catch e As Exception
Console.WriteLine("Exception:{0}", e.Message.ToString())
End Try
End Sub
End Class
Poznámky
EventLogEntryCollection Při čtení položek přidružených EventLog k instanci použijte třídu . Vlastnost EntriesEventLog třídy je kolekce všech položek v protokolu událostí.
Vzhledem k tomu, že nové položky jsou připojeny k existujícímu seznamu, krokování kolekcí vám umožní přístup k položkám, které byly vytvořeny po vytvoření objektu EventLogEntryCollection. Po zobrazení celého seznamu se ale seznam neaktualizuje novými položkami.
Vlastnosti
Count |
Získá počet položek v protokolu událostí (to znamená počet prvků v kolekci EventLogEntry ). |
Item[Int32] |
Získá položku v protokolu událostí na základě indexu, který začíná na 0 (nula). |
Metody
CopyTo(EventLogEntry[], Int32) |
Zkopíruje elementy EventLogEntryCollection do pole EventLogEntry instancí počínaje určitým indexem pole. |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetEnumerator() |
Podporuje jednoduchou iteraci objektu EventLogEntryCollection . |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
Explicitní implementace rozhraní
ICollection.CopyTo(Array, Int32) |
Zkopíruje prvky kolekce do Array, počínaje konkrétním Array indexem. |
ICollection.IsSynchronized |
Získá hodnotu, která označuje, zda přístup k objektu EventLogEntryCollection je synchronizován (bezpečné pro přístup z více vláken). |
ICollection.SyncRoot |
Získá objekt, který lze použít k synchronizaci přístupu k objektu EventLogEntryCollection . |
Metody rozšíření
Cast<TResult>(IEnumerable) |
Přetypuje prvky objektu na IEnumerable zadaný typ. |
OfType<TResult>(IEnumerable) |
Filtruje prvky objektu IEnumerable na základě zadaného typu. |
AsParallel(IEnumerable) |
Umožňuje paralelizaci dotazu. |
AsQueryable(IEnumerable) |
Převede objekt na IEnumerableIQueryable. |