Udostępnij za pośrednictwem


EventLog.WriteEntry Metoda

Definicja

Zapisuje wpis w dzienniku zdarzeń.

Przeciążenia

WriteEntry(String, String, EventLogEntryType, Int32, Int16, Byte[])

Zapisuje wpis z podanym tekstem komunikatu, identyfikatorem zdarzenia zdefiniowanym przez aplikację i kategorią zdefiniowaną przez aplikację do dziennika zdarzeń (przy użyciu określonego zarejestrowanego źródła zdarzeń) i dołącza dane binarne do komunikatu.

WriteEntry(String, String, EventLogEntryType, Int32, Int16)

Zapisuje wpis z podanym tekstem komunikatu, identyfikatorem zdarzenia zdefiniowanym przez aplikację i kategorią zdefiniowaną przez aplikację w dzienniku zdarzeń przy użyciu określonego zarejestrowanego źródła zdarzeń. Za category pomocą Podgląd zdarzeń można filtrować zdarzenia w dzienniku.

WriteEntry(String, EventLogEntryType, Int32, Int16, Byte[])

Zapisuje wpis z podanym tekstem komunikatu, identyfikatorem zdarzenia zdefiniowanym przez aplikację i kategorią zdefiniowaną przez aplikację do dziennika zdarzeń i dołącza dane binarne do komunikatu.

WriteEntry(String, String, EventLogEntryType, Int32)

Zapisuje wpis z podanym tekstem komunikatu i identyfikatorem zdarzenia zdefiniowanym przez aplikację w dzienniku zdarzeń przy użyciu określonego zarejestrowanego źródła zdarzeń.

WriteEntry(String, EventLogEntryType, Int32, Int16)

Zapisuje wpis z podanym tekstem komunikatu, identyfikatorem zdarzenia zdefiniowanym przez aplikację i kategorią zdefiniowaną przez aplikację w dzienniku zdarzeń.

WriteEntry(String, EventLogEntryType)

Zapisuje błąd, ostrzeżenie, informacje, inspekcję powodzenia lub wpis inspekcji niepowodzenia z podanym tekstem komunikatu w dzienniku zdarzeń.

WriteEntry(String, EventLogEntryType, Int32)

Zapisuje wpis z podanym tekstem komunikatu i identyfikatorem zdarzenia zdefiniowanym przez aplikację w dzienniku zdarzeń.

WriteEntry(String, String)

Zapisuje wpis typu informacji z podanym tekstem wiadomości w dzienniku zdarzeń przy użyciu określonego zarejestrowanego źródła zdarzeń.

WriteEntry(String)

Zapisuje wpis typu informacji z podanym tekstem wiadomości w dzienniku zdarzeń.

WriteEntry(String, String, EventLogEntryType)

Zapisuje błąd, ostrzeżenie, informacje, inspekcję powodzenia lub wpis inspekcji niepowodzenia z podanym tekstem komunikatu w dzienniku zdarzeń przy użyciu określonego zarejestrowanego źródła zdarzeń.

WriteEntry(String, String, EventLogEntryType, Int32, Int16, Byte[])

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje wpis z podanym tekstem komunikatu, identyfikatorem zdarzenia zdefiniowanym przez aplikację i kategorią zdefiniowaną przez aplikację do dziennika zdarzeń (przy użyciu określonego zarejestrowanego źródła zdarzeń) i dołącza dane binarne do komunikatu.

public:
 static void WriteEntry(System::String ^ source, System::String ^ message, System::Diagnostics::EventLogEntryType type, int eventID, short category, cli::array <System::Byte> ^ rawData);
public static void WriteEntry (string source, string message, System.Diagnostics.EventLogEntryType type, int eventID, short category, byte[] rawData);
static member WriteEntry : string * string * System.Diagnostics.EventLogEntryType * int * int16 * byte[] -> unit
Public Shared Sub WriteEntry (source As String, message As String, type As EventLogEntryType, eventID As Integer, category As Short, rawData As Byte())

Parametry

source
String

Źródło, za pomocą którego aplikacja jest zarejestrowana na określonym komputerze.

message
String

Ciąg do zapisania w dzienniku zdarzeń.

type
EventLogEntryType

EventLogEntryType Jedna z wartości.

eventID
Int32

Identyfikator specyficzny dla aplikacji dla zdarzenia.

category
Int16

Podkategoria specyficzna dla aplikacji skojarzona z komunikatem.

rawData
Byte[]

Tablica bajtów zawierająca dane binarne skojarzone z wpisem.

Wyjątki

Wartość source jest pustym ciągiem ("").

-lub-

Wartość elementu source to null.

-lub-

eventID wartość jest mniejsza niż zero lub większa niż UInt16.MaxValue.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

type element nie jest prawidłowym EventLogEntryTypeelementem .

Nie można otworzyć klucza rejestru dziennika zdarzeń.

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

//Create a byte array for binary data to associate with the entry.
array<Byte>^myByte = gcnew array<Byte>(10);
//Populate the byte array with simulated data.
for ( int i = 0; i < 10; i++ )
{
   myByte[ i ] = (Byte)(i % 2);
}
//Write an entry to the event log that includes associated binary data.
Console::WriteLine( "Write from second source " );
EventLog::WriteEntry( "SecondSource", "Writing warning to event log.",
   EventLogEntryType::Error, myEventID, myCategory, myByte );
//Create a byte array for binary data to associate with the entry.
byte[] myByte = new byte[10];
//Populate the byte array with simulated data.
for (int i = 0; i < 10; i++)
{
    myByte[i] = (byte)(i % 2);
}
// Write an entry to the event log that includes associated binary data.
Console.WriteLine("Write from second source ");
EventLog.WriteEntry("SecondSource", "Writing warning to event log.",
                     EventLogEntryType.Error, myEventID, myCategory, myByte);
' Create a byte array for binary data to associate with the entry.
Dim myByte(9) As Byte
Dim i As Integer
' Populate the byte array with simulated data.
For i = 0 To 9
    myByte(i) = CByte(i Mod 2)
Next i
' Write an entry to the event log that includes associated binary data.
Console.WriteLine("Write from second source ")
EventLog.WriteEntry("SecondSource", "Writing warning to event log.", _
                     EventLogEntryType.Error, myEventID, myCategory, myByte)

Uwagi

Ta metoda służy do zapisywania danych specyficznych dla zdarzeń zdefiniowanych przez aplikację w dzienniku zdarzeń przy użyciu źródła już zarejestrowanego jako źródło zdarzeń dla odpowiedniego dziennika. Podgląd zdarzeń nie interpretuje tych danych; wyświetla dane pierwotne tylko w połączonym formacie szesnastkowym i tekstowym. Rzadko używaj danych specyficznych dla zdarzenia; uwzględnij je tylko wtedy, gdy masz pewność, że będzie to przydatne. Możesz również użyć danych specyficznych dla zdarzeń do przechowywania informacji, które aplikacja może przetwarzać niezależnie od Podgląd zdarzeń. Można na przykład napisać przeglądarkę specjalnie dla zdarzeń lub napisać program, który skanuje plik dziennika i tworzy raporty zawierające informacje z danych specyficznych dla zdarzenia.

