Dieser Artikel wurde manuell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen.
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

EventLog.RegisterDisplayName-Methode

Gibt den lokalisierten Namen des Ereignisprotokolls an, der in der Ereignisanzeige des Servers angezeigt wird.

Namespace:  System.Diagnostics
Assembly:  System (in System.dll)
[ComVisibleAttribute(false)]
public void RegisterDisplayName(
	string resourceFile,
	long resourceId
)

Parameter

resourceFile
Typ: System.String
Der vollständig angegebene Pfad einer lokalisierten Ressourcendatei.
resourceId
Typ: System.Int64
Der Ressourcenbezeichner, der eine lokalisierte Zeichenfolge in der Ressourcendatei indiziert.
Ausnahme Bedingung
InvalidOperationException

Der Log-Wert ist kein gültiger Protokollname.

- oder -

Der Registrierungsschlüssel für das Ereignisprotokoll konnte auf dem Zielcomputer nicht geöffnet werden.

ArgumentNullException

resourceFile ist null.

Mit RegisterDisplayName können Sie einen lokalisierten Namen für benutzerdefinierte Ereignisprotokolle registrieren und in der Ereignisanzeige anzeigen.

Der angegebene Ressourcenbezeichner muss einer in der Ressourcendatei definierten lokalisierten Zeichenfolge entsprechen. In der Ereignisanzeige wird der Name des benutzerdefinierten Ereignisprotokolls mit der lokalisierten Zeichenfolge und den aktuellen Kultureinstellungen angezeigt. In der Ressourcendatei können Sie beispielsweise mehrere für unterschiedliche Kulturen lokalisierte Ereignisprotokollnamen definieren. In der Ereignisanzeige wird die lokalisierte Zeichenfolge angezeigt, die den Kultureinstellungen für den aktuellen Benutzer entspricht.

Wenn die Ereignisanzeige die lokalisierte Zeichenfolge nicht aus der Ressourcendatei laden kann oder wenn kein Anzeigename für das Ereignisprotokoll registriert wurde, zeigt die Ereignisanzeige den in Log definierten Ereignisprotokollnamen an.

Hinweis Hinweis

Für die vordefinierten Ereignisprotokolle müssen Sie keinen Anzeigenamen registrieren. Das Betriebssystem registriert die lokalisierten Anzeigenamen für das Anwendungs-, System- und Sicherheitsprotokoll.

Im folgenden Beispiel wird bestimmt, ob die Ereignisquelle SampleApplicationSource auf dem lokalen Computer registriert ist. Wenn die Ereignisquelle nicht vorhanden ist, wird im Beispiel die Nachrichtenressourcendatei für die Quelle festgelegt und eine neue Ereignisquelle erstellt. Abschließend wird im Beispiel der lokalisierte Anzeigenamen für das Ereignisprotokoll mithilfe des URI-Werts in DisplayNameMsgId und des Ressourcendateipfades in messageFile festgelegt.


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);
    }
}


Im Beispiel wird die folgende Meldungstextdatei verwendet, die in der Ressourcenbibliothek EventLogMsgs.dll integriert ist. Eine Meldungstextdatei bildet die Quelle für die Erstellung einer Meldungsressourcendatei. In der Meldungstextdatei sind die Ressourcenbezeichner und der Text für die Kategorie, die Ereignismeldung und die Parametereinfügungs-Zeichenfolgen definiert. Insbesondere wird der Ressourcenbezeichner 5001 für den lokalisierten Namen des Ereignisprotokolls definiert.

; // 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
.

.NET Framework

Unterstützt in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 oder höher, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core wird nicht unterstützt), Windows Server 2008 R2 (Server Core wird mit SP1 oder höher unterstützt), Windows Server 2003 SP2

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)
Community-Inhalt Hinzufügen
Anmerkungen FAQ
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?