返回信息流配置了下log4net,把debug和info的日志路径设为一样,以日期的形式记录。
这样配置会引起错误,开始后console上显示文件被另一进程使用,可以问题是main()函数尚未执行,那么这个错误是从哪跑出来的??
ps:比main更早运行的有其他的函数和事件吗?
这是一条镜像帖。来源:北邮人论坛 / dot-net / #2538同步于 2010/12/1
该镜像源已超过 30 天没有更新,可能在源站已被删除。
dotNET机器人发帖
Log4net比Console的main()更早运行?
wodetiandi
2010/12/1镜像同步12 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
【 在 ahomer 的大作中提到: 】
: debug和info的日志文件名可以改成不一样的,设断点追下 log4net代码
: --
: ╭════╮╭════╮
: ...................
目的不是为了用log4net,这个已经配好了。就是不太懂为什么会有代码比我的main函数更早的运行,用户代码中,main函数不是最早运行的吗(针对桌面应用程序),也不知道log4net里哪个函数这么早运行的,断点都不知设哪。。。。。= =!
debug和info的日志路径设为不一样的话也报错么?
【 在 wodetiandi (啥也不写了~) 的大作中提到: 】
: 配置了下log4net,把debug和info的日志路径设为一样,以日期的形式记录。
: 这样配置会引起错误,开始后console上显示文件被另一进程使用,可以问题是main()函数尚未执行,那么这个错误是从哪跑出来的??
: ps:比main更早运行的有其他的函数和事件吗?
: ...................
【 在 snoopyboy 的大作中提到: 】
: debug和info的日志路径设为不一样的话也报错么?
: 【 在 wodetiandi (啥也不写了~) 的大作中提到: 】
: : 配置了下log4net,把debug和info的日志路径设为一样,以日期的形式记录。
: ...................
不报错,设成一样报错是为了弄清为什么他的代码会比我的main更早执行,尽管不知道该在哪设断点。。。。。
可以贴下代码么?
【 在 wodetiandi (啥也不写了~) 的大作中提到: 】
: 不报错,设成一样报错是为了弄清为什么他的代码会比我的main更早执行,尽管不知道该在哪设断点。。。。。
一个console程序,随便什么内容都行,之后做的改动如下:
using log4net.Repository.Hierarchy; //改动一,加上了这三行,using和attribute
using log4net;//
[assembly: log4net.Config.XmlConfigurator(Watch = true)] //
namespace Monitor
{
class Program
{
static void Main(string[] args)
{
}
}
//改动二,加了个app.config,配置有点多,放在附件中了
然后运行,出现如图错误
问题是,我把断点设在“ static void Main(string[] args)”上面,怎么会在运行main函数前就已经抛出了上图的错误,为什么有代码会比main函数运行的更靠前
附件(1.9KB) App.config
不知lz用了那个版本的log4net,
我用4.0版本的,用vs2010,采用同样的app.config,test了下,没出现ls的错误
[assembly: log4net.Config.XmlConfigurator(Watch = true)] // 这个自定义assembly attribute会产生一些必要的元数据,或许这个在搞怪
【 在 ahomer 的大作中提到: 】
: 不知lz用了那个版本的log4net,
: 我用4.0版本的,用vs2010,采用同样的app.config,test了下,没出现ls的错误
: [assembly: log4net.Config.XmlConfigurator(Watch = true)] // 这个自定义assembly attribute会产生一些必要的元数据,或许这个在搞怪
: ...................
用我的传的那个app.config也没出错?那我这太神奇了。。。。
也许是那个attribute在搞怪,不过attribute不是在编译时就写死的么,运行时莫非会加载什么东东,郁闷~
ps:环境:win7,visual studio 2010 or 2008 ,log4net版本号1.2.10
ps:log4net Last Published: 05/01/2008 ,以后咋就不更新了