ndisprot代码中的调试信息问题

 ndisprot是ddk提供的关于ndis协议驱动的源代码例程。

 

 在看的过程中,发现其中用了一个宏:DBG, 这么宏让我晕了好长时间。

 

代码中有这样一段:

 

 

而在调试中在DbgView中始终看不见通过DEBUGP宏打出来的调试信息,开始以为是DBG出了问题,于是就将其定义在程序开始,并给赋值为1,但报错,又将其去掉,把DBG的值打出来一看,其值为1。先是晕了一下,然后想看看它是如何赋值的,分别用check和free两种方式打出其值,发现在check版本下其值为1,在free版本下其值为0.

 

那现在打不出调试信息显然不是这儿的问题了,再往下看,lev..警告级别,问题出在这儿,将DebugLevel改成定义的最高级别DL_EXTRA_LOUD,成功打出了调试信息。

 

从这个过程中另外学到的几点常识:

1.DbgPrint无论是在chk还是在fre中均打出调试信息,据说Kdprint在fre中不打出调试信息。

2.宏DBG在chk下值为1,在fre下为0,在实际中可巧妙应用

 

另外意外发现,在杀毒黑软件安博士V3中,DbgView可以看到许多调试信息,有兴趣的可以研究下....

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值