Oprócz danych binarnych można określić kategorię zdefiniowaną przez aplikację i identyfikator zdarzenia zdefiniowanego przez aplikację. Podgląd zdarzeń używa kategorii do filtrowania zdarzeń zapisanych przez źródło zdarzeń. Podgląd zdarzeń może wyświetlić kategorię jako wartość liczbową lub użyć kategorii jako identyfikatora zasobu do wyświetlenia zlokalizowanego ciągu kategorii.

Uwaga

Parametr category powinien być wartością dodatnią. Wartości kategorii ujemnych są wyświetlane jako uzupełniająca liczba dodatnia w Podgląd zdarzeń. Na przykład wartość -10 będzie wyświetlana jako 65 526, a wartość -1 jako 65 535.

Aby wyświetlić zlokalizowane ciągi kategorii w Podgląd zdarzeń, należy użyć źródła zdarzeń skonfigurowanego z plikiem zasobów kategorii i ustawić category wartość na identyfikator zasobu w pliku zasobu kategorii. Jeśli źródło zdarzeń nie ma skonfigurowanego pliku zasobu kategorii lub określony category nie indeksuje ciągu w pliku zasobu kategorii, Podgląd zdarzeń wyświetla wartość kategorii liczbowej dla tego wpisu. Skonfiguruj plik zasobu kategorii wraz z liczbą ciągów kategorii w pliku zasobu przy użyciu EventLogInstaller klasy lub EventSourceCreationData .

Identyfikatory zdarzeń wraz ze źródłem zdarzeń jednoznacznie identyfikują zdarzenie. Każda aplikacja może definiować własne zdarzenia numerowane i ciągi opisu, na które mapują. Osoby przeglądające zdarzenia wyświetlają te wartości ciągów, aby pomóc użytkownikowi zrozumieć, co poszło nie tak i zasugerować, jakie działania należy wykonać.

Na koniec można określić EventLogEntryType zdarzenie zapisywane w dzienniku zdarzeń. Element type jest wskazywany przez ikonę i tekst w kolumnie Typ w Podgląd zdarzeń dziennika. Ten parametr wskazuje, czy typ zdarzenia to błąd, ostrzeżenie, informacje, inspekcja powodzenia lub inspekcja niepowodzeń.

Przed zapisaniem pierwszego wpisu ze źródłem należy utworzyć i skonfigurować źródło zdarzeń. Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz zapisać zdarzenie z nowym źródłem, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub CreateEventSource metody . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń; nie używa lokalizowalnego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu identyfikatorów zasobów i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie , aby zapisać wpisy przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie WriteEntry , aby zapisywać ciągi bezpośrednio w dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń jest przerywany na znak NUL.

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Zobacz też

Dotyczy

WriteEntry(String, String, EventLogEntryType, Int32, Int16)

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje wpis z podanym tekstem komunikatu, identyfikatorem zdarzenia zdefiniowanym przez aplikację i kategorią zdefiniowaną przez aplikację w dzienniku zdarzeń przy użyciu określonego zarejestrowanego źródła zdarzeń. Za category pomocą Podgląd zdarzeń można filtrować zdarzenia w dzienniku.

public:
 static void WriteEntry(System::String ^ source, System::String ^ message, System::Diagnostics::EventLogEntryType type, int eventID, short category);
public static void WriteEntry (string source, string message, System.Diagnostics.EventLogEntryType type, int eventID, short category);
static member WriteEntry : string * string * System.Diagnostics.EventLogEntryType * int * int16 -> unit
Public Shared Sub WriteEntry (source As String, message As String, type As EventLogEntryType, eventID As Integer, category As Short)

Parametry

source
String

Źródło, za pomocą którego aplikacja jest zarejestrowana na określonym komputerze.

message
String

Ciąg do zapisania w dzienniku zdarzeń.

type
EventLogEntryType

EventLogEntryType Jedna z wartości.

eventID
Int32

Identyfikator specyficzny dla aplikacji dla zdarzenia.

category
Int16

Podkategoria specyficzna dla aplikacji skojarzona z komunikatem.

Wyjątki

Wartość source jest pustym ciągiem ("").

-lub-

Wartość elementu source to null.

-lub-

eventID wartość jest mniejsza niż zero lub większa niż UInt16.MaxValue.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

Nie można otworzyć klucza rejestru dziennika zdarzeń.

type element nie jest prawidłowym EventLogEntryTypeelementem .

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

int myEventID = 20;
short myCategory = 10;

// Write an informational entry to the event log.
Console::WriteLine( "Write from first source " );
EventLog::WriteEntry( "FirstSource", "Writing warning to event log.",
   EventLogEntryType::Information, myEventID, myCategory );
int myEventID = 20;
short myCategory = 10;
// Write an informational entry to the event log.
Console.WriteLine("Write from first source ");
EventLog.WriteEntry("FirstSource", "Writing warning to event log.",
                     EventLogEntryType.Information, myEventID, myCategory);
Dim myEventID As Integer = 10
Dim myCategory As Short = 20
' Write an informational entry to the event log.
Console.WriteLine("Write from first source ")
EventLog.WriteEntry("FirstSource", "Writing warning to event log.", _
                           EventLogEntryType.Information, myEventID, myCategory)

Uwagi

Ta metoda służy do zapisywania wpisu ze zdefiniowanym category przez aplikację w dzienniku zdarzeń przy użyciu źródła, które jest już zarejestrowane jako źródło zdarzeń dla odpowiedniego dziennika. Podgląd zdarzeń używa kategorii do filtrowania zdarzeń zapisanych przez źródło zdarzeń. Podgląd zdarzeń może wyświetlić kategorię jako wartość liczbową lub użyć kategorii jako identyfikatora zasobu do wyświetlenia zlokalizowanego ciągu kategorii.

Uwaga

Parametr category powinien być wartością dodatnią. Wartości kategorii ujemnych są wyświetlane jako uzupełniająca liczba dodatnia w Podgląd zdarzeń. Na przykład wartość -10 jest wyświetlana jako 65 526, a wartość -1 jako 65 535.

Aby wyświetlić zlokalizowane ciągi kategorii w Podgląd zdarzeń, należy użyć źródła zdarzeń skonfigurowanego z plikiem zasobów kategorii i ustawić category wartość na identyfikator zasobu w pliku zasobu kategorii. Jeśli źródło zdarzeń nie ma skonfigurowanego pliku zasobu kategorii lub określony category nie indeksuje ciągu w pliku zasobu kategorii, Podgląd zdarzeń wyświetla wartość kategorii liczbowej dla tego wpisu. Skonfiguruj plik zasobu kategorii wraz z liczbą ciągów kategorii w pliku zasobu przy użyciu EventLogInstaller klasy lub EventSourceCreationData .

Oprócz kategorii można określić identyfikator zdarzenia dla zdarzenia zapisywanego w dzienniku zdarzeń. Identyfikatory zdarzeń wraz ze źródłem zdarzeń jednoznacznie identyfikują zdarzenie. Każda aplikacja może definiować własne zdarzenia numerowane i ciągi opisu, na które mapują. Osoby przeglądające zdarzenia wyświetlają te wartości ciągów, aby pomóc użytkownikowi zrozumieć, co poszło nie tak i zasugerować, jakie działania należy wykonać.

Na koniec można określić EventLogEntryType zdarzenie zapisywane w dzienniku zdarzeń. Element type jest wskazywany przez ikonę i tekst w kolumnie Typ w Podgląd zdarzeń dziennika. Ten parametr wskazuje, czy typ zdarzenia to błąd, ostrzeżenie, informacje, inspekcja powodzenia lub inspekcja niepowodzeń.

