monkeyy
驱动中牛
驱动中牛
  • 注册日期2001-12-06
  • 最后登录2010-10-10
  • 粉丝0
  • 关注0
  • 积分315分
  • 威望84点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
阅读:1447回复:11

mikeluo,fracker,GJP你们上哪儿去了???

楼主#
更多 发布于:2003-04-13 10:04
你们可是NDIS的元老级人物啊,小弟要请你们帮忙了。怎么全跑不见了,难道都去度蜜月去了??????不会是你们三吧!哈哈哈哈!

三位老大,我确实是没有办法了?

帮我去看看我发的帖子,“胡老大,胡大侠。有事情请教了,小弟实在是百思不得其解! ”

谢谢了!
不过不好意思,我没有多少可以给的分了。呵呵,就将就吧,我有分了一定补上!
听说老虎会吃人,所以从没想过去摸老虎的屁股。:( :(
monkeyy
驱动中牛
驱动中牛
  • 注册日期2001-12-06
  • 最后登录2010-10-10
  • 粉丝0
  • 关注0
  • 积分315分
  • 威望84点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-04-16 10:17
终于上来了。
三位有时间替我看看啊!
我的IMD初始化没有任何的问题,可是就是截不到包!
在WinCE3.0下,我没有开发板,又没法调试。
不知道哪儿错了,也无法查清流程情况。

郁闷死了!

 :( :( :(
听说老虎会吃人,所以从没想过去摸老虎的屁股。:( :(
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
板凳#
发布于:2003-04-16 13:38
不好意思,你问的东西太高深,我没有玩过:(
mikeluo
驱动老牛
驱动老牛
  • 注册日期2001-09-04
  • 最后登录2007-05-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-04-16 14:03
至今没有见过win CE的模样,不敢乱说
学而不思则罔,思而不学则殆 学而思之,思而学之,岂非圣人乎?
monkeyy
驱动中牛
驱动中牛
  • 注册日期2001-12-06
  • 最后登录2010-10-10
  • 粉丝0
  • 关注0
  • 积分315分
  • 威望84点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-04-16 15:09
好啊,推卸责任!呵呵。

其实我就是想证实
1)是否到了这个时候,我们的IMD的初始化工作已经成功的结束了。还是这个过程并不能说明我们的绑定是成功的?
2)NDIS在考虑绑定关系的时候什么时候读的注册表,你们在PC机上见到的IMD的绑定在注册表中是什么样子的?其实对于PC我一直在仅仅是停留在passthru的水平,没有考虑到这么多东西。
3)帮我猜猜为什么NE2000这个网卡NDIS没有为它调用我的ProtocolBindAdapter(),就是猜猜而已,合理就可以了!

现在主要是IMD被装上之后就和模拟器要么失去了联系,要么就是看到初始化成功结果就是拿不到包。失去了联系之后模拟器所作的一切工作我都不知道,我甚至不知道他是否对我的IMD提出了因侵害主权的严重抗议。


郁闷!!


fracker!什么时候有时间?我白天不能上QQ,只有晚上才行。
给点建议吧,我觉得仍然是NDIS的问题,和CE的内核机制无关。现在只有要么去猜猜怎么回事,要么就等待做过的人来告诉我了。

关键没法调试啊,这不是扯吗!!!!!!!!!!



 :( :( :( :( :( :( :( :( :( :(
听说老虎会吃人,所以从没想过去摸老虎的屁股。:( :(
monkeyy
驱动中牛
驱动中牛
  • 注册日期2001-12-06
  • 最后登录2010-10-10
  • 粉丝0
  • 关注0
  • 积分315分
  • 威望84点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-04-16 15:19
本来开始打算用HOOK做的,结果发现,均不行了在Pocket PC2002下面,只有来啃IMD了.可是现在才发现这个太硬了,有点吃不消的感觉!!

郁闷啊!!!!!!!!!!!!!!!
听说老虎会吃人,所以从没想过去摸老虎的屁股。:( :(
mikeluo
驱动老牛
驱动老牛
  • 注册日期2001-09-04
  • 最后登录2007-05-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-04-16 15:27
有点怀疑安装和binding是否正确。

你是如何在注册表里面指定binding的?
学而不思则罔,思而不学则殆 学而思之,思而学之,岂非圣人乎?
monkeyy
驱动中牛
驱动中牛
  • 注册日期2001-12-06
  • 最后登录2010-10-10
  • 粉丝0
  • 关注0
  • 积分315分
  • 威望84点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-04-16 15:37
英雄所见略同!我也这样认为的!呵呵!
我的绑定是通过:
在NE2000中加入:
ProtocolsToBindTo = NdisIMD
然后在TCPIP下面:
Bind  NdisIMD1


等一下,我全帖出来!!
听说老虎会吃人,所以从没想过去摸老虎的屁股。:( :(
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
8楼#
发布于:2003-04-16 15:41
好啊,推卸责任!呵呵。

其实我就是想证实
1)是否到了这个时候,我们的IMD的初始化工作已经成功的结束了。还是这个过程并不能说明我们的绑定是成功的?
2)NDIS在考虑绑定关系的时候什么时候读的注册表,你们在PC机上见到的IMD的绑定在注册表中是什么样子的?其实对于PC我一直在仅仅是停留在passthru的水平,没有考虑到这么多东西。
3)帮我猜猜为什么NE2000这个网卡NDIS没有为它调用我的ProtocolBindAdapter(),就是猜猜而已,合理就可以了!

现在主要是IMD被装上之后就和模拟器要么失去了联系,要么就是看到初始化成功结果就是拿不到包。失去了联系之后模拟器所作的一切工作我都不知道,我甚至不知道他是否对我的IMD提出了因侵害主权的严重抗议。


郁闷!!


fracker!什么时候有时间?我白天不能上QQ,只有晚上才行。
给点建议吧,我觉得仍然是NDIS的问题,和CE的内核机制无关。现在只有要么去猜猜怎么回事,要么就等待做过的人来告诉我了。

关键没法调试啊,这不是扯吗!!!!!!!!!!



 :( :( :( :( :( :( :( :( :( :(

兄弟,不是推卸责任阿,俺的主要工作不是写驱动阿,而且IMD俺也不熟悉。
monkeyy
驱动中牛
驱动中牛
  • 注册日期2001-12-06
  • 最后登录2010-10-10
  • 粉丝0
  • 关注0
  • 积分315分
  • 威望84点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-04-16 15:44
绑定关系如下:
HKEY_LOCAL_MACHINE\\Comm\\NdisIMD
   (TEXT(\"NoDeviceCreate\")),   REG_DWORD,  (PBYTE)1,
   (TEXT(\"ImagePath\")),        REG_SZ,    (PBYTE)(TEXT(\"ndisimd.dll\")),
   (TEXT(\"Group\")),            REG_SZ,    (PBYTE)(TEXT(\"NDIS\")),
   (TEXT(\"DisplayName\")),      REG_SZ,    (PBYTE)(TEXT(\"WinCE3.0 NDIS IMD\")),

HKEY_LOCAL_MACHINE\\Comm\\NdisIMD\\Linkage
   (TEXT(\"Route\")), REG_MULTI_SZ, (PBYTE)(TEXT(\"NdisIMD1\"))
 

HKEY_LOCAL_MACHINE\\Comm\\NdisIMD1
   (TEXT(\"ImagePath\")),        REG_SZ,    (PBYTE)(TEXT(\"ndisimd.dll\")),
   (TEXT(\"Group\")),            REG_SZ,    (PBYTE)(TEXT(\"NDIS\")),
   (TEXT(\"DisplayName\")),      REG_SZ,    (PBYTE)(TEXT(\"WinCE3.0 NDIS IMD\")),
 
HKEY_LOCAL_MACHINE\\Comm\\NdisIMD1\\Parms
 (TEXT(\"ProtocolsToBindTo\")),  REG_MULTI_SZ,    (PBYTE)(TEXT(\"Tcpip\")),
   (TEXT(\"BusType\")),            REG_DWORD,       (PBYTE)0,
   (TEXT(\"BusNumber\")),          REG_DWORD,       (PBYTE)0,


HKEY_LOCAL_MACHINE\\Comm\\NE20001\\Parms
   (TEXT(\"ProtocolsToBindTo\")),  REG_MULTI_SZ,    (PBYTE)(TEXT(\"NdisIMD\")),
 
HKEY_LOCAL_MACHINE\\Comm\\NE20001\\Parms\\NdisIMD
   (TEXT(\"UpperBindings\")),    REG_MULTI_SZ,    (PBYTE)(TEXT(\"NdisIMD1\\0\")),
 
听说老虎会吃人,所以从没想过去摸老虎的屁股。:( :(
monkeyy
驱动中牛
驱动中牛
  • 注册日期2001-12-06
  • 最后登录2010-10-10
  • 粉丝0
  • 关注0
  • 积分315分
  • 威望84点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-04-16 15:52
[quote]好啊,推卸责任!呵呵。

其实我就是想证实
1)是否到了这个时候,我们的IMD的初始化工作已经成功的结束了。还是这个过程并不能说明我们的绑定是成功的?
2)NDIS在考虑绑定关系的时候什么时候读的注册表,你们在PC机上见到的IMD的绑定在注册表中是什么样子的?其实对于PC我一直在仅仅是停留在passthru的水平,没有考虑到这么多东西。
3)帮我猜猜为什么NE2000这个网卡NDIS没有为它调用我的ProtocolBindAdapter(),就是猜猜而已,合理就可以了!

现在主要是IMD被装上之后就和模拟器要么失去了联系,要么就是看到初始化成功结果就是拿不到包。失去了联系之后模拟器所作的一切工作我都不知道,我甚至不知道他是否对我的IMD提出了因侵害主权的严重抗议。


郁闷!!


fracker!什么时候有时间?我白天不能上QQ,只有晚上才行。
给点建议吧,我觉得仍然是NDIS的问题,和CE的内核机制无关。现在只有要么去猜猜怎么回事,要么就等待做过的人来告诉我了。

关键没法调试啊,这不是扯吗!!!!!!!!!!



 :( :( :( :( :( :( :( :( :( :(

兄弟,不是推卸责任阿,俺的主要工作不是写驱动阿,而且IMD俺也不熟悉。 [/quote]



呵呵,这好几天我都郁闷死了。没法调试,我都不知道那些程序大爷们是在打仗还是在友好的合作,你说郁闷不郁闷呀。

对了,你哪天在的时候我不在。我只是晚上才上一会QQ,很久没跟你联系过了。怎么样?还可以吧。

哪天胡老大他说他很郁闷,并且是非常的郁闷。不知道怎么哪?
他说你会告诉我的,说说吧,如果这不方便的话,给我发到QQ吧!

呵呵,我实在是郁闷有加啊!

好运!
听说老虎会吃人,所以从没想过去摸老虎的屁股。:( :(
monkeyy
驱动中牛
驱动中牛
  • 注册日期2001-12-06
  • 最后登录2010-10-10
  • 粉丝0
  • 关注0
  • 积分315分
  • 威望84点
  • 贡献值0点
  • 好评度32点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-04-16 17:29
mikeluo、fracker!
请讨论一下IMD的初始化过程。

我的理解是,在初始化的时候系统根本不管什么小端口还是协议端,只知道把IMD当作一个小端口来加载,这个由于注册了小端口和协议层,所以在真实网卡初始化结束的时候,NDIS调用IMD中的ProtocolBindAdapter()来把我们的协议绑定到真实网卡,在IMD中的协议与真实网卡绑定成功完成后,我们ProtocolBindAdapter()中调用NdisIMIntializeInstance()来初始化IMD的Miniport实例,这个实际就是在WDM中所提到的设备对象,我们只有一个Miniport,但是有很多设备对象,每个设备对象对应一个真实的网卡,由于使用驱动实质使用的设备对象,而不是驱动本身。所以上层的真实协议使用我们的Miniport实质是使用我们Miniport driver的设备对象,所以在Protocol看来我们并没有改变系统原有的网卡数目。在为每个真实网卡建立设备对象的时候,我们会使用真实网卡的信息来初始化我们的设备对象,所以每个设备对象有和真实网卡一样的特征。

这是我根据初始化过程跟踪的结果,请指正!
在这里就没有读注册表的事情,所以我不知道注册表中关于绑定的选项在什么时候被使用的!

如果两位老大有时间,请两位帮我跟踪一下好吗??



谢谢了!

我觉得我的问题是没有搞清楚这个绑定问题!

听说老虎会吃人,所以从没想过去摸老虎的屁股。:( :(
游客

返回顶部