Share via


EventLog.WriteEntry Yöntem

Tanım

Olay günlüğüne bir girdi yazar.

Aşırı Yüklemeler

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

Verilen ileti metnini, uygulama tanımlı olay tanımlayıcısını ve uygulama tanımlı kategoriyi içeren bir girdiyi olay günlüğüne yazar (belirtilen kayıtlı olay kaynağını kullanarak) ve iletiye ikili veri ekler.

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

Belirtilen kayıtlı olay kaynağını kullanarak, belirtilen ileti metnini, uygulama tanımlı olay tanımlayıcısını ve uygulama tanımlı kategoriyi içeren bir girdiyi olay günlüğüne yazar. Olay Görüntüleyicisi category tarafından günlükteki olayları filtrelemek için kullanılabilir.

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

Verilen ileti metnini, uygulama tanımlı olay tanımlayıcısını ve uygulama tanımlı kategoriyi içeren bir girdiyi olay günlüğüne yazar ve iletiye ikili veri ekler.

WriteEntry(String, String, EventLogEntryType, Int32)

Belirtilen kayıtlı olay kaynağını kullanarak belirtilen ileti metnini ve uygulama tanımlı olay tanımlayıcısını içeren bir girdiyi olay günlüğüne yazar.

WriteEntry(String, EventLogEntryType, Int32, Int16)

Verilen ileti metnini, uygulama tanımlı olay tanımlayıcısını ve uygulama tanımlı kategoriyi içeren bir girdiyi olay günlüğüne yazar.

WriteEntry(String, EventLogEntryType)

Olay günlüğüne verilen ileti metniyle bir hata, uyarı, bilgi, başarı denetimi veya hata denetimi girişi yazar.

WriteEntry(String, EventLogEntryType, Int32)

Verilen ileti metnini ve uygulama tanımlı olay tanımlayıcısını içeren bir girdiyi olay günlüğüne yazar.

WriteEntry(String, String)

Belirtilen kayıtlı olay kaynağını kullanarak, verilen ileti metnini içeren bir bilgi türü girdisini olay günlüğüne yazar.

WriteEntry(String)

Olay günlüğüne verilen ileti metnini içeren bir bilgi türü girdisi yazar.

WriteEntry(String, String, EventLogEntryType)

Belirtilen kayıtlı olay kaynağını kullanarak olay günlüğüne verilen ileti metniyle bir hata, uyarı, bilgi, başarı denetimi veya hata denetimi girişi yazar.

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

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Verilen ileti metnini, uygulama tanımlı olay tanımlayıcısını ve uygulama tanımlı kategoriyi içeren bir girdiyi olay günlüğüne yazar (belirtilen kayıtlı olay kaynağını kullanarak) ve iletiye ikili veri ekler.

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

Parametreler

source
String

Uygulamanın belirtilen bilgisayarda kaydedildiği kaynak.

message
String

Olay günlüğüne yazacak dize.

type
EventLogEntryType

Değerlerden EventLogEntryType biri.

eventID
Int32

Olayın uygulamaya özgü tanımlayıcısı.

category
Int16

İletiyle ilişkili uygulamaya özgü alt kategori.

rawData
Byte[]

Girişle ilişkili ikili verileri tutan bayt dizisi.

Özel durumlar

source Değer boş bir dizedir ("").

-veya-

source değeri null olur.

-veya-

eventID sıfırdan küçük veya UInt16.MaxValue değerinden büyük.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

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

Açıklamalar

Uygun günlük için zaten olay kaynağı olarak kaydedilmiş bir kaynak kullanarak uygulama tanımlı olaya özgü verileri olay günlüğüne yazmak için bu yöntemi kullanın. Olay Görüntüleyicisi bu verileri yorumlamaz; ham verileri yalnızca birleştirilmiş onaltılık ve metin biçiminde görüntüler. Olaya özgü verileri tedbirli kullanın; yalnızca yararlı olduğundan eminseniz ekleyin. Uygulamanın Olay Görüntüleyicisi bağımsız olarak işleyebileceği bilgileri depolamak için olaya özgü verileri de kullanabilirsiniz. Örneğin, olaylarınız için özel olarak bir görüntüleyici yazabilir veya günlük dosyasını tarayan ve olaya özgü verilerden bilgiler içeren raporlar oluşturan bir program yazabilirsiniz.

