EventLog.WriteEntry Metoda

Definice

Zapíše položku do protokolu událostí.

Přetížení

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

Zapíše položku s daným textem zprávy, identifikátorem události definovaným aplikací a kategorií definovanou aplikací do protokolu událostí (pomocí zadaného zaregistrovaného zdroje událostí) a připojí ke zprávě binární data.

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

Zapíše položku s daným textem zprávy, identifikátorem události definovaným aplikací a kategorií definovanou aplikací do protokolu událostí pomocí zadaného registrovaného zdroje událostí. Prohlížeč událostí category může použít k filtrování událostí v protokolu.

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

Zapíše položku s daným textem zprávy, identifikátorem události definovaným aplikací a kategorií definovanou aplikací do protokolu událostí a připojí ke zprávě binární data.

WriteEntry(String, String, EventLogEntryType, Int32)

Zapíše položku s daným textem zprávy a identifikátorem události definovanou aplikací do protokolu událostí pomocí zadaného zaregistrovaného zdroje událostí.

WriteEntry(String, EventLogEntryType, Int32, Int16)

Zapíše položku s daným textem zprávy, identifikátorem události definovaným aplikací a kategorií definovanou aplikací do protokolu událostí.

WriteEntry(String, EventLogEntryType)

Zapíše chybu, upozornění, informace, úspěšný audit nebo položku auditu selhání s daným textem zprávy do protokolu událostí.

WriteEntry(String, EventLogEntryType, Int32)

Zapíše do protokolu událostí položku s daným textem zprávy a identifikátorem události definovaným aplikací.

WriteEntry(String, String)

Zapíše položku typu informace s daným textem zprávy do protokolu událostí pomocí zadaného zaregistrovaného zdroje událostí.

WriteEntry(String)

Zapíše položku typu informace s daným textem zprávy do protokolu událostí.

WriteEntry(String, String, EventLogEntryType)

Zapíše chybu, upozornění, informace, úspěšný audit nebo položku auditu selhání s daným textem zprávy do protokolu událostí pomocí zadaného zaregistrovaného zdroje událostí.

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

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše položku s daným textem zprávy, identifikátorem události definovaným aplikací a kategorií definovanou aplikací do protokolu událostí (pomocí zadaného zaregistrovaného zdroje událostí) a připojí ke zprávě binární data.

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

Zdroj, podle kterého je aplikace registrována v zadaném počítači.

message
String

Řetězec pro zápis do protokolu událostí.

type
EventLogEntryType

Jedna z EventLogEntryType hodnot.

eventID
Int32

Identifikátor události specifický pro aplikaci.

category
Int16

Podkategorie specifická pro aplikaci přidružená ke zprávě.

rawData
Byte[]

Pole bajtů, které obsahuje binární data přidružená k položce.

Výjimky

Hodnota source je prázdný řetězec ("").

-nebo-

Hodnota source je null.

-nebo-

eventID je menší než nula nebo větší než UInt16.MaxValue.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před Windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém nahlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

//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)

Poznámky

Tuto metodu použijte k zápisu dat specifických pro událost definovanou aplikací do protokolu událostí pomocí zdroje, který je již zaregistrovaný jako zdroj událostí pro příslušný protokol. Prohlížeč událostí tato data neinterpretuje; zobrazuje nezpracovaná data pouze v kombinovaném šestnáctkovém a textovém formátu. Používejte data specifická pro konkrétní události střídmě; zahrňte ho pouze v případě, že jste si jistí, že to bude užitečné. Data specifická pro událost můžete také použít k ukládání informací, které aplikace může zpracovávat nezávisle na Prohlížeč událostí. Můžete například napsat prohlížeč speciálně pro vaše události nebo napsat program, který prohledá soubor protokolu a vytvoří sestavy, které obsahují informace z dat specifických pro danou událost.

Kromě binárních dat můžete zadat kategorii definovanou aplikací a identifikátor události definovaný aplikací. Prohlížeč událostí používá kategorii k filtrování událostí zapsaných zdrojem událostí. Prohlížeč událostí může zobrazit kategorii jako číselnou hodnotu nebo může kategorii použít jako identifikátor prostředku k zobrazení lokalizovaného řetězce kategorie.

Poznámka

Parametr category by měl být kladná hodnota. Záporné hodnoty kategorií se v Prohlížeč událostí zobrazují jako doplňkové kladné číslo. Například -10 se zobrazí jako 65 526, -1 jako 65 535.

