EventLog.WriteEntry( "SecondSource ", "message", EventLogEntryType.Error,myEventID ,myCategory ); myCategory是short类型,
可是我想让 myCategory (即日志中分类的内容显示字符串)
可是我想让 myCategory (即日志中分类的内容显示字符串)
解决方案 »
- SHP用AE加载到Scene没有显示
- 急救!!请高手指点
- .net类库中有支持数据挖掘的吗?
- 各位朋友,请求大家帮助,请问阿里巴巴这种网站的用什么方法开发出来的,急!
- 如何判断DataSet是否包含内容,还是空的?
- 求助!由于CF下没有RichTextBox不能进行格式化输出text,想继承TextBox重写,可是不知道override哪个方法
- 如何更新DataSet,但不提交到数据库
- 如何禁止关闭窗体
- 谁能提供一个richTextBox控件的例子。我想把超文本保存到数据库。
- 初次接触C++ Builder,关于串口下发十六进制的问题求助各位大佬
- 怎么倒读一个文本文件
- 关于两个线程的交互问题,帮帮忙,谢谢!
与消息关联的应用程序特定子类别。 请查看windows API宝典获得
myCategory.ToString();
而且这种方法并不建议使用,这会将你系统的日志写满吧?呵呵。
建议使用Trace.
例:
Trace.Listeners.Remove("Default");
Trace.Listeners.Add(new System.Diagnostics.TextWriterTraceListener("trace.log"));
这样,在程序中的任何地方,使用的Trace.Write或Trace.WriteLine都能很好地记录日志。
而且还是线程安全的。
缺省的Listener是写到控制台的。
还有一种Listener是写到系统日志的。
无论你加多少个Listener,你在Trace中调用一次,所以的Listener指向的地方都会记录日志。这个特性才叫爽呢。
事实上我还可以自己编写写入数据库的Lisenter,注意写入数据库的,然后在主程序入口处注册一下,就搞定了。呵呵。
强烈建议使用功能强大的Trace类。
事实上,Trace还可以app.config或者web.config中配置。
那样的话,你修改主程序的麻烦都省却了。
<configuration>
<system.diagnostics>
<switches>
<add name="MagicTraceSwitch" value="3" />
</switches>
<trace autoflush="false" indentsize="4">
<listeners>
<add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="c:\myListener.log" />
<!-- You must supply a valid fully qualified assembly name here. -->
<remove type="Assembly text name, Version, Culture, PublicKeyToken"/>
</listeners>
</trace>
</system.diagnostics>
</configuration>可以利用的Listener类有:
System.Object
System.MarshalByRefObject
System.Diagnostics.TraceListener
System.Diagnostics.DefaultTraceListener
System.Diagnostics.EventLogTraceListener
System.Diagnostics.TextWriterTraceListener