Przed zapisaniem pierwszego wpisu ze źródłem należy utworzyć i skonfigurować źródło zdarzeń. Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz zapisać zdarzenie z nowym źródłem, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub CreateEventSource metody . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń; nie używa lokalizowalnego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu identyfikatorów zasobów i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie , aby zapisać wpisy przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie WriteEntry , aby zapisywać ciągi bezpośrednio w dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń jest przerywany na znak NUL.

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Zobacz też

Dotyczy

WriteEntry(String, EventLogEntryType, Int32, Int16, Byte[])

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje wpis z podanym tekstem komunikatu, identyfikatorem zdarzenia zdefiniowanym przez aplikację i kategorią zdefiniowaną przez aplikację do dziennika zdarzeń i dołącza dane binarne do komunikatu.

public:
 void WriteEntry(System::String ^ message, System::Diagnostics::EventLogEntryType type, int eventID, short category, cli::array <System::Byte> ^ rawData);
public void WriteEntry (string message, System.Diagnostics.EventLogEntryType type, int eventID, short category, byte[] rawData);
member this.WriteEntry : string * System.Diagnostics.EventLogEntryType * int * int16 * byte[] -> unit
Public Sub WriteEntry (message As String, type As EventLogEntryType, eventID As Integer, category As Short, rawData As Byte())

Parametry

message
String

Ciąg do zapisania w dzienniku zdarzeń.

type
EventLogEntryType

EventLogEntryType Jedna z wartości.

eventID
Int32

Identyfikator specyficzny dla aplikacji dla zdarzenia.

category
Int16

Podkategoria specyficzna dla aplikacji skojarzona z komunikatem.

rawData
Byte[]

Tablica bajtów zawierająca dane binarne skojarzone z wpisem.

Wyjątki

Właściwość Source obiektu EventLog nie została ustawiona.

-lub-

Metoda próbowała zarejestrować nowe źródło zdarzeń, ale nazwa komputera w MachineName pliku jest nieprawidłowa.

-lub-

Źródło jest już zarejestrowane dla innego dziennika zdarzeń.

-lub-

eventID wartość jest mniejsza niż zero lub większa niż UInt16.MaxValue.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

Nie można otworzyć klucza rejestru dziennika zdarzeń.

type element nie jest prawidłowym EventLogEntryTypeelementem .

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

// Create the source, if it does not already exist.
String^ myLogName = "myNewLog";
if (  !EventLog::SourceExists( "MySource" ) )
{
   EventLog::CreateEventSource( "MySource", myLogName );
   Console::WriteLine( "Creating EventSource" );
}
else
   myLogName = EventLog::LogNameFromSourceName( "MySource", "." );

// Create an EventLog and assign source.
EventLog^ myEventLog = gcnew EventLog;
myEventLog->Source = "MySource";
myEventLog->Log = myLogName;

// Set the 'description' for the event.
String^ myMessage = "This is my event.";
EventLogEntryType myEventLogEntryType = EventLogEntryType::Warning;
int myApplicatinEventId = 1100;
short myApplicatinCategoryId = 1;

// Set the 'data' for the event.
array<Byte>^ myRawData = gcnew array<Byte>(4);
for ( int i = 0; i < 4; i++ )
{
   myRawData[ i ] = 1;
}
Console::WriteLine( "Writing to EventLog.. " );
myEventLog->WriteEntry( myMessage, myEventLogEntryType, myApplicatinEventId, myApplicatinCategoryId, myRawData );
// Create the source, if it does not already exist.
string myLogName = "myNewLog";
if(!EventLog.SourceExists("MySource"))
{
   // 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("Created EventSource");
   Console.WriteLine("Exiting, execute the application a second time to use the source.");
   return;
}
else
   {
       myLogName = EventLog.LogNameFromSourceName("MySource",".");
   }
   // Create an EventLog and assign source.
   EventLog myEventLog = new EventLog();
myEventLog.Source = "MySource";
myEventLog.Log = myLogName;

// Set the 'description' for the event.
string myMessage = "This is my event.";
EventLogEntryType myEventLogEntryType = EventLogEntryType.Warning;
int myApplicatinEventId = 1100;
short myApplicatinCategoryId = 1;

// Set the 'data' for the event.
byte[] myRawData = new byte[4];
for(int i=0;i<4;i++)
{
   myRawData[i]=1;
}
// Write the entry in the event log.
Console.WriteLine("Writing to EventLog.. ");
myEventLog.WriteEntry(myMessage,myEventLogEntryType,
   myApplicatinEventId, myApplicatinCategoryId, myRawData);
' Create the source, if it does not already exist.
dim myLogName as string = "myNewLog"
If Not EventLog.SourceExists("MySource") Then
   EventLog.CreateEventSource("MySource", myLogName)
   Console.WriteLine("Creating EventSource")
else
   myLogName = EventLog.LogNameFromSourceName("MySource",".")
End If

' Create an EventLog and assign source.
Dim myEventLog As New EventLog()
myEventLog.Source = "MySource"
myEventLog.Log = myLogName

' Set the 'description' for the event.
Dim myMessage As String = "This is my event."
Dim myEventLogEntryType As EventLogEntryType = EventLogEntryType.Warning
Dim myApplicatinEventId As Integer = 1100
Dim myApplicatinCategoryId As Short = 1

' Set the 'data' for the event.
Dim myRawData(3) As Byte
Dim i As Integer
For i = 0 To 3
   myRawData(i) = 1
Next i
' Write the entry in the event log.
Console.WriteLine("Writing to EventLog.. ")
myEventLog.WriteEntry(myMessage, myEventLogEntryType, myApplicatinEventId, _
                     myApplicatinCategoryId, myRawData)

Uwagi

To przeciążenie służy do zapisywania danych specyficznych dla zdarzeń zdefiniowanych przez aplikację w dzienniku zdarzeń. Podgląd zdarzeń nie interpretuje tych danych; wyświetla dane pierwotne tylko w połączonym formacie szesnastkowym i tekstowym. Rzadko używaj danych specyficznych dla zdarzenia, w tym tylko wtedy, gdy masz pewność, że będzie to przydatne dla kogoś debugowania problemu. Możesz również użyć danych specyficznych dla zdarzeń do przechowywania informacji, które aplikacja może przetwarzać niezależnie od Podgląd zdarzeń. Można na przykład napisać przeglądarkę specjalnie dla zdarzeń lub napisać program, który skanuje plik dziennika i tworzy raporty zawierające informacje z danych specyficznych dla zdarzenia.

Oprócz danych binarnych można określić kategorię zdefiniowaną przez aplikację i identyfikator zdarzenia zdefiniowanego przez aplikację. Podgląd zdarzeń używa kategorii do filtrowania zdarzeń zapisanych przez źródło zdarzeń. Podgląd zdarzeń może wyświetlić kategorię jako wartość liczbową lub użyć kategorii jako identyfikatora zasobu do wyświetlenia zlokalizowanego ciągu kategorii.

Uwaga

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Uwaga

Parametr category powinien być wartością dodatnią. Wartości kategorii ujemnych są wyświetlane jako uzupełniająca liczba dodatnia w Podgląd zdarzeń. Na przykład wartość -10 jest wyświetlana jako 65 526, a wartość -1 jako 65 535.