Chcete-li zobrazit lokalizované řetězce kategorií v Prohlížeč událostí, musíte použít zdroj událostí nakonfigurovaný se souborem prostředků kategorie a nastavit category na identifikátor prostředku v souboru prostředků kategorie. Pokud zdroj události nemá nakonfigurovaný soubor prostředků kategorie nebo zadaný category řetězec neindexuje řetězec v souboru prostředků kategorie, pak Prohlížeč událostí zobrazí číselnou hodnotu kategorie pro danou položku. Nakonfigurujte soubor prostředků kategorie spolu s počtem řetězců kategorií v souboru prostředků pomocí EventLogInstaller třídy nebo EventSourceCreationData .

Identifikátory událostí společně se zdrojem událostí jednoznačně identifikují událost. Každá aplikace může definovat vlastní číslování událostí a popisné řetězce, na které se mapují. Prohlížeče událostí zobrazují tyto řetězcové hodnoty, aby uživateli pomohly pochopit, co se nepovedlo, a navrhnout, jaké akce se mají provést.

Nakonec můžete zadat EventLogEntryType pro událost, která se zapisuje do protokolu událostí. Hodnota type je označená ikonou a textem ve sloupci Typ v Prohlížeč událostí protokolu. Tento parametr označuje, jestli je typ události chyba, upozornění, informace, audit úspěchu nebo audit selhání.

Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí. Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstallermetody nebo CreateEventSource . Abyste mohli vytvořit nový zdroj událostí, musíte mít v počítači oprávnění správce.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zprávy. K zápisu WriteEvent událostí pomocí souboru lokalizovaného prostředku zprávy použijte metodu .

Pokud vaše aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak ho WriteEvent použijte v metodě k zápisu položek pomocí identifikátorů prostředků do protokolu událostí. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

message Pokud parametr obsahuje znak NUL, zpráva v protokolu událostí se ukončí na znaku NUL.

Řetězec message nemůže obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí s ním zachází jako s vloženým řetězcem. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto posloupnost znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Viz také

Platí pro

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

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše položku s daným textem zprávy, identifikátorem události definovaným aplikací a kategorií definovanou aplikací do protokolu událostí pomocí zadaného registrovaného zdroje událostí. Prohlížeč událostí category může použít k filtrování událostí v protokolu.

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

Zdroj, podle kterého je aplikace registrována v zadaném počítači.

message
String

Řetězec pro zápis do protokolu událostí.

type
EventLogEntryType

Jedna z EventLogEntryType hodnot.

eventID
Int32

Identifikátor události specifický pro aplikaci.

category
Int16

Podkategorie specifická pro aplikaci přidružená ke zprávě.

Výjimky

Hodnota source je prázdný řetězec ("").

-nebo-

Hodnota source je null.

-nebo-

eventID je menší než nula nebo větší než UInt16.MaxValue.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před Windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém nahlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

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)

Poznámky

Tuto metodu použijte k zápisu položky s aplikací definovanou category do protokolu událostí pomocí zdroje, který je již zaregistrovaný jako zdroj událostí pro příslušný protokol. Prohlížeč událostí používá kategorii k filtrování událostí zapsaných zdrojem událostí. Prohlížeč událostí může zobrazit kategorii jako číselnou hodnotu nebo může kategorii použít jako identifikátor prostředku k zobrazení lokalizovaného řetězce kategorie.

Poznámka

Parametr category by měl být kladná hodnota. Záporné hodnoty kategorií se v Prohlížeč událostí zobrazují jako doplňkové kladné číslo. Například -10 se zobrazí jako 65 526, -1 jako 65 535.

Chcete-li zobrazit lokalizované řetězce kategorií v Prohlížeč událostí, musíte použít zdroj událostí nakonfigurovaný se souborem prostředků kategorie a nastavit category na identifikátor prostředku v souboru prostředků kategorie. Pokud zdroj události nemá nakonfigurovaný soubor prostředků kategorie nebo zadaný category řetězec neindexuje řetězec v souboru prostředků kategorie, pak Prohlížeč událostí zobrazí číselnou hodnotu kategorie pro danou položku. Nakonfigurujte soubor prostředků kategorie spolu s počtem řetězců kategorií v souboru prostředků pomocí EventLogInstaller třídy nebo EventSourceCreationData .

Kromě kategorie můžete zadat identifikátor události pro událost, která se zapisuje do protokolu událostí. Identifikátory událostí společně se zdrojem událostí jednoznačně identifikují událost. Každá aplikace může definovat vlastní číslování událostí a popisné řetězce, na které se mapují. Prohlížeče událostí zobrazují tyto řetězcové hodnoty, aby uživateli pomohly pochopit, co se nepovedlo, a navrhnout, jaké akce se mají provést.