İkili verilere ek olarak, uygulama tanımlı bir kategori ve uygulama tanımlı olay tanımlayıcısı belirtebilirsiniz. Olay Görüntüleyicisi, bir olay kaynağı tarafından yazılan olayları filtrelemek için kategorisini kullanır. Olay Görüntüleyicisi kategoriyi sayısal bir değer olarak görüntüleyebilir veya kategoriyi kaynak tanımlayıcısı olarak kullanarak yerelleştirilmiş bir kategori dizesi görüntüleyebilir.

Not

category parametresi pozitif bir değer olmalıdır. Negatif kategori değerleri, Olay Görüntüleyicisi tamamlayıcı pozitif bir sayı olarak görünür. Örneğin, -10 65.526, -1 ise 65.535 olarak görünür.

Olay Görüntüleyicisi yerelleştirilmiş kategori dizelerini görüntülemek için, kategori kaynak dosyasıyla yapılandırılmış bir olay kaynağı kullanmanız ve öğesini kategori kaynak dosyasında bir kaynak tanımlayıcısı olarak ayarlamanız category gerekir. Olay kaynağında yapılandırılmış bir kategori kaynak dosyası yoksa veya belirtilen category kategori kaynak dosyasındaki bir dizenin dizinini oluşturmuyorsa, Olay Görüntüleyicisi bu girdinin sayısal kategori değerini görüntüler. veya EventSourceCreationData sınıfını kullanarak EventLogInstaller kaynak dosyasındaki kategori dizelerinin sayısıyla birlikte kategori kaynak dosyasını yapılandırın.

Olay tanımlayıcıları, olay kaynağıyla birlikte bir olayı benzersiz olarak tanımlar. Her uygulama kendi numaralandırılmış olaylarını ve eşledikleri açıklama dizelerini tanımlayabilir. Olay görüntüleyicileri, kullanıcının neyin yanlış gittiğini anlamasına ve hangi eylemlerin gerçekleştirleneceğini önermesine yardımcı olmak için bu dize değerlerini görüntüler.

Son olarak, olay günlüğüne yazılan olay için bir EventLogEntryType belirtebilirsiniz. type, günlüğün Olay Görüntüleyicisi Tür sütunundaki bir simge ve metinle gösterilir. Bu parametre olay türünün hata, uyarı, bilgi, başarı denetimi veya hata denetimi olup olmadığını gösterir.

Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir. Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Belirtilen kayıtlı olay kaynağını kullanarak, belirtilen ileti metnini, uygulama tanımlı olay tanımlayıcısını ve uygulama tanımlı kategoriyi içeren bir girdiyi olay günlüğüne yazar. Olay Görüntüleyicisi category tarafından günlükteki olayları filtrelemek için kullanılabilir.

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)

Parametreler

source
String

Uygulamanın belirtilen bilgisayarda kaydedildiği kaynak.

message
String

Olay günlüğüne yazacak dize.

type
EventLogEntryType

Değerlerden EventLogEntryType biri.

eventID
Int32

Olayın uygulamaya özgü tanımlayıcısı.

category
Int16

İletiyle ilişkili uygulamaya özgü alt kategori.

Özel durumlar

source Değer boş bir dizedir ("").

-veya-

source değeri null olur.

-veya-

eventID sıfırdan küçük veya UInt16.MaxValue değerinden büyük.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

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)

Açıklamalar

Uygun günlük için zaten olay kaynağı olarak kaydedilmiş bir kaynak kullanarak olay günlüğüne uygulama tanımlı category bir giriş yazmak için bu yöntemi kullanın. Olay Görüntüleyicisi, bir olay kaynağı tarafından yazılan olayları filtrelemek için kategorisini kullanır. Olay Görüntüleyicisi kategoriyi sayısal bir değer olarak görüntüleyebilir veya kategoriyi kaynak tanımlayıcısı olarak kullanarak yerelleştirilmiş bir kategori dizesi görüntüleyebilir.

Not

category parametresi pozitif bir değer olmalıdır. Negatif kategori değerleri, Olay Görüntüleyicisi tamamlayıcı pozitif bir sayı olarak görünür. Örneğin, -10 65.526, -1 ise 65.535 olarak görünür.