Aby wyświetlić zlokalizowane ciągi kategorii w Podgląd zdarzeń, należy użyć źródła zdarzeń skonfigurowanego z plikiem zasobów kategorii i ustawić category wartość na identyfikator zasobu w pliku zasobu kategorii. Jeśli źródło zdarzeń nie ma skonfigurowanego pliku zasobu kategorii lub określony category nie indeksuje ciągu w pliku zasobu kategorii, Podgląd zdarzeń wyświetla wartość kategorii liczbowej dla tego wpisu. Skonfiguruj plik zasobu kategorii wraz z liczbą ciągów kategorii w pliku zasobu przy użyciu EventLogInstaller klasy lub EventSourceCreationData .

Identyfikatory zdarzeń wraz ze źródłem zdarzeń jednoznacznie identyfikują zdarzenie. Każda aplikacja może definiować własne zdarzenia numerowane i ciągi opisu, na które mapują. Osoby przeglądające zdarzenia wyświetlają te wartości ciągów, aby pomóc użytkownikowi zrozumieć, co poszło nie tak i zasugerować, jakie działania należy wykonać.

Na koniec można określić EventLogEntryType zdarzenie zapisywane w dzienniku zdarzeń. Element type jest wskazywany przez ikonę i tekst w kolumnie Typ w Podgląd zdarzeń dziennika. Ten parametr wskazuje, czy typ zdarzenia to błąd, ostrzeżenie, informacje, inspekcja powodzenia lub inspekcja niepowodzeń.

Przed zapisanie wpisów w dzienniku należy ustawić Source właściwość składnika EventLog . Przed zapisaniem pierwszego wpisu ze źródłem należy utworzyć i skonfigurować źródło zdarzeń.

Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz zapisać zdarzenie z nowym źródłem, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub CreateEventSource metody . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Jeśli źródło określone we Source właściwości tego EventLog wystąpienia nie jest zarejestrowane na komputerze, do którego jest zapisywany składnik, WriteEntry wywołuje CreateEventSource i rejestruje źródło.

Uwaga

Jeśli nie określisz MachineName elementu dla EventLog wystąpienia przed wywołaniem CreateEventSource metody lub WriteEntry, przyjmuje się, że zostanie przyjęty komputer lokalny (".").

Jeśli system musi zarejestrować Source metodę za pośrednictwem wywołania metody WriteEntry , a Log właściwość nie została ustawiona w EventLog wystąpieniu, domyślnie dziennik jest ustawiony na dziennik aplikacji.

Uwaga

Wiele wyjątków wymienionych powyżej jest generowanych przez błędy zgłaszane podczas procesu rejestrowania obiektu Source.

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń; nie używa lokalizowalnego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu identyfikatorów zasobów i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie , aby zapisać wpisy przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie WriteEntry , aby zapisywać ciągi bezpośrednio w dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

Jeśli napiszesz wpis na komputerze zdalnym, wartość komunikatu (ciąg tekstowy) może nie być oczekiwana, jeśli komputer zdalny nie uruchamia .NET Framework.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń jest przerywany na znak NUL.

Zobacz też

Dotyczy

WriteEntry(String, String, EventLogEntryType, Int32)

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje wpis z podanym tekstem komunikatu i identyfikatorem zdarzenia zdefiniowanym przez aplikację w dzienniku zdarzeń przy użyciu określonego zarejestrowanego źródła zdarzeń.

public:
 static void WriteEntry(System::String ^ source, System::String ^ message, System::Diagnostics::EventLogEntryType type, int eventID);
public static void WriteEntry (string source, string message, System.Diagnostics.EventLogEntryType type, int eventID);
static member WriteEntry : string * string * System.Diagnostics.EventLogEntryType * int -> unit
Public Shared Sub WriteEntry (source As String, message As String, type As EventLogEntryType, eventID As Integer)

Parametry

source
String

Źródło, za pomocą którego aplikacja jest zarejestrowana na określonym komputerze.

message
String

Ciąg do zapisania w dzienniku zdarzeń.

type
EventLogEntryType

EventLogEntryType Jedna z wartości.

eventID
Int32

Identyfikator specyficzny dla aplikacji dla zdarzenia.

Wyjątki

Wartość source jest pustym ciągiem ("").

-lub-

Wartość elementu source to null.

-lub-

eventID wartość jest mniejsza niż zero lub większa niż UInt16.MaxValue.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

Nie można otworzyć klucza rejestru dziennika zdarzeń.

type element nie jest prawidłowym EventLogEntryTypeelementem .

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

// Create the source, if it does not already exist.
if (  !EventLog::SourceExists( "MySource" ) )
{
   EventLog::CreateEventSource( "MySource", "myNewLog" );
   Console::WriteLine( "Creating EventSource" );
}

// Set the 'description' for the event.
String^ myMessage = "This is my event.";
EventLogEntryType myEventLogEntryType = EventLogEntryType::Warning;
int myApplicationEventId = 100;

// Write the entry in the event log.
Console::WriteLine( "Writing to EventLog.. " );
EventLog::WriteEntry( "MySource", myMessage,
   myEventLogEntryType, myApplicationEventId );
// Create the source, if it does not already exist.
if(!EventLog.SourceExists("MySource"))
{
   // 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", "myNewLog");
   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;
}

// Set the 'description' for the event.
string myMessage = "This is my event.";
EventLogEntryType myEventLogEntryType = EventLogEntryType.Warning;
int myApplicationEventId = 100;

// Write the entry in the event log.
Console.WriteLine("Writing to EventLog.. ");
EventLog.WriteEntry("MySource",myMessage,
   myEventLogEntryType, myApplicationEventId);
' Create the source, if it does not already exist.
If Not EventLog.SourceExists("MySource") Then
   EventLog.CreateEventSource("MySource", "myNewLog")
   Console.WriteLine("Creating EventSource")
End If

' Set the 'description' for the event.
Dim myMessage As String = "This is my event."
Dim myEventLogEntryType As EventLogEntryType = EventLogEntryType.Warning
Dim myApplicationEventId As Integer = 100

' Write the entry in the event log.
Console.WriteLine("Writing to EventLog.. ")
EventLog.WriteEntry("MySource", myMessage, myEventLogEntryType, myApplicationEventId)

Uwagi

Ta metoda służy do zapisywania wpisu ze zdefiniowanym eventID przez aplikację w dzienniku zdarzeń przy użyciu źródła, które jest już zarejestrowane jako źródło zdarzeń dla odpowiedniego dziennika. Element eventID, wraz ze źródłem, jednoznacznie identyfikuje zdarzenie. Każda aplikacja może definiować własne zdarzenia numerowane i ciągi opisu, na które mapują. Osoby przeglądające zdarzenia przedstawiają te ciągi użytkownikowi, aby pomóc użytkownikowi zrozumieć, co poszło nie tak i zasugerować, jakie działania należy wykonać.

Uwaga

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Oprócz identyfikatora zdarzenia to przeciążenie WriteEntry umożliwia określenie EventLogEntryType zdarzenia zapisywanego w dzienniku zdarzeń. Element type jest wskazywany przez ikonę i tekst w kolumnie Typ w Podgląd zdarzeń dziennika. Ten parametr wskazuje, czy typ zdarzenia to błąd, ostrzeżenie, informacje, inspekcja powodzenia lub inspekcja niepowodzeń.