Nakonec můžete zadat EventLogEntryType pro událost, která se zapisuje do protokolu událostí. Hodnota type je označená ikonou a textem ve sloupci Typ v Prohlížeč událostí protokolu. Tento parametr označuje, jestli je typ události chyba, upozornění, informace, audit úspěchu nebo audit selhání.

Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí. Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstallermetody nebo CreateEventSource . Abyste mohli vytvořit nový zdroj událostí, musíte mít v počítači oprávnění správce.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zprávy. K zápisu WriteEvent událostí pomocí souboru lokalizovaného prostředku zprávy použijte metodu .

Pokud vaše aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak ho WriteEvent použijte v metodě k zápisu položek pomocí identifikátorů prostředků do protokolu událostí. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

message Pokud parametr obsahuje znak NUL, zpráva v protokolu událostí se ukončí na znaku NUL.

Řetězec message nemůže obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí s ním zachází jako s vloženým řetězcem. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto posloupnost znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Viz také

Platí pro

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

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše položku s daným textem zprávy, identifikátorem události definovaným aplikací a kategorií definovanou aplikací do protokolu událostí a připojí ke zprávě binární data.

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

Řetězec pro zápis do protokolu událostí.

type
EventLogEntryType

Jedna z EventLogEntryType hodnot.

eventID
Int32

Identifikátor události specifický pro aplikaci.

category
Int16

Podkategorie specifická pro aplikaci přidružená ke zprávě.

rawData
Byte[]

Pole bajtů, které obsahuje binární data přidružená k položce.

Výjimky

Vlastnost Source objektu EventLog nebyla nastavena.

-nebo-

Metoda se pokusila zaregistrovat nový zdroj událostí, ale název počítače v MachineName souboru není platný.

-nebo-

Zdroj je již zaregistrovaný pro jiný protokol událostí.

-nebo-

eventID je menší než nula nebo větší než UInt16.MaxValue.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před Windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém nahlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

// 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)

Poznámky

Toto přetížení použijte k zápisu dat specifických pro událost definovanou aplikací do protokolu událostí. Prohlížeč událostí tato data neinterpretuje; zobrazuje nezpracovaná data pouze v kombinovaném šestnáctkovém a textovém formátu. Používejte data specifická pro události střídmě, včetně dat pouze v případě, že jste si jisti, že budou užitečná pro někoho, kdo problém ladí. Data specifická pro událost můžete také použít k ukládání informací, které aplikace může zpracovávat nezávisle na Prohlížeč událostí. Můžete například napsat prohlížeč speciálně pro vaše události nebo napsat program, který prohledá soubor protokolu a vytvoří sestavy, které obsahují informace z dat specifických pro danou událost.

Kromě binárních dat můžete zadat kategorii definovanou aplikací a identifikátor události definovaný aplikací. Prohlížeč událostí používá kategorii k filtrování událostí zapsaných zdrojem událostí. Prohlížeč událostí může zobrazit kategorii jako číselnou hodnotu nebo může kategorii použít jako identifikátor prostředku k zobrazení lokalizovaného řetězce kategorie.

Poznámka

Řetězec message nemůže obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí s ním zachází jako s vloženým řetězcem. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto posloupnost znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Poznámka

Parametr category by měl být kladná hodnota. Záporné hodnoty kategorií se v Prohlížeč událostí zobrazují jako doplňkové kladné číslo. Například -10 se zobrazí jako 65 526, -1 jako 65 535.

Chcete-li zobrazit lokalizované řetězce kategorií v Prohlížeč událostí, musíte použít zdroj událostí nakonfigurovaný se souborem prostředků kategorie a nastavit category na identifikátor prostředku v souboru prostředků kategorie. Pokud zdroj události nemá nakonfigurovaný soubor prostředků kategorie nebo zadaný category řetězec neindexuje řetězec v souboru prostředků kategorie, pak Prohlížeč událostí zobrazí číselnou hodnotu kategorie pro danou položku. Nakonfigurujte soubor prostředků kategorie spolu s počtem řetězců kategorií v souboru prostředků pomocí EventLogInstaller třídy nebo EventSourceCreationData .

