Wince6.0 R2, PPPoE 拨号引起ndis.dll出错, 求解决方法和ndis.dll 动态库源码所在地?

kkkk888   2009-1-12 15:45 楼主
Wince6.0 R2, PPPoE 拨号失败, 数据包时发送出去了.
但是一收到局端返回的应答数据包,ndis.dll 就发生Prefetch Abort 和 data abort 2种异常各一个,然后网络崩溃,网络部分没法使用了. 只能重启设备.

调试输出信息如下:
SMSC LAN91C111 Windows Embedded CE 6.0 (NDIS5.0) Driver V2.1 Build#260204
LAN91C111: MAC Address:02-24-09-01-12-09
LAN91C111:==> Adapter Reset d0830300
        LAN91C111: Packet #0 Allocated
Done getting Registry values:
bpp: 0x20
CxScreen: 0x280
CyScreen: 0x1e0
Display Type: CLAA057VAO1CW
Init CLAA057VAO1CW...
Display Driver Initialization Complete
SA2Video::SA2Video---
LayMgr.cpp: Layout Manager successfully initialized to  1
TouchRegistrySet++
TouchPanelPowerHandler
        LAN91C111: Packet #0 Allocated (这个是网卡发送数据的一个调试信息)
        LAN91C111: Packet #0 Allocated
        LAN91C111: Packet #0 Allocated
        LAN91C111: Packet #0 Allocated
Exception 'Prefetch Abort' (3): Thread-Id=02700002(pth=83db1cfc), Proc-Id=004000
02(pprc=81999308) 'NK.EXE', VM-active=03a6000a(pprc=82dbc288) 'explorer.exe'
PC=00000000(???+0x00000000) RA=c05cb5dc(ndis.dll+0x0000b5dc) SP=d082fdf8, BVA=00
000000
Exception 'Data Abort' (4): Thread-Id=00cc000e(pth=83d831e0), Proc-Id=00400002(p
prc=81999308) 'NK.EXE', VM-active=03a6000a(pprc=82dbc288) 'explorer.exe'
PC=c05cfde4(ndis.dll+0x0000fde4) RA=c05cfd98(ndis.dll+0x0000fd98) SP=d07afe10, B
VA=00000008


从出错的PC位置,定位的出错函数是
1000FDE4, NDIS.DLL, NdisIMInitializeDeviceInstance,

但是没法定位到相应的源码.

大家如何解决这个PPPoe问题,
再求 ndis.dll 对应的源码出 \Wince600 哪个目录下?

谢谢

回复评论 (5)

问题应该不会出在NDIS.dll吧。恐怕你还是要从自己的代码多分析。
点赞  2009-1-14 15:02
wince600 是不是没有带有NDIS部分源码,找不到?
点赞  2009-1-15 08:21
还是多找找自己的问题吧,不要一出问题,就怀疑这个、怀疑那个

如果是系统的问题,在google上search一下,肯定是一大堆人提出这个问题。
点赞  2009-1-15 08:39
这么明显的BUG微软会放出来吗。
估计还是其他问题引起的。
点赞  2009-1-15 12:22
自己已经修改驱动解决,谢谢大家
点赞  2009-2-9 14:28
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复