しばらく前に作成したアプリケーションで、非常に奇妙な問題が発生しています。問題なく動いていたのですが、しばらく放置したら動かなくなりました。ここにコードを添付します。
try
{
using (Process proc = Process.Start(starter))
{
windowHider();
proc.WaitForExit();
DateTime endStamp = DateTime.Now;
endStamp = truncate(endStamp);
TimeSpan diff = endStamp.Subtract(startStamp);
string programSource = "applicationName";
string logLocation = "Application";
string occurance = "Var='" + varName + "' Var2='"+ var2Name + "' Var3='" + var3Name + "' Var4='" + var4Name + "' Var5='" + var5Name + "' Var6='" + var6Name + "'";
try
{
if (!EventLog.SourceExists(programSource))
{
EventLog.CreateEventSource(programSource, logLocation);
}
else
{
EventLog.WriteEntry(programSource, occurance);
}
}
catch (Exception err)
{
string message = "There was an error with usage logging. Please contact IT.";
MessageBox.Show(message);
errorLogger(message, err.ToString(), ((Control)sender).Name);
this.Close();
}
this.Close();
}
}
開始されたプロセスが終了すると、プログラムはアプリケーション ログに書き込みます。ただし、何らかの理由で、次のエラーが発生します。
例外: System.ComponentModel.Win32Exception (0x80004005): 指定されたパスが無効です
原因として次の行を挙げています。
EventLog.WriteEntry(programSource, occurance);
この突然の問題が何であるかについてのアイデアはありますか?