Identifikátory událostí společně se zdrojem událostí jednoznačně identifikují událost. Každá aplikace může definovat vlastní číslování událostí a popisné řetězce, na které se mapují. Prohlížeče událostí zobrazují tyto řetězcové hodnoty, aby uživateli pomohly pochopit, co se nepovedlo, a navrhnout, jaké akce se mají provést.

Nakonec můžete zadat EventLogEntryType pro událost, která se zapisuje do protokolu událostí. Hodnota type je označená ikonou a textem ve sloupci Typ v Prohlížeč událostí protokolu. Tento parametr označuje, jestli je typ události chyba, upozornění, informace, audit úspěchu nebo audit selhání.

Před zápisem Source položek do protokolu musíte u komponenty EventLog nastavit vlastnost. Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí.

Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstallermetody nebo CreateEventSource . Abyste mohli vytvořit nový zdroj událostí, musíte mít v počítači oprávnění správce.

Pokud zdroj zadaný ve Source vlastnosti této EventLog instance není registrován v počítači, na který vaše komponenta zapisuje, WriteEntry zavolá CreateEventSource a zaregistruje zdroj.

Poznámka

Pokud nezadáte pro svoji EventLog instanci před voláním MachineNameCreateEventSource nebo WriteEntry, předpokládá se místní počítač (".").

Pokud systém potřebuje zaregistrovat Source prostřednictvím volání WriteEntry a Log vlastnost nebyla ve vaší EventLog instanci nastavena, protokol se ve výchozím nastavení nastaví na protokol aplikace.

Poznámka

Mnoho výše uvedených výjimek je generováno chybami vyvolaných během procesu registrace Source.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zprávy. K zápisu WriteEvent událostí pomocí souboru lokalizovaného prostředku zprávy použijte metodu .

Pokud vaše aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak ho WriteEvent použijte v metodě k zápisu položek pomocí identifikátorů prostředků do protokolu událostí. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

Pokud zapíšete položku do vzdáleného počítače, hodnota zprávy (textový řetězec) nemusí být to, co očekáváte, pokud vzdálený počítač nepoužívá rozhraní .NET Framework.

Poznámka

message Pokud parametr obsahuje znak NUL, je zpráva v protokolu událostí ukončena znakem NUL.

Viz také

Platí pro

WriteEntry(String, String, EventLogEntryType, Int32)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše položku s daným textem zprávy a identifikátorem události definovaným aplikací do protokolu událostí pomocí zadaného registrovaného zdroje událostí.

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

Zdroj, podle kterého je aplikace registrována v zadaném počítači.

message
String

Řetězec pro zápis do protokolu událostí.

type
EventLogEntryType

Jedna z EventLogEntryType hodnot.

eventID
Int32

Identifikátor události specifický pro aplikaci.

Výjimky

Hodnota source je prázdný řetězec ("").

-nebo-

Hodnota source je null.

-nebo-

eventID je menší než nula nebo větší než UInt16.MaxValue.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém ohlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

// 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)

Poznámky

Tuto metodu použijte k zápisu položky s aplikací definovanou eventID do protokolu událostí pomocí zdroje již zaregistrovaného jako zdroj událostí pro příslušný protokol. Objekt eventIDspolu se zdrojem jednoznačně identifikuje událost. Každá aplikace může definovat své vlastní číslování událostí a popisné řetězce, na které se mapují. Diváci událostí uživateli tyto řetězce prezentují, aby mu pomohly pochopit, co se nepovedlo, a navrhnout, jaké akce se mají provést.

Poznámka

Řetězec message nesmí obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí ho považuje za vložený řetězec. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto sekvenci znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Kromě identifikátoru události toto přetížení WriteEntry umožňuje zadat EventLogEntryType pro událost, která se zapisuje do protokolu událostí. Hodnota type je označená ikonou a textem ve sloupci Typ v Prohlížeč událostí protokolu. Tento parametr označuje, jestli je typ události chyba, upozornění, informace, audit úspěšného provedení nebo audit selhání.

Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí. Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstaller, nebo pomocí CreateEventSource metody . K vytvoření nového zdroje událostí musíte mít v počítači oprávnění správce.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zpráv. K zápisu událostí pomocí lokalizovaného souboru prostředků zprávy použijte metodu WriteEvent .

Pokud aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak tento zdroj použijte v WriteEvent metodě k zápisu položek do protokolu událostí pomocí identifikátorů prostředků. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

message Pokud parametr obsahuje znak NUL, je zpráva v protokolu událostí ukončena znakem NUL.

Viz také

Platí pro