Przed zapisaniem pierwszego wpisu ze źródłem należy utworzyć i skonfigurować źródło zdarzeń. Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz zapisać zdarzenie z nowym źródłem, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub CreateEventSource metody . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń; nie używa lokalizowalnego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu identyfikatorów zasobów i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie , aby zapisać wpisy przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie WriteEntry , aby zapisywać ciągi bezpośrednio w dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń jest przerywany na znak NUL.

Zobacz też

Dotyczy

WriteEntry(String, EventLogEntryType, Int32, Int16)

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje wpis z podanym tekstem komunikatu, identyfikatorem zdarzenia zdefiniowanym przez aplikację i kategorią zdefiniowaną przez aplikację w dzienniku zdarzeń.

public:
 void WriteEntry(System::String ^ message, System::Diagnostics::EventLogEntryType type, int eventID, short category);
public void WriteEntry (string message, System.Diagnostics.EventLogEntryType type, int eventID, short category);
member this.WriteEntry : string * System.Diagnostics.EventLogEntryType * int * int16 -> unit
Public Sub WriteEntry (message As String, type As EventLogEntryType, eventID As Integer, category As Short)

Parametry

message
String

Ciąg do zapisania w dzienniku zdarzeń.

type
EventLogEntryType

EventLogEntryType Jedna z wartości.

eventID
Int32

Identyfikator specyficzny dla aplikacji dla zdarzenia.

category
Int16

Podkategoria specyficzna dla aplikacji skojarzona z komunikatem.

Wyjątki

Właściwość Source obiektu EventLog nie została ustawiona.

-lub-

Metoda próbowała zarejestrować nowe źródło zdarzeń, ale nazwa komputera w MachineName pliku jest nieprawidłowa.

-lub-

Źródło jest już zarejestrowane dla innego dziennika zdarzeń.

-lub-

eventID wartość jest mniejsza niż zero lub większa niż UInt16.MaxValue.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

Nie można otworzyć klucza rejestru dziennika zdarzeń.

type element nie jest prawidłowym EventLogEntryTypeelementem .

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

// Create an EventLog instance and assign its source.
EventLog^ myLog = gcnew EventLog;
myLog->Source = "ThirdSource";

// Write an informational entry to the event log.
Console::WriteLine( "Write from third source " );
myLog->WriteEntry( "Writing warning to event log.",
   EventLogEntryType::Warning, myEventID, myCategory );
// Create an EventLog instance and assign its source.
EventLog myLog = new EventLog();
myLog.Source = "ThirdSource";

// Write an informational entry to the event log.
Console.WriteLine("Write from third source ");
myLog.WriteEntry("Writing warning to event log.",
                  EventLogEntryType.Warning, myEventID, myCategory);
' Create an EventLog instance and assign its source.
Dim myLog As New EventLog()
myLog.Source = "ThirdSource"

' Write an informational entry to the event log.
Console.WriteLine("Write from third source ")
myLog.WriteEntry("Writing warning to event log.", EventLogEntryType.Warning, _
                     myEventID, myCategory)

Uwagi

Ta metoda służy do zapisywania wpisu ze zdefiniowaną category przez aplikację w dzienniku zdarzeń. Podgląd zdarzeń używa kategorii do filtrowania zdarzeń zapisanych przez źródło zdarzeń. Podgląd zdarzeń może wyświetlić kategorię jako wartość liczbową lub użyć kategorii jako identyfikatora zasobu do wyświetlenia zlokalizowanego ciągu kategorii.

Uwaga

Parametr category powinien być wartością dodatnią. Wartości kategorii ujemnych są wyświetlane jako uzupełniająca liczba dodatnia w Podgląd zdarzeń. Na przykład wartość -10 jest wyświetlana jako 65 526, a wartość -1 jako 65 535.

Uwaga

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Aby wyświetlić zlokalizowane ciągi kategorii w Podgląd zdarzeń, należy użyć źródła zdarzeń skonfigurowanego z plikiem zasobów kategorii i ustawić category wartość na identyfikator zasobu w pliku zasobu kategorii. Jeśli źródło zdarzeń nie ma skonfigurowanego pliku zasobu kategorii lub określony category nie indeksuje ciągu w pliku zasobu kategorii, Podgląd zdarzeń wyświetla wartość kategorii liczbowej dla tego wpisu. Skonfiguruj plik zasobu kategorii wraz z liczbą ciągów kategorii w pliku zasobu przy użyciu EventLogInstaller klasy lub EventSourceCreationData .

Oprócz kategorii można określić identyfikator zdarzenia dla zdarzenia zapisywanego w dzienniku zdarzeń. Identyfikatory zdarzeń wraz ze źródłem zdarzeń jednoznacznie identyfikują zdarzenie. Każda aplikacja może definiować własne zdarzenia numerowane i ciągi opisu, na które mapują. Osoby przeglądające zdarzenia wyświetlają te wartości ciągów, aby pomóc użytkownikowi zrozumieć, co poszło nie tak i zasugerować, jakie działania należy wykonać.

Na koniec można określić EventLogEntryType zdarzenie zapisywane w dzienniku zdarzeń. Element type jest wskazywany przez ikonę i tekst w kolumnie Typ w Podgląd zdarzeń dziennika. Ten parametr wskazuje, czy typ zdarzenia to błąd, ostrzeżenie, informacje, inspekcja powodzenia lub inspekcja niepowodzeń.

Przed zapisanie wpisów w dzienniku należy ustawić Source właściwość składnika EventLog . Przed zapisaniem pierwszego wpisu ze źródłem należy utworzyć i skonfigurować źródło zdarzeń.

Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz zapisać zdarzenie z nowym źródłem, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub CreateEventSource metody . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Jeśli źródło określone we Source właściwości tego EventLog wystąpienia nie jest zarejestrowane na komputerze, do którego jest zapisywany składnik, WriteEntry wywołuje CreateEventSource i rejestruje źródło.

Uwaga

Jeśli nie określisz MachineName elementu dla EventLog wystąpienia przed wywołaniem CreateEventSource metody lub WriteEntry, przyjmuje się, że zostanie przyjęty komputer lokalny (".").

Jeśli system musi zarejestrować Source metodę za pośrednictwem wywołania metody WriteEntry , a Log właściwość nie została ustawiona w EventLog wystąpieniu, domyślnie dziennik jest ustawiony na dziennik aplikacji.

Uwaga

Wiele wyjątków wymienionych powyżej jest generowanych przez błędy zgłaszane podczas procesu rejestrowania obiektu Source.

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń; nie używa lokalizowalnego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu zarówno identyfikatorów zasobów, jak i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie do zapisu wpisów przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie , aby zapisywać ciągi bezpośrednio w WriteEntry dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

Jeśli napiszesz wpis na komputerze zdalnym, wartość komunikatu (ciąg tekstowy) może nie być oczekiwana, jeśli komputer zdalny nie uruchamia .NET Framework.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń zostanie zakończony w znaku NUL.

Zobacz też

Dotyczy

WriteEntry(String, EventLogEntryType)

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje błąd, ostrzeżenie, informacje, inspekcję powodzenia lub wpis inspekcji niepowodzenia z podanym tekstem komunikatu do dziennika zdarzeń.