Olay Görüntüleyicisi yerelleştirilmiş kategori dizelerini görüntülemek için, kategori kaynak dosyasıyla yapılandırılmış bir olay kaynağı kullanmanız ve öğesini kategori kaynak dosyasında bir kaynak tanımlayıcısı olarak ayarlamanız category gerekir. Olay kaynağında yapılandırılmış bir kategori kaynak dosyası yoksa veya belirtilen category kategori kaynak dosyasındaki bir dizenin dizinini oluşturmuyorsa, Olay Görüntüleyicisi bu girdinin sayısal kategori değerini görüntüler. veya EventSourceCreationData sınıfını kullanarak EventLogInstaller kaynak dosyasındaki kategori dizelerinin sayısıyla birlikte kategori kaynak dosyasını yapılandırın.

Kategoriye ek olarak, olay günlüğüne yazılan olay için bir olay tanımlayıcısı belirtebilirsiniz. Olay tanımlayıcıları, olay kaynağıyla birlikte bir olayı benzersiz olarak tanımlar. Her uygulama kendi numaralandırılmış olaylarını ve eşledikleri açıklama dizelerini tanımlayabilir. Olay görüntüleyicileri, kullanıcının neyin yanlış gittiğini anlamasına ve hangi eylemlerin gerçekleştirleneceğini önermesine yardımcı olmak için bu dize değerlerini görüntüler.

Son olarak, olay günlüğüne yazılan olay için bir EventLogEntryType belirtebilirsiniz. type, günlüğün Olay Görüntüleyicisi Tür sütunundaki bir simge ve metinle gösterilir. Bu parametre olay türünün hata, uyarı, bilgi, başarı denetimi veya hata denetimi olup olmadığını gösterir.

Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir. Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Verilen ileti metnini, uygulama tanımlı olay tanımlayıcısını ve uygulama tanımlı kategoriyi içeren bir girdiyi olay günlüğüne yazar ve iletiye ikili veri ekler.

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

Parametreler

message
String

Olay günlüğüne yazacak dize.

type
EventLogEntryType

Değerlerden EventLogEntryType biri.

eventID
Int32

Olayın uygulamaya özgü tanımlayıcısı.

category
Int16

İletiyle ilişkili uygulamaya özgü alt kategori.

rawData
Byte[]

Girişle ilişkili ikili verileri tutan bayt dizisi.

Özel durumlar

Source özelliği EventLog ayarlanmadı.

-veya-

yöntemi yeni bir olay kaynağını kaydetmeye çalıştı, ancak içindeki MachineName bilgisayar adı geçerli değil.

-veya-

Kaynak zaten farklı bir olay günlüğü için kayıtlı.

-veya-

eventID sıfırdan küçük veya UInt16.MaxValue değerinden büyük.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

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

Açıklamalar

Uygulama tanımlı olaya özgü verileri olay günlüğüne yazmak için bu aşırı yüklemeyi kullanın. Olay Görüntüleyicisi bu verileri yorumlamaz; ham verileri yalnızca birleştirilmiş onaltılık ve metin biçiminde görüntüler. Olaya özgü verileri, yalnızca birinin sorunda hata ayıklaması için yararlı olduğundan eminseniz, bu verileri de dahil olmak üzere tedbirli kullanın. Uygulamanın Olay Görüntüleyicisi bağımsız olarak işleyebileceği bilgileri depolamak için olaya özgü verileri de kullanabilirsiniz. Örneğin, olaylarınız için özel olarak bir görüntüleyici yazabilir veya günlük dosyasını tarayan ve olaya özgü verilerden bilgiler içeren raporlar oluşturan bir program yazabilirsiniz.

İkili verilere ek olarak, uygulama tanımlı bir kategori ve uygulama tanımlı olay tanımlayıcısı belirtebilirsiniz. Olay Görüntüleyicisi, bir olay kaynağı tarafından yazılan olayları filtrelemek için kategorisini kullanır. Olay Görüntüleyicisi kategoriyi sayısal bir değer olarak görüntüleyebilir veya kategoriyi kaynak tanımlayıcısı olarak kullanarak yerelleştirilmiş bir kategori dizesi görüntüleyebilir.

Not

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Not

category parametresi pozitif bir değer olmalıdır. Negatif kategori değerleri, Olay Görüntüleyicisi tamamlayıcı pozitif bir sayı olarak görünür. Örneğin, -10 65.526, -1 ise 65.535 olarak görünür.