WriteEntry(String, EventLogEntryType, Int32, Int16)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše položku s daným textem zprávy, identifikátorem události definovaným aplikací a kategorií definovanou aplikací do protokolu událostí.

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

Řetězec pro zápis do protokolu událostí.

type
EventLogEntryType

Jedna z EventLogEntryType hodnot.

eventID
Int32

Identifikátor události specifický pro aplikaci.

category
Int16

Podkategorie specifická pro aplikaci přidružená ke zprávě.

Výjimky

Vlastnost SourceEventLog nebyla nastavena.

-nebo-

Metoda se pokusila zaregistrovat nový zdroj událostí, ale název počítače v MachineName souboru není platný.

-nebo-

Zdroj je již zaregistrovaný pro jiný protokol událostí.

-nebo-

eventID je menší než nula nebo větší než UInt16.MaxValue.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém ohlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

// 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)

Poznámky

Tuto metodu použijte k zápisu položky s aplikací definovanou category do protokolu událostí. Prohlížeč událostí používá kategorii k filtrování událostí zapsaných zdrojem událostí. Prohlížeč událostí může zobrazit kategorii jako číselnou hodnotu nebo může kategorii použít jako identifikátor prostředku k zobrazení lokalizovaného řetězce kategorie.

Poznámka

Parametrem category by měla být kladná hodnota. Záporné hodnoty kategorií se v Prohlížeč událostí zobrazují jako doplňkové kladné číslo. Například -10 se zobrazí jako 65 526, -1 jako 65 535.

Poznámka

Řetězec message nesmí obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí ho považuje za vložený řetězec. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto sekvenci znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Chcete-li zobrazit lokalizované řetězce kategorií v Prohlížeč událostí, musíte použít zdroj událostí nakonfigurovaný se souborem prostředků kategorie a nastavit category na identifikátor prostředku v souboru prostředků kategorie. Pokud zdroj události nemá nakonfigurovaný soubor prostředků kategorie nebo zadaný category řetězec neindexuje řetězec v souboru prostředků kategorie, zobrazí Prohlížeč událostí číselnou hodnotu kategorie pro danou položku. Nakonfigurujte soubor prostředků kategorie spolu s počtem řetězců kategorií v souboru prostředků pomocí EventLogInstaller třídy nebo EventSourceCreationData .

Kromě kategorie můžete zadat identifikátor události, která se zapisuje do protokolu událostí. Identifikátory událostí společně se zdrojem událostí jednoznačně identifikují událost. Každá aplikace může definovat své vlastní číslování událostí a popisné řetězce, na které se mapují. Prohlížeče událostí zobrazují tyto řetězcové hodnoty, aby uživateli pomohly pochopit, co se nepovedlo, a navrhnout, jaké akce se mají provést.

Nakonec můžete zadat EventLogEntryType pro událost, která se zapisuje do protokolu událostí. Hodnota type je označená ikonou a textem ve sloupci Typ v Prohlížeč událostí protokolu. Tento parametr označuje, jestli je typ události chyba, upozornění, informace, audit úspěšného provedení nebo audit selhání.

Před zápisem Source položek do protokolu musíte u komponenty EventLog nastavit vlastnost . Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí.

Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstaller, nebo pomocí CreateEventSource metody . K vytvoření nového zdroje událostí musíte mít v počítači oprávnění správce.

Pokud zdroj zadaný ve Source vlastnosti této EventLog instance není registrován v počítači, do kterého komponenta zapisuje, WriteEntry zavolá CreateEventSource a zaregistruje zdroj.

Poznámka

Pokud nezadáte pro vaši EventLog instanci před voláním MachineNameCreateEventSource nebo WriteEntry, předpokládá se místní počítač (".").

Pokud systém potřebuje zaregistrovat Source prostřednictvím volání WriteEntry a Log vlastnost nebyla nastavena ve vaší EventLog instanci, protokol se ve výchozím nastavení nastaví na Protokol aplikace.

Poznámka

Mnoho výše uvedených výjimek je generováno chybami vyvolaných během procesu registrace Source.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zpráv. K zápisu událostí pomocí lokalizovaného souboru prostředků zprávy použijte metodu WriteEvent .

Pokud aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak tento zdroj použijte v WriteEvent metodě k zápisu položek do protokolu událostí pomocí identifikátorů prostředků. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

Pokud zapíšete položku do vzdáleného počítače, hodnota zprávy (textový řetězec) nemusí být to, co očekáváte, pokud vzdálený počítač nepoužívá rozhraní .NET Framework.

Poznámka

