EventLogInstaller.ParameterResourceFile EventLogInstaller.ParameterResourceFile EventLogInstaller.ParameterResourceFile EventLogInstaller.ParameterResourceFile Property

Definizione

Ottiene o imposta il percorso del file di risorse che contiene le stringhe dei parametri di messaggio per l'origine.Gets or sets the path of the resource file that contains message parameter strings for the source.

public:
 property System::String ^ ParameterResourceFile { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.StringValueConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
[System.Runtime.InteropServices.ComVisible(false)]
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.StringValueConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string ParameterResourceFile { get; set; }
member this.ParameterResourceFile : string with get, set
Public Property ParameterResourceFile As String

Valore della proprietà

Percorso del file di risorse dei parametri del messaggio.The path of the message parameter resource file. Il valore predefinito è una stringa vuota ("").The default is an empty string ("").

Esempi

Nell'esempio di codice seguente vengono impostate le proprietà di installazione per una nuova origine evento.The following code example sets the installation properties for a new event source. Nell'esempio di codice vengono impostati il nome dell'origine evento, il nome del registro eventi e il file di risorse per il testo dell'evento localizzato.The code example sets the event source name, event log name, and resource file for localized event text.

#using <System.dll>
#using <System.Configuration.Install.dll>

using namespace System;
using namespace System::Configuration::Install;
using namespace System::Diagnostics;
using namespace System::ComponentModel;

[RunInstaller(true)]
public ref class SampleEventLogInstaller : public Installer
{
private:
   EventLogInstaller^ myEventLogInstaller;

public:
   SampleEventLogInstaller()
   {
      
      // Create an instance of an EventLogInstaller.
      myEventLogInstaller = gcnew EventLogInstaller;
      
      // Set the source name of the event log.
      myEventLogInstaller->Source = "ApplicationEventSource";
      
      // Set the event log into which the source writes entries.
      //myEventLogInstaller.Log = "MyCustomLog";
      myEventLogInstaller->Log = "myNewLog";
      
      // Set the resource file for the event log.
      // The message strings are defined in EventLogMsgs.mc; the message 
      // identifiers used in the application must match those defined in the
      // corresponding message resource file. The messages must be built
      // into a Win32 resource library and copied to the target path on the
      // system.  
      myEventLogInstaller->CategoryResourceFile =
             Environment::SystemDirectory + "\\eventlogmsgs.dll";
      myEventLogInstaller->CategoryCount = 3;
      myEventLogInstaller->MessageResourceFile =
             Environment::SystemDirectory + "\\eventlogmsgs.dll";
      myEventLogInstaller->ParameterResourceFile =
             Environment::SystemDirectory + "\\eventlogmsgs.dll";

      // Add myEventLogInstaller to the installer collection.
      Installers->Add( myEventLogInstaller );
   }

};

int main()
{
   Console::WriteLine( "Usage: InstallUtil.exe [<install>.exe | <install>.dll]" );
}

using System;
using System.Configuration.Install;
using System.Diagnostics;
using System.ComponentModel;

[RunInstaller(true)]
public class SampleEventLogInstaller : Installer
{
    private EventLogInstaller myEventLogInstaller;

    public SampleEventLogInstaller() 
    {
        // Create an instance of an EventLogInstaller.
        myEventLogInstaller = new EventLogInstaller();

        // Set the source name of the event log.
        myEventLogInstaller.Source = "ApplicationEventSource";

        // Set the event log into which the source writes entries.
        //myEventLogInstaller.Log = "MyCustomLog";
        myEventLogInstaller.Log = "myNewLog";

        // Set the resource file for the event log.
        // The message strings are defined in EventLogMsgs.mc; the message 
        // identifiers used in the application must match those defined in the
        // corresponding message resource file. The messages must be built
        // into a Win32 resource library and copied to the target path on the
        // system.  
            
        myEventLogInstaller.CategoryResourceFile =
             Environment.SystemDirectory + "\\eventlogmsgs.dll";
        myEventLogInstaller.CategoryCount = 3;
        myEventLogInstaller.MessageResourceFile =
             Environment.SystemDirectory + "\\eventlogmsgs.dll";
        myEventLogInstaller.ParameterResourceFile =
             Environment.SystemDirectory + "\\eventlogmsgs.dll";

        // Add myEventLogInstaller to the installer collection.
        Installers.Add(myEventLogInstaller); 
    }

    public static void Main()
    {
        Console.WriteLine("Usage: InstallUtil.exe [<install>.exe | <install>.dll]");
    }
}
   Imports System.Configuration.Install
Imports System.Diagnostics
Imports System.ComponentModel

<RunInstaller(True)>  _
Public Class SampleEventLogInstaller
   Inherits Installer

   Private myEventLogInstaller As EventLogInstaller

   Public Sub New()

      ' Create an instance of an EventLogInstaller.
      myEventLogInstaller = New EventLogInstaller()

      ' Set the source name of the event log.
      myEventLogInstaller.Source = "ApplicationEventSource"

      ' Set the event log into which the source writes entries.
      myEventLogInstaller.Log = "MyCustomLog"

      ' Set the resource file for the event log.
      ' The message strings are defined in EventLogMsgs.mc; the message
      ' identifiers used in the application must match those defined in the
      ' corresponding message resource file. The messages must be built
      ' into a Win32 resource library and copied to the target path on the
      ' system.

      myEventLogInstaller.CategoryResourceFile = _
          Environment.SystemDirectory + "\eventlogmsgs.dll"
      myEventLogInstaller.CategoryCount = 3
      myEventLogInstaller.MessageResourceFile = _
          Environment.SystemDirectory + "\eventlogmsgs.dll"
      myEventLogInstaller.ParameterResourceFile = _
          Environment.SystemDirectory + "\eventlogmsgs.dll"

      ' Add myEventLogInstaller to the installer collection.
      Installers.Add(myEventLogInstaller)

   End Sub 'New

   Public Shared Sub Main()
     Console.WriteLine("Usage: InstallUtil.exe [<install>.exe | <install>.dll]")
   End Sub 'Main
End Class 'MyEventLogInstaller

Nell'esempio di codice viene usato il file di testo del messaggio seguente, integrato nella libreria di risorse EventLogMsgs. dll.The code example uses the following message text file, built into the resource library EventLogMsgs.dll. Un file di testo del messaggio è l'origine da cui viene creato il file di risorse del messaggio.A message text file is the source from which the message resource file is created. Il file di testo del messaggio definisce gli identificatori e il testo delle risorse per la categoria, il messaggio di evento e le stringhe di inserimento dei parametri.The message text file defines the resource identifiers and text for the category, event message, and parameter insertion strings. In particolare, il messaggio definito per l'identificatore di risorsa 1004 utilizza un segnaposto per una stringa di parametro definita per l'identificatore di risorsa 5002.Specifically, the message defined for resource identifier 1004 uses a placeholder for a parameter string defined for resource identifier 5002.

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

Commenti

Utilizzare la ParameterResourceFile proprietà per configurare un'origine del log eventi per la scrittura di messaggi di evento localizzati con stringhe di parametro inserite.Use the ParameterResourceFile property to configure an event log source to write localized event messages with inserted parameter strings. Ogni messaggio di evento localizzato specificato MessageResourceFile nella proprietà può contenere segnaposto per le stringhe di inserimento.Each localized event message specified in the MessageResourceFile property can contain placeholders for insertion strings. Questi segnaposto vengono utilizzati per specificare la posizione e l'identificatore di risorsa per una stringa indipendente dal linguaggio all'interno del messaggio di evento.These placeholders are used to specify the position and resource identifier for a language-independent string within the event message. Il Visualizzatore eventi sostituisce i segnaposto con le stringhe corrispondenti da ParameterResourceFile e formatta il messaggio del registro eventi per la voce di evento localizzata.The Event Viewer replaces the placeholders with the corresponding strings from the ParameterResourceFile and formats the event log message for the localized event entry.

Ad esempio, la sezione seguente di un file di testo del messaggio definisce una stringa con un segnaposto di parametro:For example, the following section of a message text file defines a string with a parameter placeholder:


MessageId = 1501  
Severity = Success  
Facility = Application  
SymbolicName = COMPONENT_STARTING  
Language=English  
Component %%6050 is starting.  
.  

All'interno del file di risorse dei parametri, la stringa di inserimento deve essere definita con l'identificatore di risorsa che corrisponde al segnaposto, come illustrato di seguito:Within the parameter resource file, the insertion string must be defined with the resource identifier that corresponds to the placeholder, as shown below:

MessageId = 6050  
Severity = Success  
Facility = Application  
SymbolicName = COMPONENT_NAME_MSGID  
Language=English  
TRIGGER.EXE  
.  

L'origine evento deve essere configurata per la scrittura di voci localizzate o per la scrittura di stringhe dirette.The event source must be configured either for writing localized entries or for writing direct strings. Utilizzare il WriteEvent metodo per scrivere le voci localizzate per un'origine configurata con un file di risorse del messaggio.Use the WriteEvent method to write localized entries for a source configured with a message resource file.

Se l'applicazione scrive stringhe di messaggi di evento direttamente nel registro eventi o se MessageResourceFile non contiene messaggi con segnaposto di inserimento dei parametri, non impostare la ParameterResourceFile proprietà.If your application writes event message strings directly to the event log, or if your MessageResourceFile does not contain messages with parameter insertion placeholders, do not set the ParameterResourceFile property.

Per informazioni dettagliate sulla definizione dei messaggi di evento e sulla compilazione di file di risorse evento, vedere l'argomento "compilatore di messaggi http://msdn.microsoft.com" nella documentazione di Platform SDK all'indirizzo.For details about defining event messages and building event resource files, see the "Message Compiler" topic in the Platform SDK documentation at http://msdn.microsoft.com.

Si applica a

Vedi anche