Olay Görüntüleyicisi yerelleştirilmiş kategori dizelerini görüntülemek için, kategori kaynak dosyasıyla yapılandırılmış bir olay kaynağı kullanmanız ve öğesini kategori kaynak dosyasında bir kaynak tanımlayıcısı olarak ayarlamanız category gerekir. Olay kaynağında yapılandırılmış bir kategori kaynak dosyası yoksa veya belirtilen category kategori kaynak dosyasındaki bir dizenin dizinini oluşturmuyorsa, Olay Görüntüleyicisi bu girdinin sayısal kategori değerini görüntüler. veya EventSourceCreationData sınıfını kullanarak EventLogInstaller kaynak dosyasındaki kategori dizelerinin sayısıyla birlikte kategori kaynak dosyasını yapılandırın.

Olay tanımlayıcıları, olay kaynağıyla birlikte bir olayı benzersiz olarak tanımlar. Her uygulama kendi numaralandırılmış olaylarını ve eşledikleri açıklama dizelerini tanımlayabilir. Olay görüntüleyicileri, kullanıcının neyin yanlış gittiğini anlamasına ve hangi eylemlerin gerçekleştirleneceğini önermesine yardımcı olmak için bu dize değerlerini görüntüler.

Son olarak, olay günlüğüne yazılan olay için bir EventLogEntryType belirtebilirsiniz. type, günlüğün Olay Görüntüleyicisi Tür sütunundaki bir simge ve metinle gösterilir. Bu parametre olay türünün hata, uyarı, bilgi, başarı denetimi veya hata denetimi olup olmadığını gösterir.

Günlüğe Source girdi yazmadan önce bileşeninizde EventLog özelliğini ayarlamanız gerekir. Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir.

Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Bu örneğin özelliğinde Source belirtilen kaynak, bileşeninizin yazdığı bilgisayarda kayıtlı değilse, WriteEntry kaynağı çağırır CreateEventSource ve kaydeder.EventLog

Not

veya WriteEntryçağrısı CreateEventSource yapmadan önce örneğin için EventLog bir MachineName belirtmezseniz, yerel bilgisayar (".") varsayılır.

Sistemin çağrısı aracılığıyla öğesini Source kaydetmesi gerekiyorsa ve Log özelliği örneğinizde EventLog ayarlanmamışsa, günlük varsayılan olarak Uygulama günlüğü olarak WriteEntry ayarlanır.

Not

Yukarıda listelenen birçok özel durum, kaydetme Sourceişlemi sırasında oluşan hatalarla oluşturulur.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

Uzak bilgisayara bir girdi yazarsanız, uzak bilgisayar .NET Framework çalıştırmıyorsa iletinin değeri (metin dizesi) beklediğiniz gibi olmayabilir.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Ayrıca bkz.

Şunlara uygulanır

WriteEntry(String, String, EventLogEntryType, Int32)

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Belirtilen kayıtlı olay kaynağını kullanarak belirtilen ileti metnini ve uygulama tanımlı olay tanımlayıcısını içeren bir girdiyi olay günlüğüne yazar.

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)

Parametreler

source
String

Uygulamanın belirtilen bilgisayarda kaydedildiği kaynak.

message
String

Olay günlüğüne yazacak dize.

type
EventLogEntryType

Değerlerden EventLogEntryType biri.

eventID
Int32

Olayın uygulamaya özgü tanımlayıcısı.

Özel durumlar

source Değer boş bir dizedir ("").

-veya-

source değeri null olur.

-veya-

eventID sıfırdan küçük veya UInt16.MaxValue değerinden büyük.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

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

Açıklamalar

Uygun günlük için zaten olay kaynağı olarak kaydedilmiş bir kaynak kullanarak olay günlüğüne uygulama tanımlı eventID bir giriş yazmak için bu yöntemi kullanın. eventID, kaynakla birlikte bir olayı benzersiz olarak tanımlar. Her uygulama kendi numaralandırılmış olaylarını ve eşledikleri açıklama dizelerini tanımlayabilir. Olay görüntüleyicileri, kullanıcının neyin yanlış gittiğini anlamasına ve hangi eylemleri gerçekleştirmesi önerisinde bulunmasına yardımcı olmak için bu dizeleri kullanıcıya sunar.

Not

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Bu aşırı yükleme WriteEntry , olay tanımlayıcısına ek olarak olay günlüğüne yazılan olay için bir EventLogEntryType belirtmenize olanak tanır. type, günlüğün Olay Görüntüleyicisi Tür sütunundaki bir simge ve metinle gösterilir. Bu parametre olay türünün hata, uyarı, bilgi, başarı denetimi veya hata denetimi olup olmadığını gösterir.

Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir. Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Ayrıca bkz.