message Pokud parametr obsahuje znak NUL, je zpráva v protokolu událostí ukončena znakem NUL.

Viz také

Platí pro

WriteEntry(String, EventLogEntryType)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše chybu, upozornění, informace, úspěšný audit nebo položku auditu selhání s daným textem zprávy do protokolu událostí.

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

Řetězec pro zápis do protokolu událostí.

type
EventLogEntryType

Jedna z EventLogEntryType hodnot.

Výjimky

Vlastnost SourceEventLog nebyla nastavena.

-nebo-

Metoda se pokusila zaregistrovat nový zdroj událostí, ale název počítače v MachineName souboru není platný.

-nebo-

Zdroj je již zaregistrovaný pro jiný protokol událostí.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém ohlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

Následující příklad zapíše položku upozornění do protokolu událostí "MyNewLog" v místním počítači.

#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

Poznámky

Tuto metodu použijte k zápisu zadané položky EventLogEntryType do protokolu událostí. Hodnota type je označená ikonou a textem ve sloupci Typ v Prohlížeč událostí protokolu.

Poznámka

Řetězec message nesmí obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí ho považuje za vložený řetězec. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto sekvenci znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Před zápisem Source položek do protokolu musíte u komponenty EventLog nastavit vlastnost . Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí.

Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstaller, nebo pomocí CreateEventSource metody . K vytvoření nového zdroje událostí musíte mít v počítači oprávnění správce.

Pokud zdroj zadaný ve Source vlastnosti této EventLog instance není registrován v počítači, do kterého komponenta zapisuje, WriteEntry zavolá CreateEventSource a zaregistruje zdroj.

Poznámka

Pokud nezadáte pro vaši EventLog instanci před voláním MachineNameCreateEventSource nebo WriteEntry, předpokládá se místní počítač (".").

Pokud systém potřebuje zaregistrovat Source prostřednictvím volání WriteEntry a Log vlastnost nebyla nastavena ve vaší EventLog instanci, protokol se ve výchozím nastavení nastaví na Protokol aplikace.

Poznámka

Mnoho výše uvedených výjimek je generováno chybami vyvolaných během procesu registrace Source.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zpráv. K zápisu událostí pomocí lokalizovaného souboru prostředků zprávy použijte metodu WriteEvent .

Pokud aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak tento zdroj použijte v WriteEvent metodě k zápisu položek do protokolu událostí pomocí identifikátorů prostředků. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

Pokud zapíšete položku do vzdáleného počítače, hodnota zprávy (textový řetězec) nemusí být to, co očekáváte, pokud vzdálený počítač nepoužívá rozhraní .NET Framework.

Poznámka

message Pokud parametr obsahuje znak NUL, je zpráva v protokolu událostí ukončena znakem NUL.

Viz také

Platí pro

WriteEntry(String, EventLogEntryType, Int32)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše položku s daným textem zprávy a identifikátorem události definovaným aplikací do protokolu událostí.

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

Řetězec pro zápis do protokolu událostí.

type
EventLogEntryType

Jedna z EventLogEntryType hodnot.

eventID
Int32

Identifikátor události specifický pro aplikaci.

Výjimky

Vlastnost SourceEventLog nebyla nastavena.

-nebo-

Metoda se pokusila zaregistrovat nový zdroj událostí, ale název počítače v MachineName souboru není platný.

-nebo-

Zdroj je již zaregistrovaný pro jiný protokol událostí.

-nebo-

eventID je menší než nula nebo větší než UInt16.MaxValue.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém ohlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

// 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)

Poznámky

Tuto metodu použijte k zápisu položky s aplikací definovanou eventID do protokolu událostí. Objekty eventID společně se zdrojem jednoznačně identifikují událost. Každá aplikace může definovat své vlastní číslování událostí a popisné řetězce, na které se mapují. Prohlížeče událostí zobrazují tyto řetězcové hodnoty, aby uživateli pomohly pochopit, co se nepovedlo, a navrhnout, jaké akce se mají provést.

Poznámka

Řetězec message nesmí obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí ho považuje za vložený řetězec. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto sekvenci znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Kromě identifikátoru události můžete zadat pro EventLogEntryType událost, která se zapisuje do protokolu událostí. Hodnota type je označená ikonou a textem ve sloupci Typ v Prohlížeč událostí protokolu. Tento parametr označuje, jestli je typ události chyba, upozornění, informace, audit úspěšného provedení nebo audit selhání.

