EventLog.WriteEntry Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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 |
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 MyNewLog
zdarzeń .
#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 MyNewLog
zdarzeń .
#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.