Şunlara uygulanır

WriteEntry(String, EventLogEntryType, Int32, Int16)

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Verilen ileti metnini, uygulama tanımlı olay tanımlayıcısını ve uygulama tanımlı kategoriyi içeren bir girdiyi olay günlüğüne yazar.

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)

Parametreler

message
String

Olay günlüğüne yazacak dize.

type
EventLogEntryType

Değerlerden EventLogEntryType biri.

eventID
Int32

Olayın uygulamaya özgü tanımlayıcısı.

category
Int16

İletiyle ilişkili uygulamaya özgü alt kategori.

Özel durumlar

Source özelliği EventLog ayarlanmadı.

-veya-

yöntemi yeni bir olay kaynağını kaydetmeye çalıştı, ancak içindeki MachineName bilgisayar adı geçerli değil.

-veya-

Kaynak zaten farklı bir olay günlüğü için kayıtlı.

-veya-

eventID sıfırdan küçük veya UInt16.MaxValue değerinden büyük.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

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

Açıklamalar

Olay günlüğüne uygulama tanımlı category bir giriş yazmak için bu yöntemi kullanın. Olay Görüntüleyicisi, bir olay kaynağı tarafından yazılan olayları filtrelemek için kategorisini kullanır. Olay Görüntüleyicisi kategoriyi sayısal bir değer olarak görüntüleyebilir veya kategoriyi kaynak tanımlayıcısı olarak kullanarak yerelleştirilmiş bir kategori dizesi görüntüleyebilir.

Not

category parametresi pozitif bir değer olmalıdır. Negatif kategori değerleri, Olay Görüntüleyicisi tamamlayıcı pozitif bir sayı olarak görünür. Örneğin, -10 65.526, -1 ise 65.535 olarak görünür.

Not

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Olay Görüntüleyicisi yerelleştirilmiş kategori dizelerini görüntülemek için, kategori kaynak dosyasıyla yapılandırılmış bir olay kaynağı kullanmanız ve öğesini kategori kaynak dosyasında bir kaynak tanımlayıcısı olarak ayarlamanız category gerekir. Olay kaynağında yapılandırılmış bir kategori kaynak dosyası yoksa veya belirtilen category kategori kaynak dosyasındaki bir dizenin dizinini oluşturmuyorsa, Olay Görüntüleyicisi bu girdinin sayısal kategori değerini görüntüler. veya EventSourceCreationData sınıfını kullanarak EventLogInstaller kaynak dosyasındaki kategori dizelerinin sayısıyla birlikte kategori kaynak dosyasını yapılandırın.

Kategoriye ek olarak, olay günlüğüne yazılan olay için bir olay tanımlayıcısı belirtebilirsiniz. Olay tanımlayıcıları, olay kaynağıyla birlikte bir olayı benzersiz olarak tanımlar. Her uygulama kendi numaralandırılmış olaylarını ve eşledikleri açıklama dizelerini tanımlayabilir. Olay görüntüleyicileri, kullanıcının neyin yanlış gittiğini anlamasına ve hangi eylemlerin gerçekleştirleneceğini önermesine yardımcı olmak için bu dize değerlerini görüntüler.

Son olarak, olay günlüğüne yazılan olay için bir EventLogEntryType belirtebilirsiniz. type, günlüğün Olay Görüntüleyicisi Tür sütunundaki bir simge ve metinle gösterilir. Bu parametre olay türünün hata, uyarı, bilgi, başarı denetimi veya hata denetimi olup olmadığını gösterir.

Günlüğe Source girdi yazmadan önce bileşeninizde EventLog özelliğini ayarlamanız gerekir. Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir.

Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Bu örneğin özelliğinde Source belirtilen kaynak, bileşeninizin yazdığı bilgisayarda kayıtlı değilse, WriteEntry kaynağı çağırır CreateEventSource ve kaydeder.EventLog

Not

veya WriteEntryçağrısı CreateEventSource yapmadan önce örneğin için EventLog bir MachineName belirtmezseniz, yerel bilgisayar (".") varsayılır.

Sistemin çağrısı aracılığıyla öğesini Source kaydetmesi gerekiyorsa ve Log özelliği örneğinizde EventLog ayarlanmamışsa, günlük varsayılan olarak Uygulama günlüğü olarak WriteEntry ayarlanır.