public:
 void WriteEntry(System::String ^ message, System::Diagnostics::EventLogEntryType type);
public void WriteEntry (string message, System.Diagnostics.EventLogEntryType type);
member this.WriteEntry : string * System.Diagnostics.EventLogEntryType -> unit
Public Sub WriteEntry (message As String, type As EventLogEntryType)

Parametry

message
String

Ciąg do zapisu w dzienniku zdarzeń.

type
EventLogEntryType

Jedna z EventLogEntryType wartości.

Wyjątki

Właściwość Source elementu EventLog nie została ustawiona.

-lub-

Metoda próbowała zarejestrować nowe źródło zdarzeń, ale nazwa komputera w MachineName pliku jest nieprawidłowa.

-lub-

Źródło jest już zarejestrowane dla innego dziennika zdarzeń.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

type nie jest prawidłowym EventLogEntryTypeelementem .

Nie można otworzyć klucza rejestru dla dziennika zdarzeń.

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

Poniższy przykład zapisuje wpis ostrzegawczy w dzienniku zdarzeń "MyNewLog" na komputerze lokalnym.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
int main()
{
   
   // Create an EventLog instance and assign its source.
   EventLog^ myLog = gcnew EventLog("MyNewLog");
   myLog->Source = "MyNewLogSource";
   
   // Write an informational entry to the event log.    
   myLog->WriteEntry( "Writing warning to event log.", EventLogEntryType::Warning );
}
using System;
using System.Diagnostics;
using System.Threading;

class MySample1
{

    public static void Main()
    {

        // Create an EventLog instance and assign its source.
        EventLog myLog = new EventLog("MyNewLog");
        myLog.Source = "MyNewLogSource";

        // Write an informational entry to the event log.
        myLog.WriteEntry("Writing warning to event log.", EventLogEntryType.Warning);
    }
}
Option Strict
Option Explicit

Imports System.Diagnostics
Imports System.Threading

Class MySample
    Public Shared Sub Main()
        ' Create an EventLog instance and assign its source.
        Dim myLog As New EventLog("MyNewLog")
        myLog.Source = "MyNewLogSource"
        
        ' Write an informational entry to the event log.    
        myLog.WriteEntry("Writing warning to event log.", EventLogEntryType.Warning)
    End Sub
End Class

Uwagi

Ta metoda służy do zapisywania wpisu określonego EventLogEntryType w dzienniku zdarzeń. Element type jest wskazywany przez ikonę i tekst w kolumnie Typ w Podgląd zdarzeń dziennika.

Uwaga

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Przed zapisem wpisów w dzienniku należy ustawić Source właściwość składnika EventLog . Należy utworzyć i skonfigurować źródło zdarzeń przed zapisaniem pierwszego wpisu ze źródłem.

Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz napisać zdarzenie przy użyciu nowego źródła, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub metody CreateEventSource . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Jeśli źródło określone we Source właściwości tego EventLog wystąpienia nie jest zarejestrowane na komputerze, do którego jest zapisywany składnik, WriteEntry wywołuje CreateEventSource i rejestruje źródło.

Uwaga

Jeśli nie określisz MachineName elementu dla EventLog wystąpienia przed wywołaniem lub CreateEventSourceWriteEntry, zakłada się, że zostanie przyjęty komputer lokalny (".").

Jeśli system musi zarejestrować Source obiekt za pomocą wywołania , WriteEntry a Log właściwość nie została ustawiona na wystąpieniu EventLog , dziennik jest domyślnie ustawiony na dziennik aplikacji.

Uwaga

Wiele wyjątków wymienionych powyżej jest generowanych przez błędy zgłaszane podczas procesu rejestrowania Sourceobiektu .

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń. Nie używa zlokalizowanego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu zarówno identyfikatorów zasobów, jak i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie do zapisu wpisów przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie , aby zapisywać ciągi bezpośrednio w WriteEntry dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

Jeśli napiszesz wpis na komputerze zdalnym, wartość komunikatu (ciąg tekstowy) może nie być oczekiwana, jeśli komputer zdalny nie uruchamia .NET Framework.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń zostanie zakończony w znaku NUL.

Zobacz też

Dotyczy

WriteEntry(String, EventLogEntryType, Int32)

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje wpis z podanym tekstem komunikatu i identyfikatorem zdarzenia zdefiniowanym przez aplikację w dzienniku zdarzeń.

public:
 void WriteEntry(System::String ^ message, System::Diagnostics::EventLogEntryType type, int eventID);
public void WriteEntry (string message, System.Diagnostics.EventLogEntryType type, int eventID);
member this.WriteEntry : string * System.Diagnostics.EventLogEntryType * int -> unit
Public Sub WriteEntry (message As String, type As EventLogEntryType, eventID As Integer)

Parametry

message
String

Ciąg do zapisu w dzienniku zdarzeń.

type
EventLogEntryType

Jedna z EventLogEntryType wartości.

eventID
Int32

Identyfikator specyficzny dla aplikacji dla zdarzenia.

Wyjątki

Właściwość Source elementu EventLog nie została ustawiona.

-lub-

Metoda próbowała zarejestrować nowe źródło zdarzeń, ale nazwa komputera w MachineName pliku jest nieprawidłowa.

-lub-

Źródło jest już zarejestrowane dla innego dziennika zdarzeń.

-lub-

eventID wartość jest mniejsza niż zero lub większa niż UInt16.MaxValue.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

Nie można otworzyć klucza rejestru dla dziennika zdarzeń.

type nie jest prawidłowym EventLogEntryTypeelementem .

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

// Create an EventLog instance and assign its source.
EventLog^ myLog = gcnew EventLog;
myLog->Source = "ThirdSource";

// Write an informational entry to the event log.
Console::WriteLine( "Write from third source " );
myLog->WriteEntry( "Writing warning to event log.",
   EventLogEntryType::Warning, myEventID, myCategory );
// Create an EventLog instance and assign its source.
EventLog myLog = new EventLog();
myLog.Source = "ThirdSource";

// Write an informational entry to the event log.
Console.WriteLine("Write from third source ");
myLog.WriteEntry("Writing warning to event log.",
                  EventLogEntryType.Warning, myEventID, myCategory);
' Create an EventLog instance and assign its source.
Dim myLog As New EventLog()
myLog.Source = "ThirdSource"

' Write an informational entry to the event log.
Console.WriteLine("Write from third source ")
myLog.WriteEntry("Writing warning to event log.", EventLogEntryType.Warning, _
                     myEventID, myCategory)

Uwagi

Użyj tej metody, aby napisać wpis z zdefiniowanym eventID przez aplikację dziennikiem zdarzeń. Element eventID wraz ze źródłem jednoznacznie identyfikuje zdarzenie. Każda aplikacja może definiować własne zdarzenia numerowane i ciągi opisu, do których są mapowane. Osoby przeglądające zdarzenia wyświetlają te wartości ciągów, aby ułatwić użytkownikowi zrozumienie, co poszło nie tak i zasugerować, jakie działania należy wykonać.

Uwaga

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Oprócz identyfikatora zdarzenia można określić EventLogEntryType zdarzenie zapisywane w dzienniku zdarzeń. Element type jest wskazywany przez ikonę i tekst w kolumnie Typ w Podgląd zdarzeń dziennika. Ten parametr wskazuje, czy typ zdarzenia to błąd, ostrzeżenie, informacje, inspekcja powodzenia lub inspekcja niepowodzeń.

