EventLog Constructor (String^, String^, String^)


Initializes a new instance of the EventLog class. Associates the instance with a log on the specified computer and creates or assigns the specified source to the EventLog.

Namespace:   System.Diagnostics
Assembly:  System (in System.dll)

	String^ logName,
	String^ machineName,
	String^ source


Type: System::String^

The name of the log on the specified computer

Type: System::String^

The computer on which the log exists.

Type: System::String^

The source of event log entries.

Exception Condition

The log name is null.


The log name is invalid.


The computer name is invalid.

This constructor sets the Log property to the logName parameter, the MachineName property to the machineName parameter, and the Source property to the source parameter. The Source property is required when writing to an event log. However, if you are only reading from an event log, only the Log and MachineName properties are required (as long as the event log on the server has a source already associated with it). If you are only reading from the event log, another overload of the constructor might suffice.

The following table shows initial property values for an instance of EventLog.


Initial Value


The source parameter.


The logName parameter.


The machineName parameter.

The following example writes an entry to an event log, "MyNewLog", on the local computer, using the source "MySource".

#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( "myNewLog",".","MySource" );

   // Write an entry to the log.        
   myLog->WriteEntry( String::Format( "Writing to event log on {0}", myLog->MachineName ) );


for writing the event log information on the computer. Associated enumeration: EventLogPermissionAccess::Write

.NET Framework
Available since 1.1
Return to top