很简单,我想写一些事情日志.
protected override void OnStop() { // TODO: Add code here to perform any tear-down necessary to stop your service. if (!System.Diagnostics.EventLog.SourceExists("IvrService")) { System.Diagnostics.EventLog.CreateEventSource( "IvrService","IvrServiceLog"); } EventLog eventLog1 = new System.Diagnostics.EventLog(); eventLog1.Source = "IvrService"; eventLog1.Log = "IvrServiceLog"; try { eventLog1.WriteEntry("Successfully "+State.Stopped.ToString()); IvrApplication.StopImmediate(); } catch (Exception ex) { // eventLog1.WriteEntry(ex.Message); } }
例外是:
Failed to stop service. System.ArgumentException: The source 'IvrService' is not registered in log 'IvrServiceLog'. (It is registered in log 'Application'.) " The Source and Log properties must be matched,or you may set Log to the empty string,and it will automatically be matched to the Source property. at System.Diagnostics.EventLogInternal.VerifyAndCreateSource(String sourceName,String currentMachineName) at System.Diagnostics.EventLogInternal.WriteEntry(String message,EventLogEntryType type,Int32 eventID,Int16 category,Byte[] rawData) at System.Diagnostics.EventLog.WriteEntry(String message)