Przed zapisem wpisów w dzienniku należy ustawić Source właściwość składnika EventLog . Należy utworzyć i skonfigurować źródło zdarzeń przed zapisaniem pierwszego wpisu ze źródłem.

Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz napisać zdarzenie przy użyciu nowego źródła, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub metody CreateEventSource . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Jeśli źródło określone we Source właściwości tego EventLog wystąpienia nie jest zarejestrowane na komputerze, do którego jest zapisywany składnik, WriteEntry wywołuje CreateEventSource i rejestruje źródło.

Uwaga

Jeśli nie określisz MachineName elementu dla EventLog wystąpienia przed wywołaniem lub CreateEventSourceWriteEntry, zakłada się, że zostanie przyjęty komputer lokalny (".").

Jeśli system musi zarejestrować Source obiekt za pomocą wywołania , WriteEntry a Log właściwość nie została ustawiona na wystąpieniu EventLog , dziennik jest domyślnie ustawiony na dziennik aplikacji.

Uwaga

Wiele wyjątków wymienionych powyżej jest generowanych przez błędy zgłaszane podczas procesu rejestrowania Sourceobiektu .

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń. Nie używa zlokalizowanego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu zarówno identyfikatorów zasobów, jak i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie do zapisu wpisów przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie , aby zapisywać ciągi bezpośrednio w WriteEntry dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

Jeśli napiszesz wpis na komputerze zdalnym, wartość komunikatu (ciąg tekstowy) może nie być oczekiwana, jeśli komputer zdalny nie uruchamia .NET Framework.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń jest przerywany na znak NUL.

Zobacz też

Dotyczy

WriteEntry(String, String)

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje wpis typu informacji z podanym tekstem wiadomości w dzienniku zdarzeń przy użyciu określonego zarejestrowanego źródła zdarzeń.

public:
 static void WriteEntry(System::String ^ source, System::String ^ message);
public static void WriteEntry (string source, string message);
static member WriteEntry : string * string -> unit
Public Shared Sub WriteEntry (source As String, message As String)

Parametry

source
String

Źródło, za pomocą którego aplikacja jest zarejestrowana na określonym komputerze.

message
String

Ciąg do zapisania w dzienniku zdarzeń.

Wyjątki

Wartość source jest pustym ciągiem ("").

-lub-

Wartość elementu source to null.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

Nie można otworzyć klucza rejestru dziennika zdarzeń.

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

Poniższy przykład tworzy źródło MySource , jeśli jeszcze nie istnieje, i zapisuje wpis w dzienniku MyNewLogzdarzeń .

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
int main()
{
   
   // Create the source, if it does not already exist.
   if (  !EventLog::SourceExists( "MySource" ) )
   {
      EventLog::CreateEventSource( "MySource", "myNewLog" );
      Console::WriteLine( "CreatingEventSource" );
   }

   
   // Write an informational entry to the event log.    
   EventLog::WriteEntry( "MySource", "Writing to event log." );
}
using System;
using System.Diagnostics;
using System.Threading;

class MySample
{

    public static void Main()
    {

        // Create the source, if it does not already exist.
        if (!EventLog.SourceExists("MySource"))
        {
            // 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", "myNewLog");
            Console.WriteLine("CreatingEventSource");
            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;
        }

        // Write an informational entry to the event log.
        EventLog.WriteEntry("MySource", "Writing to event log.");
    }
}
Option Strict
Option Explicit

Imports System.Diagnostics
Imports System.Threading

Class MySample
    Public Shared Sub Main()
        ' Create the source, if it does not already exist.
        If Not EventLog.SourceExists("MySource") Then
            EventLog.CreateEventSource("MySource", "myNewLog")
            Console.WriteLine("CreatingEventSource")
        End If
        
        
        ' Write an informational entry to the event log.    
        EventLog.WriteEntry("MySource", "Writing to event log.")
    End Sub
End Class

Uwagi

Ta metoda służy do zapisywania wpisu informacji w dzienniku zdarzeń przy użyciu źródła, które jest już zarejestrowane jako źródło zdarzeń dla odpowiedniego dziennika. Jeśli chcesz określić inne EventLogEntryTypeelementy , użyj innego przeciążenia .WriteEntry

Przed zapisaniem pierwszego wpisu ze źródłem należy utworzyć i skonfigurować źródło zdarzeń. Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz zapisać zdarzenie z nowym źródłem, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub CreateEventSource metody . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń; nie używa lokalizowalnego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu identyfikatorów zasobów i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie , aby zapisać wpisy przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie WriteEntry , aby zapisywać ciągi bezpośrednio w dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń jest przerywany na znak NUL.

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Zobacz też

Dotyczy

WriteEntry(String)

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje wpis typu informacji z podanym tekstem wiadomości w dzienniku zdarzeń.

public:
 void WriteEntry(System::String ^ message);
public void WriteEntry (string message);
member this.WriteEntry : string -> unit
Public Sub WriteEntry (message As String)

Parametry

message
String

Ciąg do zapisania w dzienniku zdarzeń.

Wyjątki

Właściwość Source obiektu EventLog nie została ustawiona.

-lub-

Metoda próbowała zarejestrować nowe źródło zdarzeń, ale nazwa komputera w MachineName pliku jest nieprawidłowa.

-lub-

Źródło jest już zarejestrowane dla innego dziennika zdarzeń.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

Nie można otworzyć klucza rejestru dziennika zdarzeń.

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

Poniższy przykład tworzy źródło MySource , jeśli jeszcze nie istnieje, i zapisuje wpis w dzienniku MyNewLogzdarzeń .

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
int main()
{
   
   // Create the source, if it does not already exist.
   if (  !EventLog::SourceExists( "MySource" ) )
   {
      //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", "MyNewLog" );
      Console::WriteLine( "CreatingEventSource" );
      // The source is created.  Exit the application to allow it to be registered.
      return 0;
   }

   
   // Create an EventLog instance and assign its source.
   EventLog^ myLog = gcnew EventLog;
   myLog->Source = "MySource";
   
   // Write an informational entry to the event log.    
   myLog->WriteEntry( "Writing to event log." );
}
using System;
using System.Diagnostics;
using System.Threading;

class MySample{

    public static void Main(){

        // Create the source, if it does not already exist.
        if(!EventLog.SourceExists("MySource"))
        {
             //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", "MyNewLog");
            Console.WriteLine("CreatedEventSource");
            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;
        }

        // Create an EventLog instance and assign its source.
        EventLog myLog = new EventLog();
        myLog.Source = "MySource";

        // Write an informational entry to the event log.
        myLog.WriteEntry("Writing to event log.");
    }
}
Option Explicit
Option Strict

Imports System.Diagnostics
Imports System.Threading

Class MySample
    Public Shared Sub Main()
        
        If Not EventLog.SourceExists("MySource") Then
            ' Create the source, if it does not already exist.
            ' 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", "MyNewLog")
            Console.WriteLine("CreatingEventSource")
            'The source is created.  Exit the application to allow it to be registered.
            Return
        End If
        
        ' Create an EventLog instance and assign its source.
        Dim myLog As New EventLog()
        myLog.Source = "MySource"
        
        ' Write an informational entry to the event log.    
        myLog.WriteEntry("Writing to event log.")
    End Sub