Před zápisem Source položek do protokolu musíte u komponenty EventLog nastavit vlastnost . Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí.

Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstaller, nebo pomocí CreateEventSource metody . K vytvoření nového zdroje událostí musíte mít v počítači oprávnění správce.

Pokud zdroj zadaný ve Source vlastnosti této EventLog instance není registrován v počítači, do kterého komponenta zapisuje, WriteEntry zavolá CreateEventSource a zaregistruje zdroj.

Poznámka

Pokud nezadáte pro vaši EventLog instanci před voláním MachineNameCreateEventSource nebo WriteEntry, předpokládá se místní počítač (".").

Pokud systém potřebuje zaregistrovat Source prostřednictvím volání WriteEntry a Log vlastnost nebyla nastavena ve vaší EventLog instanci, protokol se ve výchozím nastavení nastaví na Protokol aplikace.

Poznámka

Mnoho výše uvedených výjimek je generováno chybami vyvolaných během procesu registrace Source.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zpráv. K zápisu událostí pomocí lokalizovaného souboru prostředků zprávy použijte metodu WriteEvent .

Pokud aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak tento zdroj použijte v WriteEvent metodě k zápisu položek do protokolu událostí pomocí identifikátorů prostředků. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

Pokud zapíšete položku do vzdáleného počítače, hodnota zprávy (textový řetězec) nemusí být to, co očekáváte, pokud vzdálený počítač nepoužívá rozhraní .NET Framework.

Poznámka

message Pokud parametr obsahuje znak NUL, je zpráva v protokolu událostí ukončena znakem NUL.

Viz také

Platí pro

WriteEntry(String, String)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše položku typu informace s daným textem zprávy do protokolu událostí pomocí zadaného registrovaného zdroje událostí.

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

Zdroj, podle kterého je aplikace registrována v zadaném počítači.

message
String

Řetězec pro zápis do protokolu událostí.

Výjimky

Hodnota source je prázdný řetězec ("").

-nebo-

Hodnota source je null.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém ohlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

Následující příklad vytvoří zdroj MySource , pokud ještě neexistuje, a zapíše položku do protokolu MyNewLogudálostí .

#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

Poznámky

Tuto metodu použijte k zápisu položky informací do protokolu událostí pomocí zdroje, který je již registrován jako zdroj událostí pro příslušný protokol. Pokud chcete zadat jakýkoli jiný EventLogEntryTypeparametr , použijte jiné přetížení .WriteEntry

Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí. Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstaller, nebo pomocí CreateEventSource metody . K vytvoření nového zdroje událostí musíte mít v počítači oprávnění správce.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zpráv. K zápisu událostí pomocí lokalizovaného souboru prostředků zprávy použijte metodu WriteEvent .

Pokud aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak tento zdroj použijte v WriteEvent metodě k zápisu položek do protokolu událostí pomocí identifikátorů prostředků. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

message Pokud parametr obsahuje znak NUL, je zpráva v protokolu událostí ukončena znakem NUL.

Řetězec message nesmí obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí ho považuje za vložený řetězec. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto sekvenci znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Viz také

Platí pro

WriteEntry(String)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše položku typu informace s daným textem zprávy do protokolu událostí.

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

Řetězec pro zápis do protokolu událostí.

Výjimky

Vlastnost SourceEventLog nebyla nastavena.

-nebo-

Metoda se pokusila zaregistrovat nový zdroj událostí, ale název počítače v MachineName souboru není platný.

-nebo-

Zdroj je již zaregistrovaný pro jiný protokol událostí.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém ohlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

Následující příklad vytvoří zdroj MySource , pokud ještě neexistuje, a zapíše položku do protokolu MyNewLogudálostí .

#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

Poznámky

Tuto metodu použijte k zápisu položky informací do protokolu událostí přidruženého k této EventLog instanci. Pokud chcete zadat jakýkoli jiný EventLogEntryTypeparametr , použijte jiné přetížení .WriteEntry

Poznámka

Řetězec message nesmí obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí ho považuje za vložený řetězec. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto sekvenci znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Před zápisem Source položek do protokolu musíte u komponenty EventLog nastavit vlastnost . Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí.

Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstaller, nebo pomocí CreateEventSource metody . K vytvoření nového zdroje událostí musíte mít v počítači oprávnění správce.

Pokud zdroj zadaný ve Source vlastnosti této EventLog instance není registrován v počítači, do kterého komponenta zapisuje, WriteEntry zavolá CreateEventSource a zaregistruje zdroj.

Poznámka

