私はWindowsサービスアプリケーションにカスタムイベントログを作成するには、次のコードを使用しています:私はそれを開始し、その後、立ち止まっサービスを始めたとき、service.msiをインストールした後イベントログに書き込み中にエラーが発生すると、Windowsサービスが開始されません。
public ServiceConstructor()
{
InitializeComponent();
if (!EventLog.SourceExists("WinService"))
{
EventLog.CreateEventSource("WinService", "WinServiceLog");
eventLog1.Source = "WinService";
eventLog1.Log = "WinServiceLog";
}
}
protected override void OnStart(string[] args)
{
eventLog1.WriteEntry("Started");
}
。その後、私はEventViewerウィンドウのログセクションで次のエラーが見つかりました:
サービスを開始できません。 System.ArgumentException:ソースプロパティーがイベントログに を書き込む前に設定されていませんでした。
at System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData) at System.Diagnostics.EventLog.WriteEntry(String message) at WinService.Service.OnStart(String[] args) at System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(Object state)