我有两个进程A和B.与Windows的多线程交互EventLog
进程A继续每5秒写入一次EventLogEntry。
进程B应该侦听EventLog对象上的EntryWritten事件,并尽快在屏幕上报告已写入条目。
如何创建应始终运行直到手动关闭的进程B.(exe)。
请参见下面的代码片段:
class Observer
{
static void Main(string[] args)
{
EventLog log = new EventLog("logname", "MyMachine", "source");
log.EntryWritten += new EntryWrittenEventHandler(log_EntryWritten);
log.EnableRaisingEvents = true;
// The thread shouldn't exit here but wait till the event is received
// When received, should call the handler
// and then again keep waiting for next event.
}
static void log_EntryWritten(object sender, EntryWrittenEventArgs e)
{
if (e.Entry.Source == "source")
{
Console.WriteLine("Message " + e.Entry.Message);
Console.WriteLine("InstanceId " + e.Entry.InstanceId);
Console.WriteLine("Source " + e.Entry.Source);
Console.WriteLine("TimeWritten " + e.Entry.TimeWritten);
Console.ReadLine();
Console.WriteLine("\n");
}
}
}
如何能不能做到?
谢谢。