EventLog.CreateEventSource Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Létrehoz egy alkalmazást, amely képes eseményinformációkat írni egy adott naplóba a rendszeren.
Túlterhelések
| Name | Description |
|---|---|
| CreateEventSource(EventSourceCreationData) |
Létrehoz egy érvényes eseményforrást a honosított eseményüzenetek írásához az eseményforrás és a megfelelő eseménynapló megadott konfigurációs tulajdonságainak használatával. |
| CreateEventSource(String, String) |
A megadott forrásnevet érvényes eseményforrásként határozza meg a bejegyzések helyi számítógépen lévő naplóba való írásához. Ez a módszer új egyéni naplót is létrehozhat a helyi számítógépen. |
| CreateEventSource(String, String, String) |
Elavult.
Elavult.
Elavult.
A megadott forrásnevet érvényes eseményforrásként hozza létre a megadott számítógépen lévő naplóba való bejegyzés írásához. Ezzel a módszerrel új egyéni naplót is létrehozhat a megadott számítógépen. |
CreateEventSource(EventSourceCreationData)
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
Létrehoz egy érvényes eseményforrást a honosított eseményüzenetek írásához az eseményforrás és a megfelelő eseménynapló megadott konfigurációs tulajdonságainak használatával.
public:
static void CreateEventSource(System::Diagnostics::EventSourceCreationData ^ sourceData);
public static void CreateEventSource(System.Diagnostics.EventSourceCreationData sourceData);
static member CreateEventSource : System.Diagnostics.EventSourceCreationData -> unit
Public Shared Sub CreateEventSource (sourceData As EventSourceCreationData)
Paraméterek
- sourceData
- EventSourceCreationData
Az eseményforrás és a céleseménynapló konfigurációs tulajdonságai.
Kivételek
A megadott sourceData számítógépnév érvénytelen.
-vagy-
A megadott sourceData forrásnév a következő null: .
-vagy-
A megadott sourceData naplónév érvénytelen. Az eseménynaplók nevének nyomtatható karakterekből kell állnia, és nem tartalmazhatják a "*", a "?" vagy a "\" karaktereket.
-vagy-
A megadott sourceData naplónév nem érvényes a felhasználói naplók létrehozására. Az AppEvent, a SysEvent és a SecEvent eseménynapló-neve rendszerhasználatra van fenntartva.
-vagy-
A napló neve megegyezik egy meglévő eseményforrás nevével.
-vagy-
A megadott sourceData forrásnév 254 karakternél hosszabb beállításkulcs-elérési utat eredményez.
-vagy-
A naplónév sourceData első 8 karaktere nem egyedi.
-vagy-
A megadott sourceData forrásnév már regisztrálva van.
-vagy-
A megadott sourceData forrásnév megegyezik egy meglévő eseménynapló nevével.
Az eseménynapló beállításkulcsa nem nyitható meg.
sourceData az null.
Példák
Az alábbi példa azt határozza meg, hogy a névvel ellátott SampleApplicationSource eseményforrás regisztrálva van-e a helyi számítógépen. Ha az eseményforrás nem létezik, a példa beállítja a forrás üzeneterőforrás-fájlját, és létrehozza az új eseményforrást. Végül a példa beállítja az eseménynapló honosított megjelenítendő nevét a benne lévő DisplayNameMsgId erőforrás-azonosító érték és az erőforrásfájl elérési útja messageFilealapján.
static void CreateEventSourceSample1(string messageFile)
{
string myLogName;
string sourceName = "SampleApplicationSource";
// Create the event source if it does not exist.
if(!EventLog.SourceExists(sourceName))
{
// Create a new event source for the custom event log
// named "myNewLog."
myLogName = "myNewLog";
EventSourceCreationData mySourceData = new EventSourceCreationData(sourceName, myLogName);
// Set the message resource file that the event source references.
// All event resource identifiers correspond to text in this file.
if (!System.IO.File.Exists(messageFile))
{
Console.WriteLine("Input message resource file does not exist - {0}",
messageFile);
messageFile = "";
}
else
{
// Set the specified file as the resource
// file for message text, category text, and
// message parameter strings.
mySourceData.MessageResourceFile = messageFile;
mySourceData.CategoryResourceFile = messageFile;
mySourceData.CategoryCount = CategoryCount;
mySourceData.ParameterResourceFile = messageFile;
Console.WriteLine("Event source message resource file set to {0}",
messageFile);
}
Console.WriteLine("Registering new source for event log.");
EventLog.CreateEventSource(mySourceData);
}
else
{
// Get the event log corresponding to the existing source.
myLogName = EventLog.LogNameFromSourceName(sourceName,".");
}
// Register the localized name of the event log.
// For example, the actual name of the event log is "myNewLog," but
// the event log name displayed in the Event Viewer might be
// "Sample Application Log" or some other application-specific
// text.
EventLog myEventLog = new EventLog(myLogName, ".", sourceName);
if (messageFile.Length > 0)
{
myEventLog.RegisterDisplayName(messageFile, DisplayNameMsgId);
}
}
Public Shared Sub CreateEventSourceSample1(ByVal messageFile As String)
Dim myLogName As String
Dim sourceName As String = "SampleApplicationSource"
' Create the event source if it does not exist.
If Not EventLog.SourceExists(sourceName)
' Create a new event source for the custom event log
' named "myNewLog."
myLogName = "myNewLog"
Dim mySourceData As EventSourceCreationData = New EventSourceCreationData(sourceName, myLogName)
' Set the message resource file that the event source references.
' All event resource identifiers correspond to text in this file.
If Not System.IO.File.Exists(messageFile)
Console.WriteLine("Input message resource file does not exist - {0}", _
messageFile)
messageFile = ""
Else
' Set the specified file as the resource
' file for message text, category text and
' message parameters strings.
mySourceData.MessageResourceFile = messageFile
mySourceData.CategoryResourceFile = messageFile
mySourceData.CategoryCount = CategoryCount
mySourceData.ParameterResourceFile = messageFile
Console.WriteLine("Event source message resource file set to {0}", _
messageFile)
End If
Console.WriteLine("Registering new source for event log.")
EventLog.CreateEventSource(mySourceData)
Else
' Get the event log corresponding to the existing source.
myLogName = EventLog.LogNameFromSourceName(sourceName,".")
End If
' Register the localized name of the event log.
' For example, the actual name of the event log is "myNewLog," but
' the event log name displayed in the Event Viewer might be
' "Sample Application Log" or some other application-specific
' text.
Dim myEventLog As EventLog = New EventLog(myLogName, ".", sourceName)
If messageFile.Length > 0
myEventLog.RegisterDisplayName(messageFile, DisplayNameMsgId)
End If
End Sub
A példa az erőforrástárba EventLogMsgs.dllbeépített alábbi üzenetszövegfájlt használja. Az üzenetszövegfájl az a forrás, amelyből az üzenet erőforrásfájlja létrejön. Az üzenet szövegfájlja határozza meg a kategória, eseményüzenet és paraméterszúró sztringek erőforrás-azonosítóit és szövegét. Pontosabban az 5001 erőforrás-azonosító az eseménynapló honosított nevéhez van definiálva.
; // EventLogMsgs.mc
; // ********************************************************
; // Use the following commands to build this file:
; // mc -s EventLogMsgs.mc
; // rc EventLogMsgs.rc
; // link /DLL /SUBSYSTEM:WINDOWS /NOENTRY /MACHINE:x86 EventLogMsgs.Res
; // ********************************************************
; // - Event categories -
; // Categories must be numbered consecutively starting at 1.
; // ********************************************************
MessageId=0x1
Severity=Success
SymbolicName=INSTALL_CATEGORY
Language=English
Installation
.
MessageId=0x2
Severity=Success
SymbolicName=QUERY_CATEGORY
Language=English
Database Query
.
MessageId=0x3
Severity=Success
SymbolicName=REFRESH_CATEGORY
Language=English
Data Refresh
.
; // - Event messages -
; // *********************************
MessageId = 1000
Severity = Success
Facility = Application
SymbolicName = AUDIT_SUCCESS_MESSAGE_ID_1000
Language=English
My application message text, in English, for message id 1000, called from %1.
.
MessageId = 1001
Severity = Warning
Facility = Application
SymbolicName = AUDIT_FAILED_MESSAGE_ID_1001
Language=English
My application message text, in English, for message id 1001, called from %1.
.
MessageId = 1002
Severity = Success
Facility = Application
SymbolicName = GENERIC_INFO_MESSAGE_ID_1002
Language=English
My generic information message in English, for message id 1002.
.
MessageId = 1003
Severity = Warning
Facility = Application
SymbolicName = GENERIC_WARNING_MESSAGE_ID_1003
Language=English
My generic warning message in English, for message id 1003, called from %1.
.
MessageId = 1004
Severity = Success
Facility = Application
SymbolicName = UPDATE_CYCLE_COMPLETE_MESSAGE_ID_1004
Language=English
The update cycle is complete for %%5002.
.
MessageId = 1005
Severity = Warning
Facility = Application
SymbolicName = SERVER_CONNECTION_DOWN_MESSAGE_ID_1005
Language=English
The refresh operation did not complete because the connection to server %1 could not be established.
.
; // - Event log display name -
; // ********************************************************
MessageId = 5001
Severity = Success
Facility = Application
SymbolicName = EVENT_LOG_DISPLAY_NAME_MSGID
Language=English
Sample Event Log
.
; // - Event message parameters -
; // Language independent insertion strings
; // ********************************************************
MessageId = 5002
Severity = Success
Facility = Application
SymbolicName = EVENT_LOG_SERVICE_NAME_MSGID
Language=English
SVC_UPDATE.EXE
.
Megjegyzések
Ezzel a túlterheléssel konfigurálhat egy új forrást, amely bejegyzéseket ír egy eseménynaplóba a helyi számítógépen vagy egy távoli számítógépen. Nem szükséges ezt a módszert használni az eseménynaplóból való olvasáshoz.
A CreateEventSource metódus a bemeneti sourceDataSourceés LogNameMachineName a tulajdonságok használatával hoz létre beállításjegyzék-értékeket a célszámítógépen az új forráshoz és a hozzá tartozó eseménynaplóhoz. Az új forrásnév nem egyezhet meg a célszámítógépen meglévő forrásnévvel vagy meglévő eseménynapló-névvel. Ha a LogName tulajdonság nincs beállítva, a forrás regisztrálva lesz az alkalmazás eseménynaplójában. Ha nincs MachineName beállítva, a forrás regisztrálva lesz a helyi számítógépen.
Note
Ha 2003-ban vagy Windows Server Windows Vista vagy újabb verzióiban szeretne eseményforrást létrehozni, rendszergazdai jogosultságokkal kell rendelkeznie.
Ennek a követelménynek az az oka, hogy minden eseménynaplót, beleértve a biztonságot is, keresni kell annak megállapításához, hogy az eseményforrás egyedi-e. A Windows Vista kezdve a felhasználók nem férhetnek hozzá a biztonsági naplóhoz, ezért a rendszer SecurityException dob.
Az Windows Vista kezdve a felhasználói fiókok felügyelete (UAC) határozza meg a felhasználó jogosultságait. Ha Tagja a Beépített rendszergazdák csoportnak, két futásidejű hozzáférési jogkivonatot kap: egy standard felhasználói hozzáférési jogkivonatot és egy rendszergazdai hozzáférési jogkivonatot. Alapértelmezés szerint a szokásos felhasználói szerepkörben van. A biztonsági naplóhoz hozzáférő kód végrehajtásához először emelnie kell a jogosultságokat a standard felhasználóról a rendszergazdára. Ezt az alkalmazás indításakor megteheti úgy, hogy a jobb gombbal az alkalmazás ikonra kattint, és jelzi, hogy rendszergazdaként szeretne futni.
Események használata WriteEvent és WriteEntry írása egy eseménynaplóba. Események írásához meg kell adnia egy eseményforrást; az első bejegyzés forrással való írása előtt létre kell hoznia és konfigurálnia kell az eseményforrást.
Hozza létre az új eseményforrást az alkalmazás telepítése során. Ez lehetővé teszi, hogy az operációs rendszer frissítse a regisztrált eseményforrások listáját és azok konfigurációját. Ha az operációs rendszer nem frissítette az eseményforrások listáját, és egy eseményt próbál meg írni az új forrással, az írási művelet sikertelen lesz. Új forrást konfigurálhat egy EventLogInstaller, vagy a CreateEventSource metódus használatával. Új eseményforrás létrehozásához rendszergazdai jogosultságokkal kell rendelkeznie a számítógépen.
Létrehozhat egy eseményforrást egy meglévő eseménynaplóhoz vagy egy új eseménynaplóhoz. Amikor új forrást hoz létre egy új eseménynaplóhoz, a rendszer regisztrálja a napló forrását, de a napló csak az első bejegyzés megírásáig jön létre.
Az operációs rendszer fájlként tárolja az eseménynaplókat. Amikor új eseménynaplót használ EventLogInstaller vagy CreateEventSource hoz létre, a társított fájlt a rendszer a megadott számítógépen található %SystemRoot%\System32\Config könyvtárban tárolja. A fájlnév úgy van beállítva, hogy hozzáfűzi a Log tulajdonság első 8 karakterét az ".evt" fájlnévkiterjesztéshez.
Minden forrás egyszerre csak egy eseménynaplóba tud írni; az alkalmazás azonban több forrásból is írhat több eseménynaplóba. Előfordulhat például, hogy az alkalmazás több, különböző eseménynaplókhoz vagy különböző erőforrásfájlokhoz konfigurált forrást igényel.
Az eseményforrást az eseménykategória és az üzenetsztringek honosított erőforrásfájljaival regisztrálhatja. Az alkalmazás erőforrás-azonosítók használatával írhat eseménynapló-bejegyzéseket a tényleges sztring megadása helyett. A eseménymegtekintő az erőforrás-azonosítót használja a honosított erőforrásfájl megfelelő sztringjének megkereséséhez és megjelenítéséhez az aktuális nyelvi beállítások alapján. Regisztrálhat egy külön fájlt az eseménykategóriákhoz, üzenetekhez és paraméterszúrási sztringekhez, vagy regisztrálhatja ugyanazt az erőforrásfájlt mindhárom sztringtípushoz. CategoryCountA , CategoryResourceFile, MessageResourceFileés ParameterResourceFile tulajdonságok használatával konfigurálja a forrást, hogy honosított bejegyzéseket írjon az eseménynaplóba. Ha az alkalmazás sztringeket ír közvetlenül az eseménynaplóba, nem kell ezeket a tulajdonságokat beállítania.
A forrást honosított bejegyzések írására vagy közvetlen sztringek írására kell konfigurálni. Ha az alkalmazás erőforrás-azonosítók és sztringértékek használatával is ír bejegyzéseket, két különálló forrást kell regisztrálnia. Konfiguráljon például egy forrást erőforrásfájlokkal, majd használja ezt a forrást a WriteEvent metódusban bejegyzések írásához erőforrás-azonosítók használatával az eseménynaplóba. Ezután hozzon létre egy másik forrást erőforrásfájlok nélkül, és használja ezt a forrást a WriteEntry metódusban, hogy sztringeket írjon közvetlenül az eseménynaplóba ezzel a forrással.
Egy meglévő forrás konfigurációs adatainak módosításához törölnie kell a forrást, majd létre kell hoznia az új konfigurációval. Ha más alkalmazások vagy összetevők a meglévő forrást használják, a meglévő forrás törlése helyett hozzon létre egy új forrást a frissített konfigurációval.
Note
Ha egy forrás egy eseménynaplóhoz van konfigurálva, és újrakonfigurálja egy másik eseménynaplóhoz, újra kell indítania a számítógépet a módosítások érvénybe lépéséhez.
Lásd még
A következőre érvényes:
CreateEventSource(String, String)
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
A megadott forrásnevet érvényes eseményforrásként határozza meg a bejegyzések helyi számítógépen lévő naplóba való írásához. Ez a módszer új egyéni naplót is létrehozhat a helyi számítógépen.
public:
static void CreateEventSource(System::String ^ source, System::String ^ logName);
public static void CreateEventSource(string source, string logName);
static member CreateEventSource : string * string -> unit
Public Shared Sub CreateEventSource (source As String, logName As String)
Paraméterek
- source
- String
Az a forrásnév, amellyel az alkalmazás regisztrálva van a helyi számítógépen.
- logName
- String
Annak a naplónak a neve, amelybe a forrás bejegyzései be vannak írva. A lehetséges értékek közé tartozik az alkalmazás, a rendszer vagy egy egyéni eseménynapló.
Kivételek
source üres sztring ("") vagy null.
-vagy-
logName érvénytelen eseménynapló-név. Az eseménynapló nevének nyomtatható karakterekből kell állnia, és nem tartalmazhat "*", "?" vagy "\" karaktereket.
-vagy-
logName nem érvényes a felhasználói naplók létrehozására. Az AppEvent, a SysEvent és a SecEvent eseménynapló-nevei rendszerhasználatra vannak fenntartva.
-vagy-
A napló neve megegyezik egy meglévő eseményforrás nevével.
-vagy-
A forrásnév 254 karakternél hosszabb beállításkulcs-elérési utat eredményez.
-vagy-
Az első 8 karakter logName megegyezik egy meglévő eseménynapló nevének első 8 karakterével.
-vagy-
A forrás nem regisztrálható, mert már létezik a helyi számítógépen.
-vagy-
A forrásnév megegyezik egy meglévő eseménynapló nevével.
Az eseménynapló beállításkulcsa nem nyitható meg a helyi számítógépen.
Példák
Az alábbi példa létrehozza a forrást MySource , ha még nem létezik, és egy bejegyzést ír az eseménynaplóba MyNewLog.
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
Megjegyzések
Ezzel a túlterheléssel létrehozhat egy egyéni naplót, vagy létrehozhat és regisztrálhat egy Source meglévő naplót a helyi számítógépen.
Ha logName egy null üres sztring ("") híváskor CreateEventSource, a napló alapértelmezés szerint az alkalmazásnaplóba kerül. Ha a napló nem létezik a helyi számítógépen, a rendszer létrehoz egy egyéni naplót, és regisztrálja az alkalmazást az adott naplóhoz Source .
Note
Ha 2003-ban vagy Windows Server Windows Vista vagy újabb verzióiban szeretne eseményforrást létrehozni, rendszergazdai jogosultságokkal kell rendelkeznie.
Ennek a követelménynek az az oka, hogy minden eseménynaplót, beleértve a biztonságot is, keresni kell annak megállapításához, hogy az eseményforrás egyedi-e. A Windows Vista kezdve a felhasználók nem férhetnek hozzá a biztonsági naplóhoz, ezért a rendszer SecurityException dob.
A Windows Vista és újabb verziókban a felhasználói fiókok felügyelete (UAC) határozza meg a felhasználó jogosultságait. Ha Tagja a Beépített rendszergazdák csoportnak, két futásidejű hozzáférési jogkivonatot kap: egy standard felhasználói hozzáférési jogkivonatot és egy rendszergazdai hozzáférési jogkivonatot. Alapértelmezés szerint a szokásos felhasználói szerepkörben van. A biztonsági naplóhoz hozzáférő kód végrehajtásához először emelnie kell a jogosultságokat a standard felhasználóról a rendszergazdára. Ezt az alkalmazás indításakor megteheti úgy, hogy a jobb gombbal az alkalmazás ikonra kattint, és jelzi, hogy rendszergazdaként szeretne futni.
Csak akkor kell eseményforrást létrehoznia, ha az eseménynaplóba ír. Mielőtt bejegyzést ír egy eseménynaplóba, az eseményforrást érvényes eseményforrásként kell regisztrálnia az eseménynaplóban. Naplóbejegyzés írásakor a rendszer a Source megfelelő napló megkeresésére használja a bejegyzés elhelyezéséhez. Ha az eseménynaplót olvassa, megadhatja az , vagy az SourceLog és MachineNamea értéket.
Note
Nem kell megadnia, hogy csatlakozik-e MachineName a helyi számítógépen található naplóhoz. Ha nem adja meg a MachineName naplóból való olvasáskor megadott értéket, a rendszer a helyi számítógépet (".") feltételezi.
Események használata WriteEvent és WriteEntry írása egy eseménynaplóba. Események írásához meg kell adnia egy eseményforrást; az első bejegyzés forrással való írása előtt létre kell hoznia és konfigurálnia kell az eseményforrást.
Hozza létre az új eseményforrást az alkalmazás telepítése során. Ez lehetővé teszi, hogy az operációs rendszer frissítse a regisztrált eseményforrások listáját és azok konfigurációját. Ha az operációs rendszer nem frissítette az eseményforrások listáját, és egy eseményt próbál meg írni az új forrással, az írási művelet sikertelen lesz. Új forrást konfigurálhat egy EventLogInstaller, vagy a CreateEventSource metódus használatával. Új eseményforrás létrehozásához rendszergazdai jogosultságokkal kell rendelkeznie a számítógépen.
Létrehozhat egy eseményforrást egy meglévő eseménynaplóhoz vagy egy új eseménynaplóhoz. Amikor új forrást hoz létre egy új eseménynaplóhoz, a rendszer regisztrálja a napló forrását, de a napló csak az első bejegyzés megírásáig jön létre.
Az operációs rendszer fájlként tárolja az eseménynaplókat. Amikor új eseménynaplót használ EventLogInstaller vagy CreateEventSource hoz létre, a társított fájlt a rendszer a megadott számítógépen található %SystemRoot%\System32\Config könyvtárban tárolja. A fájlnév úgy van beállítva, hogy hozzáfűzi a Log tulajdonság első 8 karakterét az ".evt" fájlnévkiterjesztéshez.
A forrásnak egyedinek kell lennie a helyi számítógépen; az új forrásnév nem egyezhet meg egy meglévő forrásnévvel vagy egy meglévő eseménynapló-névvel. Minden forrás egyszerre csak egy eseménynaplóba tud írni; az alkalmazás azonban több forrásból is írhat több eseménynaplóba. Előfordulhat például, hogy az alkalmazás több, különböző eseménynaplókhoz vagy különböző erőforrásfájlokhoz konfigurált forrást igényel.
A forrást honosított bejegyzések írására vagy közvetlen sztringek írására kell konfigurálni. Ha az alkalmazás erőforrás-azonosítók és sztringértékek használatával is ír bejegyzéseket, két különálló forrást kell regisztrálnia. Konfiguráljon például egy forrást erőforrásfájlokkal, majd használja ezt a forrást a WriteEvent metódusban bejegyzések írásához erőforrás-azonosítók használatával az eseménynaplóba. Ezután hozzon létre egy másik forrást erőforrásfájlok nélkül, és használja ezt a forrást a WriteEntry metódusban, hogy sztringeket írjon közvetlenül az eseménynaplóba ezzel a forrással.
Egy meglévő forrás konfigurációs adatainak módosításához törölnie kell a forrást, majd létre kell hoznia az új konfigurációval. Ha más alkalmazások vagy összetevők a meglévő forrást használják, a meglévő forrás törlése helyett hozzon létre egy új forrást a frissített konfigurációval.
Note
Ha egy forrás már le van képezve egy naplóra, és újraképezi egy új naplóba, újra kell indítania a számítógépet a módosítások érvénybe lépéséhez.
Lásd még
A következőre érvényes:
CreateEventSource(String, String, String)
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
- Forrás:
- EventLog.cs
Figyelemfelhívás
EventLog.CreateEventSource has been deprecated. Use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead.
Figyelemfelhívás
This method has been deprecated. Please use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead. http://go.microsoft.com/fwlink/?linkid=14202
Figyelemfelhívás
This method has been deprecated. Please use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead. https://go.microsoft.com/fwlink/?linkid=14202
A megadott forrásnevet érvényes eseményforrásként hozza létre a megadott számítógépen lévő naplóba való bejegyzés írásához. Ezzel a módszerrel új egyéni naplót is létrehozhat a megadott számítógépen.
public:
static void CreateEventSource(System::String ^ source, System::String ^ logName, System::String ^ machineName);
[System.Obsolete("EventLog.CreateEventSource has been deprecated. Use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead.")]
public static void CreateEventSource(string source, string logName, string machineName);
public static void CreateEventSource(string source, string logName, string machineName);
[System.Obsolete("This method has been deprecated. Please use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
public static void CreateEventSource(string source, string logName, string machineName);
[System.Obsolete("This method has been deprecated. Please use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead. https://go.microsoft.com/fwlink/?linkid=14202")]
public static void CreateEventSource(string source, string logName, string machineName);
[<System.Obsolete("EventLog.CreateEventSource has been deprecated. Use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead.")>]
static member CreateEventSource : string * string * string -> unit
static member CreateEventSource : string * string * string -> unit
[<System.Obsolete("This method has been deprecated. Please use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
static member CreateEventSource : string * string * string -> unit
[<System.Obsolete("This method has been deprecated. Please use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead. https://go.microsoft.com/fwlink/?linkid=14202")>]
static member CreateEventSource : string * string * string -> unit
Public Shared Sub CreateEventSource (source As String, logName As String, machineName As String)
Paraméterek
- source
- String
Az a forrás, amellyel az alkalmazás regisztrálva van a megadott számítógépen.
- logName
- String
Annak a naplónak a neve, amelybe a forrás bejegyzései be vannak írva. A lehetséges értékek közé tartozik az alkalmazás, a rendszer vagy egy egyéni eseménynapló. Ha nem ad meg értéket, logName az alapértelmezett érték az Alkalmazás lesz.
- machineName
- String
Annak a számítógépnek a neve, amellyel regisztrálni szeretné ezt az eseményforrást, vagy "." a helyi számítógépen.
- Attribútumok
Kivételek
Ez machineName nem érvényes számítógépnév.
-vagy-
source üres sztring ("") vagy null.
-vagy-
logName érvénytelen eseménynapló-név. Az eseménynapló nevének nyomtatható karakterekből kell állnia, és nem tartalmazhat "*", "?" vagy "\" karaktereket.
-vagy-
logName nem érvényes a felhasználói naplók létrehozására. Az AppEvent, a SysEvent és a SecEvent eseménynapló-nevei rendszerhasználatra vannak fenntartva.
-vagy-
A napló neve megegyezik egy meglévő eseményforrás nevével.
-vagy-
A forrásnév 254 karakternél hosszabb beállításkulcs-elérési utat eredményez.
-vagy-
Az első 8 karakter logName egyezik a megadott számítógépen található meglévő eseménynapló-név első 8 karakterével.
-vagy-
A forrás nem regisztrálható, mert már létezik a megadott számítógépen.
-vagy-
A forrásnév megegyezik egy meglévő eseményforrás nevével.
Az eseménynapló beállításkulcsa nem nyitható meg a megadott számítógépen.
Megjegyzések
Ezzel a túlterheléssel létrehozhat egy egyéni naplót, vagy létrehozhat és regisztrálhat egy Source meglévő naplót a megadott számítógépen.
Ha logName egy null üres sztring ("") híváskor CreateEventSource, a napló alapértelmezés szerint az alkalmazásnaplóba kerül. Ha a napló nem létezik a megadott számítógépen, a rendszer létrehoz egy egyéni naplót, és regisztrálja az alkalmazást az adott naplóhoz Source .
Csak akkor kell eseményforrást létrehoznia, ha az eseménynaplóba ír. Mielőtt bejegyzést ír egy eseménynaplóba, az eseményforrást érvényes eseményforrásként kell regisztrálnia az eseménynaplóban. Naplóbejegyzés írásakor a rendszer a Source megfelelő napló megkeresésére használja a bejegyzés elhelyezéséhez. Ha az eseménynaplót olvassa, megadhatja az , vagy az SourceLog és MachineNamea értéket.
Note
Ha 2003-ban vagy Windows Server Windows Vista vagy újabb verzióiban szeretne eseményforrást létrehozni, rendszergazdai jogosultságokkal kell rendelkeznie.
Ennek a követelménynek az az oka, hogy minden eseménynaplót, beleértve a biztonságot is, keresni kell annak megállapításához, hogy az eseményforrás egyedi-e. A Windows Vista és újabb verziókban a felhasználók nem férhetnek hozzá a biztonsági naplóhoz, ezért a rendszer SecurityException dob.
A Windows Vista és újabb verziókban a felhasználói fiókok felügyelete (UAC) határozza meg a felhasználó jogosultságait. Ha Tagja a Beépített rendszergazdák csoportnak, két futásidejű hozzáférési jogkivonatot kap: egy standard felhasználói hozzáférési jogkivonatot és egy rendszergazdai hozzáférési jogkivonatot. Alapértelmezés szerint a szokásos felhasználói szerepkörben van. A biztonsági naplóhoz hozzáférő kód végrehajtásához először emelnie kell a jogosultságokat a standard felhasználóról a rendszergazdára. Ezt az alkalmazás indításakor megteheti úgy, hogy a jobb gombbal az alkalmazás ikonra kattint, és jelzi, hogy rendszergazdaként szeretne futni.
Események használata WriteEvent és WriteEntry írása egy eseménynaplóba. Események írásához meg kell adnia egy eseményforrást; az első bejegyzés forrással való írása előtt létre kell hoznia és konfigurálnia kell az eseményforrást.
Hozza létre az új eseményforrást az alkalmazás telepítése során. Ez lehetővé teszi, hogy az operációs rendszer frissítse a regisztrált eseményforrások listáját és azok konfigurációját. Ha az operációs rendszer nem frissítette az eseményforrások listáját, és egy eseményt próbál meg írni az új forrással, az írási művelet sikertelen lesz. Új forrást konfigurálhat egy EventLogInstaller, vagy a CreateEventSource metódus használatával. Új eseményforrás létrehozásához rendszergazdai jogosultságokkal kell rendelkeznie a számítógépen.
Létrehozhat egy eseményforrást egy meglévő eseménynaplóhoz vagy egy új eseménynaplóhoz. Amikor új forrást hoz létre egy új eseménynaplóhoz, a rendszer regisztrálja a napló forrását, de a napló csak az első bejegyzés megírásáig jön létre.
Az operációs rendszer fájlként tárolja az eseménynaplókat. Amikor új eseménynaplót használ EventLogInstaller vagy CreateEventSource hoz létre, a társított fájlt a rendszer a megadott számítógépen található %SystemRoot%\System32\Config könyvtárban tárolja. A fájlnév úgy van beállítva, hogy hozzáfűzi a Log tulajdonság első 8 karakterét az ".evt" fájlnévkiterjesztéshez.
A forrásnak egyedinek kell lennie a helyi számítógépen; az új forrásnév nem egyezhet meg egy meglévő forrásnévvel vagy egy meglévő eseménynapló-névvel. Minden forrás egyszerre csak egy eseménynaplóba tud írni; az alkalmazás azonban több forrásból is írhat több eseménynaplóba. Előfordulhat például, hogy az alkalmazás több, különböző eseménynaplókhoz vagy különböző erőforrásfájlokhoz konfigurált forrást igényel.
A forrást honosított bejegyzések írására vagy közvetlen sztringek írására kell konfigurálni. Ha az alkalmazás erőforrás-azonosítók és sztringértékek használatával is ír bejegyzéseket, két különálló forrást kell regisztrálnia. Konfiguráljon például egy forrást erőforrásfájlokkal, majd használja ezt a forrást a WriteEvent metódusban bejegyzések írásához erőforrás-azonosítók használatával az eseménynaplóba. Ezután hozzon létre egy másik forrást erőforrásfájlok nélkül, és használja ezt a forrást a WriteEntry metódusban, hogy sztringeket írjon közvetlenül az eseménynaplóba ezzel a forrással.
Egy meglévő forrás konfigurációs adatainak módosításához törölnie kell a forrást, majd létre kell hoznia az új konfigurációval. Ha más alkalmazások vagy összetevők a meglévő forrást használják, a meglévő forrás törlése helyett hozzon létre egy új forrást a frissített konfigurációval.
Note
Ha egy forrás már le van képezve egy naplóra, és újraképezi egy új naplóba, újra kell indítania a számítógépet a módosítások érvénybe lépéséhez.