Not

Yukarıda listelenen birçok özel durum, kaydetme Sourceişlemi sırasında oluşan hatalarla oluşturulur.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

Uzak bilgisayara bir girdi yazarsanız, uzak bilgisayar .NET Framework çalıştırmıyorsa iletinin değeri (metin dizesi) beklediğiniz gibi olmayabilir.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Ayrıca bkz.

Şunlara uygulanır

WriteEntry(String, EventLogEntryType)

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Olay günlüğüne verilen ileti metniyle bir hata, uyarı, bilgi, başarı denetimi veya hata denetimi girişi yazar.

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)

Parametreler

message
String

Olay günlüğüne yazacak dize.

type
EventLogEntryType

Değerlerden EventLogEntryType biri.

Özel durumlar

Source özelliği EventLog ayarlanmadı.

-veya-

yöntemi yeni bir olay kaynağını kaydetmeye çalıştı, ancak içindeki MachineName bilgisayar adı geçerli değil.

-veya-

Kaynak zaten farklı bir olay günlüğü için kayıtlı.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

Aşağıdaki örnek, yerel bilgisayardaki "MyNewLog" olay günlüğüne bir uyarı girdisi yazar.

#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

Açıklamalar

Belirtilen bir girdisini EventLogEntryType olay günlüğüne yazmak için bu yöntemi kullanın. type, günlüğün Olay Görüntüleyicisi Tür sütunundaki bir simge ve metinle gösterilir.

Not

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Günlüğe Source girdi yazmadan önce bileşeninizde EventLog özelliğini ayarlamanız gerekir. Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir.

Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Bu örneğin özelliğinde Source belirtilen kaynak, bileşeninizin yazdığı bilgisayarda kayıtlı değilse, WriteEntry kaynağı çağırır CreateEventSource ve kaydeder.EventLog

Not

veya WriteEntryçağrısı CreateEventSource yapmadan önce örneğin için EventLog bir MachineName belirtmezseniz, yerel bilgisayar (".") varsayılır.

Sistemin çağrısı aracılığıyla öğesini Source kaydetmesi gerekiyorsa ve Log özelliği örneğinizde EventLog ayarlanmamışsa, günlük varsayılan olarak Uygulama günlüğü olarak WriteEntry ayarlanır.

Not

Yukarıda listelenen birçok özel durum, kaydetme Sourceişlemi sırasında oluşan hatalarla oluşturulur.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

Uzak bilgisayara bir girdi yazarsanız, uzak bilgisayar .NET Framework çalıştırmıyorsa iletinin değeri (metin dizesi) beklediğiniz gibi olmayabilir.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Ayrıca bkz.

Şunlara uygulanır

WriteEntry(String, EventLogEntryType, Int32)

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Verilen ileti metnini ve uygulama tanımlı olay tanımlayıcısını içeren bir girdiyi olay günlüğüne yazar.

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)

Parametreler

message
String

Olay günlüğüne yazacak dize.

type
EventLogEntryType

Değerlerden EventLogEntryType biri.

eventID
Int32

Olayın uygulamaya özgü tanımlayıcısı.

Özel durumlar

Source özelliği EventLog ayarlanmadı.

-veya-

yöntemi yeni bir olay kaynağını kaydetmeye çalıştı, ancak içindeki MachineName bilgisayar adı geçerli değil.

-veya-

Kaynak zaten farklı bir olay günlüğü için kayıtlı.

-veya-

eventID sıfırdan küçük veya UInt16.MaxValue değerinden büyük.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

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

Açıklamalar

Olay günlüğüne uygulama tanımlı eventID bir giriş yazmak için bu yöntemi kullanın. eventID kaynakla birlikte bir olayı benzersiz olarak tanımlar. Her uygulama kendi numaralandırılmış olaylarını ve eşledikleri açıklama dizelerini tanımlayabilir. Olay görüntüleyicileri, kullanıcının neyin yanlış gittiğini anlamasına ve hangi eylemlerin gerçekleştirleneceğini önermesine yardımcı olmak için bu dize değerlerini görüntüler.