End Class

Uwagi

Ta metoda służy do zapisywania wpisu informacji w dzienniku zdarzeń skojarzonym z tym EventLog wystąpieniem. Jeśli chcesz określić inne EventLogEntryTypeelementy , użyj innego przeciążenia .WriteEntry

Uwaga

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Przed zapisanie wpisów w dzienniku należy ustawić Source właściwość składnika EventLog . Przed zapisaniem pierwszego wpisu ze źródłem należy utworzyć i skonfigurować źródło zdarzeń.

Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz zapisać zdarzenie z nowym źródłem, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub CreateEventSource metody . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Jeśli źródło określone we Source właściwości tego EventLog wystąpienia nie jest zarejestrowane na komputerze, do którego jest zapisywany składnik, WriteEntry wywołuje CreateEventSource i rejestruje źródło.

Uwaga

Jeśli nie określisz MachineName elementu dla EventLog wystąpienia przed wywołaniem CreateEventSource metody lub WriteEntry, przyjmuje się, że zostanie przyjęty komputer lokalny (".").

Jeśli system musi zarejestrować Source metodę za pośrednictwem wywołania metody WriteEntry , a Log właściwość nie została ustawiona w EventLog wystąpieniu, domyślnie dziennik jest ustawiony na dziennik aplikacji.

Uwaga

Wiele wyjątków wymienionych powyżej jest generowanych przez błędy zgłaszane podczas procesu rejestrowania obiektu Source.

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń; nie używa lokalizowalnego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu identyfikatorów zasobów i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie , aby zapisać wpisy przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie WriteEntry , aby zapisywać ciągi bezpośrednio w dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

Jeśli napiszesz wpis na komputerze zdalnym, wartość komunikatu (ciąg tekstowy) może nie być oczekiwana, jeśli komputer zdalny nie uruchamia .NET Framework.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń jest przerywany na znak NUL.

Zobacz też

Dotyczy

WriteEntry(String, String, EventLogEntryType)

Źródło:
EventLog.cs
Źródło:
EventLog.cs
Źródło:
EventLog.cs

Zapisuje błąd, ostrzeżenie, informacje, inspekcję powodzenia lub wpis inspekcji niepowodzenia z podanym tekstem komunikatu w dzienniku zdarzeń przy użyciu określonego zarejestrowanego źródła zdarzeń.

public:
 static void WriteEntry(System::String ^ source, System::String ^ message, System::Diagnostics::EventLogEntryType type);
public static void WriteEntry (string source, string message, System.Diagnostics.EventLogEntryType type);
static member WriteEntry : string * string * System.Diagnostics.EventLogEntryType -> unit
Public Shared Sub WriteEntry (source As String, message As String, type As EventLogEntryType)

Parametry

source
String

Źródło, za pomocą którego aplikacja jest zarejestrowana na określonym komputerze.

message
String

Ciąg do zapisania w dzienniku zdarzeń.

type
EventLogEntryType

EventLogEntryType Jedna z wartości.

Wyjątki

Wartość source jest pustym ciągiem ("").

-lub-

Wartość elementu source to null.

-lub-

Ciąg komunikatu jest dłuższy niż 31 839 bajtów (32 766 bajtów w systemach operacyjnych Windows przed Windows Vista).

-lub-

Nazwa źródła powoduje, że ścieżka klucza rejestru jest dłuższa niż 254 znaki.

Nie można otworzyć klucza rejestru dziennika zdarzeń.

type element nie jest prawidłowym EventLogEntryTypeelementem .

System operacyjny zgłosił błąd podczas zapisywania wpisu zdarzenia w dzienniku zdarzeń. Kod błędu systemu Windows jest niedostępny.

Przykłady

Poniższy przykład zapisuje wpis ostrzegawczy w dzienniku zdarzeń "MyNewLog" na komputerze lokalnym.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
int main()
{
   
   // Write an informational entry to the event log.    
   EventLog::WriteEntry( "MySource", "Writing warning to event log.", EventLogEntryType::Warning );
}
using System;
using System.Diagnostics;
using System.Threading;

class MySample2
{

    public static void Main()
    {

        // Write an informational entry to the event log.
        EventLog.WriteEntry("MySource",
            "Writing warning to event log.",
            EventLogEntryType.Warning);
    }
}
Option Explicit
Option Strict

Imports System.Diagnostics
Imports System.Threading

Class MySample
    Public Shared Sub Main()
        ' Write an informational entry to the event log.    
        EventLog.WriteEntry("MySource", "Writing warning to event log.", _
            EventLogEntryType.Warning)
    End Sub
End Class

Uwagi

Ta metoda służy do zapisywania wpisu określonego EventLogEntryType w dzienniku zdarzeń przy użyciu źródła, które jest już zarejestrowane jako źródło zdarzeń dla odpowiedniego dziennika. Element type jest wskazywany przez ikonę i tekst w kolumnie Typ w Podgląd zdarzeń dziennika.

Uwaga

Ciąg message nie może zawierać %n, gdzie n jest wartością całkowitą (na przykład %1), ponieważ przeglądarka zdarzeń traktuje ją jako ciąg wstawiania. Ponieważ adres protokołu internetowego w wersji 6 (IPv6) może zawierać tę sekwencję znaków, nie można zarejestrować komunikatu o zdarzeniu zawierającego adres IPv6.

Przed zapisaniem pierwszego wpisu ze źródłem należy utworzyć i skonfigurować źródło zdarzeń. Twórca nowe źródło zdarzeń podczas instalacji aplikacji. Dzięki temu system operacyjny może odświeżyć listę zarejestrowanych źródeł zdarzeń i ich konfigurację. Jeśli system operacyjny nie odświeżył listy źródeł zdarzeń i spróbujesz zapisać zdarzenie z nowym źródłem, operacja zapisu zakończy się niepowodzeniem. Nowe źródło można skonfigurować przy użyciu metody EventLogInstallerlub CreateEventSource metody . Aby utworzyć nowe źródło zdarzeń, musisz mieć uprawnienia administracyjne na komputerze.

Źródło musi być skonfigurowane do zapisywania zlokalizowanych wpisów lub zapisywania ciągów bezpośrednich. Metoda WriteEntry zapisuje dany ciąg bezpośrednio w dzienniku zdarzeń; nie używa lokalizowalnego pliku zasobu komunikatu. Użyj metody do zapisywania WriteEvent zdarzeń przy użyciu zlokalizowanego pliku zasobu komunikatu.

Jeśli aplikacja zapisuje wpisy przy użyciu identyfikatorów zasobów i wartości ciągów, musisz zarejestrować dwa oddzielne źródła. Na przykład skonfiguruj jedno źródło z plikami zasobów, a następnie użyj tego źródła w WriteEvent metodzie , aby zapisać wpisy przy użyciu identyfikatorów zasobów w dzienniku zdarzeń. Następnie utwórz inne źródło bez plików zasobów i użyj tego źródła w metodzie WriteEntry , aby zapisywać ciągi bezpośrednio w dzienniku zdarzeń przy użyciu tego źródła.

Uwaga

message Jeśli parametr zawiera znak NUL, komunikat w dzienniku zdarzeń jest przerywany na znak NUL.

Zobacz też

Dotyczy