我在我的应用程序中使用TextWriterTraceListener
,如果文件不可用于写入跟踪,它会创建另一个带有GUID前缀的跟踪文件。从TextWriterTraceListener获取跟踪文件名?
所有我感兴趣的是获取跟踪文件的名称。在正常情况下,我知道文件名是什么,但是当TextWriterTraceListener
作为GUID的前缀时,我如何预测/获取跟踪文件名?
我在我的应用程序中使用TextWriterTraceListener
,如果文件不可用于写入跟踪,它会创建另一个带有GUID前缀的跟踪文件。从TextWriterTraceListener获取跟踪文件名?
所有我感兴趣的是获取跟踪文件的名称。在正常情况下,我知道文件名是什么,但是当TextWriterTraceListener
作为GUID的前缀时,我如何预测/获取跟踪文件名?
TextWriterTraceListener
有一个Name
财产,是不是你在找什么?
编辑
我试图访问你需要的信息,但没有成功,主要是因为包含在app.config信息的SystemDiagnosticsSection
类是不可访问。我认为你唯一的机会是解析app.config的XML或使用反射来访问对象的某些内部字段(我不推荐)。
我认为TextWriterTraceListener有一个名为fileName的私有方法。我使用调试器的立即窗口来测试以下内容:
l.Name;
"textFileListener"
l.fileName;
"C:\\Tools\\Support\\PatchInstaller\\bin\\Debug\\trace.txt"
我找不到访问私有方法fileName的方法。我尝试从TextWriterTraceListener继承,但看不到该方法。目前唯一的方法是使用调试器。
没有!这是Trace的一种标识符。更具体地说,我正在寻找'initializeData'(参考:http://msdn.microsoft.com/en-us/library/d1ckdta4(v=VS.90).aspx) – 2011-06-03 11:17:08