Not

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Olay tanımlayıcısına ek olarak, olay günlüğüne yazılan olay için bir EventLogEntryType belirtebilirsiniz. type, günlüğün Olay Görüntüleyicisi Tür sütunundaki bir simge ve metinle gösterilir. Bu parametre olay türünün hata, uyarı, bilgi, başarı denetimi veya hata denetimi olup olmadığını gösterir.

Günlüğe Source girdi yazmadan önce bileşeninizde EventLog özelliğini ayarlamanız gerekir. Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir.

Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Bu örneğin özelliğinde Source belirtilen kaynak, bileşeninizin yazdığı bilgisayarda kayıtlı değilse, WriteEntry kaynağı çağırır CreateEventSource ve kaydeder.EventLog

Not

veya WriteEntryçağrısı CreateEventSource yapmadan önce örneğin için EventLog bir MachineName belirtmezseniz, yerel bilgisayar (".") varsayılır.

Sistemin çağrısı aracılığıyla öğesini Source kaydetmesi gerekiyorsa ve Log özelliği örneğinizde EventLog ayarlanmamışsa, günlük varsayılan olarak Uygulama günlüğü olarak WriteEntry ayarlanır.

Not

Yukarıda listelenen birçok özel durum, kaydetme Sourceişlemi sırasında oluşan hatalarla oluşturulur.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

Uzak bilgisayara bir girdi yazarsanız, uzak bilgisayar .NET Framework çalıştırmıyorsa iletinin değeri (metin dizesi) beklediğiniz gibi olmayabilir.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Ayrıca bkz.

Şunlara uygulanır

WriteEntry(String, String)

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Belirtilen kayıtlı olay kaynağını kullanarak, verilen ileti metnini içeren bir bilgi türü girdisini olay günlüğüne yazar.

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)

Parametreler

source
String

Uygulamanın belirtilen bilgisayarda kaydedildiği kaynak.

message
String

Olay günlüğüne yazacak dize.

Özel durumlar

source Değer boş bir dizedir ("").

-veya-

source değeri null olur.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

Aşağıdaki örnek, henüz yoksa kaynağı MySource oluşturur ve olay günlüğüne MyNewLogbir giriş yazar.

#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

Açıklamalar

Uygun günlük için zaten olay kaynağı olarak kaydedilmiş bir kaynak kullanarak olay günlüğüne bilgi girişi yazmak için bu yöntemi kullanın. Başka EventLogEntryTypeherhangi bir belirtmek istiyorsanız, farklı bir aşırı yükleme WriteEntrykullanın.

Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir. Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Ayrıca bkz.

Şunlara uygulanır

WriteEntry(String)

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Olay günlüğüne verilen ileti metnini içeren bir bilgi türü girdisi yazar.

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

Parametreler

message
String

Olay günlüğüne yazacak dize.

Özel durumlar

Source özelliği EventLog ayarlanmadı.

-veya-

yöntemi yeni bir olay kaynağını kaydetmeye çalıştı, ancak içindeki MachineName bilgisayar adı geçerli değil.

-veya-

Kaynak zaten farklı bir olay günlüğü için kayıtlı.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

Aşağıdaki örnek, henüz yoksa kaynağı MySource oluşturur ve olay günlüğüne MyNewLogbir giriş yazar.

#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

Açıklamalar

Bu örnekle ilişkili olay günlüğüne bir bilgi girişi yazmak için bu EventLog yöntemi kullanın. Başka EventLogEntryTypeherhangi bir belirtmek istiyorsanız, farklı bir aşırı yükleme WriteEntrykullanın.

Not

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Günlüğe Source girdi yazmadan önce bileşeninizde EventLog özelliğini ayarlamanız gerekir. Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir.

Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Bu örneğin özelliğinde Source belirtilen kaynak, bileşeninizin yazdığı bilgisayarda kayıtlı değilse, WriteEntry kaynağı çağırır CreateEventSource ve kaydeder.EventLog

Not

veya WriteEntryçağrısı CreateEventSource yapmadan önce örneğin için EventLog bir MachineName belirtmezseniz, yerel bilgisayar (".") varsayılır.

Sistemin çağrısı aracılığıyla öğesini Source kaydetmesi gerekiyorsa ve Log özelliği örneğinizde EventLog ayarlanmamışsa, günlük varsayılan olarak Uygulama günlüğü olarak WriteEntry ayarlanır.

Not

Yukarıda listelenen özel durumların çoğu, kaydetme Sourceişlemi sırasında oluşan hatalarla oluşturulur.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