Pokud nezadáte pro vaši EventLog instanci před voláním MachineNameCreateEventSource nebo WriteEntry, předpokládá se místní počítač (".").

Pokud systém potřebuje zaregistrovat Source prostřednictvím volání WriteEntry a Log vlastnost nebyla nastavena ve vaší EventLog instanci, protokol se ve výchozím nastavení nastaví na Protokol aplikace.

Poznámka

Mnoho výše uvedených výjimek je generováno chybami vyvolaných během procesu registrace Source.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zpráv. K zápisu událostí pomocí lokalizovaného souboru prostředků zprávy použijte metodu WriteEvent .

Pokud aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak tento zdroj použijte v WriteEvent metodě k zápisu položek do protokolu událostí pomocí identifikátorů prostředků. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

Pokud zapíšete položku do vzdáleného počítače, hodnota zprávy (textový řetězec) nemusí být to, co očekáváte, pokud vzdálený počítač nepoužívá rozhraní .NET Framework.

Poznámka

message Pokud parametr obsahuje znak NUL, je zpráva v protokolu událostí ukončena znakem NUL.

Viz také

Platí pro

WriteEntry(String, String, EventLogEntryType)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Zapíše chybu, upozornění, informace, úspěšný audit nebo položku auditu selhání s daným textem zprávy do protokolu událostí pomocí zadaného zaregistrovaného zdroje událostí.

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

Zdroj, podle kterého je aplikace registrována v zadaném počítači.

message
String

Řetězec pro zápis do protokolu událostí.

type
EventLogEntryType

Jedna z EventLogEntryType hodnot.

Výjimky

Hodnota source je prázdný řetězec ("").

-nebo-

Hodnota source je null.

-nebo-

Řetězec zprávy je delší než 31 839 bajtů (32 766 bajtů v operačních systémech Windows před windows Vista).

-nebo-

Výsledkem názvu zdroje je cesta ke klíči registru delší než 254 znaků.

Klíč registru pro protokol událostí nelze otevřít.

Operační systém ohlásil chybu při zápisu položky události do protokolu událostí. Kód chyby systému Windows není k dispozici.

Příklady

Následující příklad zapíše položku upozornění do protokolu událostí "MyNewLog" v místním počítači.

#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

Poznámky

Tuto metodu použijte k zápisu zadané položky EventLogEntryType do protokolu událostí pomocí zdroje již zaregistrovaného jako zdroj událostí pro příslušný protokol. Hodnota type je označená ikonou a textem ve sloupci Typ v Prohlížeč událostí protokolu.

Poznámka

Řetězec message nesmí obsahovat %n, kde n je celočíselná hodnota (například %1), protože prohlížeč událostí ho považuje za vložený řetězec. Vzhledem k tomu, že ip adresa verze 6 (IPv6) může obsahovat tuto sekvenci znaků, nelze protokolovat zprávu události, která obsahuje adresu IPv6.

Před zápisem první položky do zdroje musíte vytvořit a nakonfigurovat zdroj událostí. Create nový zdroj událostí během instalace aplikace. Operační systém tak může aktualizovat seznam registrovaných zdrojů událostí a jejich konfiguraci. Pokud operační systém neaktualizuje seznam zdrojů událostí a pokusíte se napsat událost s novým zdrojem, operace zápisu selže. Nový zdroj můžete nakonfigurovat pomocí EventLogInstallermetody nebo CreateEventSource . Abyste mohli vytvořit nový zdroj událostí, musíte mít v počítači oprávnění správce.

Zdroj musí být nakonfigurován pro zápis lokalizovaných položek nebo pro zápis přímých řetězců. Metoda WriteEntry zapisuje daný řetězec přímo do protokolu událostí; nepoužívá lokalizovatelný soubor prostředků zprávy. K zápisu WriteEvent událostí pomocí souboru lokalizovaného prostředku zprávy použijte metodu .

Pokud vaše aplikace zapisuje položky pomocí identifikátorů prostředků i řetězcových hodnot, musíte zaregistrovat dva samostatné zdroje. Například nakonfigurujte jeden zdroj se soubory prostředků a pak ho WriteEvent použijte v metodě k zápisu položek pomocí identifikátorů prostředků do protokolu událostí. Pak vytvořte jiný zdroj bez souborů prostředků a použijte tento zdroj v WriteEntry metodě k zápisu řetězců přímo do protokolu událostí pomocí daného zdroje.

Poznámka

message Pokud parametr obsahuje znak NUL, zpráva v protokolu událostí se ukončí na znaku NUL.

Viz také

Platí pro