Uzak bilgisayara bir girdi yazarsanız, uzak bilgisayar .NET Framework çalıştırmıyorsa iletinin değeri (metin dizesi) beklediğiniz gibi olmayabilir.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Ayrıca bkz.

Şunlara uygulanır

WriteEntry(String, String, EventLogEntryType)

Kaynak:
EventLog.cs
Kaynak:
EventLog.cs
Kaynak:
EventLog.cs

Belirtilen kayıtlı olay kaynağını kullanarak olay günlüğüne verilen ileti metniyle bir hata, uyarı, bilgi, başarı denetimi veya hata denetimi girişi yazar.

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)

Parametreler

source
String

Uygulamanın belirtilen bilgisayarda kaydedildiği kaynak.

message
String

Olay günlüğüne yazacak dize.

type
EventLogEntryType

Değerlerden EventLogEntryType biri.

Özel durumlar

source Değer boş bir dizedir ("").

-veya-

source değeri null olur.

-veya-

İleti dizesi 31.839 bayttan uzun (Windows Vista'dan önceki Windows işletim sistemlerinde 32.766 bayt).

-veya-

Kaynak adı, kayıt defteri anahtarı yolunun 254 karakterden uzun olmasına neden olur.

Olay günlüğünün kayıt defteri anahtarı açılamadı.

İşletim sistemi, olay günlüğüne olay girdisi yazarken bir hata bildirdi. Windows hata kodu kullanılamıyor.

Örnekler

Aşağıdaki örnek, yerel bilgisayardaki "MyNewLog" olay günlüğüne bir uyarı girdisi yazar.

#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

Açıklamalar

Uygun günlük için zaten olay kaynağı olarak kaydedilmiş bir kaynak kullanarak belirtilen bir girdinin bir girdisini EventLogEntryType olay günlüğüne yazmak için bu yöntemi kullanın. type, günlüğün Olay Görüntüleyicisi Tür sütunundaki bir simge ve metinle gösterilir.

Not

Olay message görüntüleyicisi bunu ekleme dizesi olarak değerlendirdiğinden, dize %n öğesini içeremez; burada n bir tamsayı değeridir (örneğin, %1). Bir İnternet Protokolü, sürüm 6 (IPv6) adresi bu karakter dizisini içerebileceğinden, IPv6 adresi içeren bir olay iletisini günlüğe kaydedemezsiniz.

Kaynakla ilk girdiyi yazmadan önce olay kaynağını oluşturmanız ve yapılandırmanız gerekir. Uygulamanızın yüklenmesi sırasında yeni olay kaynağını İçerik Oluşturucu. Bu, işletim sisteminin kayıtlı olay kaynakları listesini ve bunların yapılandırmasını yenilemesine izin verir. İşletim sistemi olay kaynakları listesini yenilemediyse ve yeni kaynakla bir olay yazmaya çalışırsanız, yazma işlemi başarısız olur. kullanarak veya yöntemini kullanarak CreateEventSource yeni bir EventLogInstallerkaynak yapılandırabilirsiniz. Yeni bir olay kaynağı oluşturmak için bilgisayarda yönetici haklarına sahip olmanız gerekir.

Kaynak, yerelleştirilmiş girdiler yazmak veya doğrudan dizeler yazmak için yapılandırılmalıdır. WriteEntry yöntemi verilen dizeyi doğrudan olay günlüğüne yazar; yerelleştirilebilir bir ileti kaynak dosyası kullanmaz. WriteEvent Yerelleştirilmiş bir ileti kaynak dosyası kullanarak olayları yazmak için yöntemini kullanın.

Uygulamanız hem kaynak tanımlayıcılarını hem de dize değerlerini kullanarak girdi yazıyorsa, iki ayrı kaynağı kaydetmeniz gerekir. Örneğin, kaynak dosyalarıyla bir kaynak yapılandırın ve ardından olay günlüğüne kaynak tanımlayıcılarını kullanarak girdi yazmak için yönteminde bu kaynağı WriteEvent kullanın. Ardından kaynak dosyaları olmadan farklı bir kaynak oluşturun ve bu kaynağı kullanarak dizeleri doğrudan olay günlüğüne yazmak için yönteminde WriteEntry kullanın.

Not

message Parametre bir NUL karakteri içeriyorsa, olay günlüğündeki ileti NUL karakterinde sonlandırılır.

Ayrıca bkz.

Şunlara uygulanır