silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2257回复:20

to njtuyjt

楼主#
更多 发布于:2002-10-28 10:29
谁有nddk和早期的mdsn啊?听说这下面有ndis2的网卡驱动程序的例子代码,快拯救我于水深火热之中吧,在此先谢过了!!!

[编辑 -  11/4/02 by  silan]

[编辑 -  11/14/02 by  silan]
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
minsoft
驱动小牛
驱动小牛
  • 注册日期2001-07-30
  • 最后登录2007-03-06
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-10-28 14:14
你看好了,NE2000的SOURCE,来自DDK。
附件名称/大小 下载次数 最后更新
2002-10-28_ne2000.zip (49KB)  4
少了e,就少了全部
magicx
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2014-08-18
  • 粉丝1
  • 关注0
  • 积分-14分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-10-28 15:33
你看好了,NE2000的SOURCE,来自DDK。


是说ndis2。
[color=red]大头鬼! :P[/color]
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-10-29 14:04
对,我要的是for ndis2的网卡驱动程序的例子代码,不是指98和2000下的驱动
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-10-31 21:12
唉,估计是送分不出去了,毕竟这东西太古老了,我发誓以后不做DOS下的网络开发了。
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
njtuyjt
驱动牛犊
驱动牛犊
  • 注册日期2002-10-30
  • 最后登录2002-11-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-11-01 16:46
唉,估计是送分不出去了,毕竟这东西太古老了,我发誓以后不做DOS下的网络开发了。

同感,我也快倒下了。看来,这样开发的确有难度,我还以为只有我碰到了,没想到你也碰到了。赶紧做玩吧,完了就好了。
一天到晚游荡的牛呀!满地走。 一天到晚杀牛的人呐!到处有。 我们喊:杀牛!杀牛!好可爱的牛呀! 母牛之王来啦!,我走先。
njtuyjt
驱动牛犊
驱动牛犊
  • 注册日期2002-10-30
  • 最后登录2002-11-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-11-01 16:54
唉,估计是送分不出去了,毕竟这东西太古老了,我发誓以后不做DOS下的网络开发了。

对了,问你一句,你的驱动程序也是*.dos格式的吧?我不太理解这种格式的文件是如何执行的,不可以做一个*.exe的文件么?
一天到晚游荡的牛呀!满地走。 一天到晚杀牛的人呐!到处有。 我们喊:杀牛!杀牛!好可爱的牛呀! 母牛之王来啦!,我走先。
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-11-02 16:09
文件后缀名不重要,如果你要做成可执行文件,那就不能和网络组件接口,所以如果你要写ndis2的网卡驱动,你就必须写驱动程序,而这个驱动程序编译连接后后缀名也是.exe,你把它改成.dos就行了。我找不到例子代码,手头上只有一份协议,调试出了问题(绑定问题),已经困了我好久,我快崩溃了,唉!!!
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
njtuyjt
驱动牛犊
驱动牛犊
  • 注册日期2002-10-30
  • 最后登录2002-11-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-11-03 13:54
如果你要做成可执行文件,那就不能和网络组件接口

问一句,我的应用程序在和网卡驱动rtsnd.dos动态绑定的时候会出问题,调用protocol manger 的其他接口没问题,但在BindAndStart的时候总出错,出错码是ffff,但general_failure应该是00ff才对。不知道是不是因为我错误的理解了动态绑定的含义。
在我的模块向PM(Protocol Manger)注册之后,调用BindAndStart接口函数时,PM会调用我的InitiateBind接口函数是吧。这个函数的作用不就是返回指向要绑定模块(MAC)的CCT的指针么,我的函数简单处理了一下,然后返回,代码如下,可是为什么总有问题。
_COMMTABLE * far pascal InitiateBind(char far *Param1,char far *Param2,unsigned int Param3,unsigned int Opcode,unsigned int TargetDS)
{
printf(\"the call used by Protocol Manger to do InitiateBind\\n\");
return (_COMMTABLE *)Param2;
}
其中,_COMMTABLE是我自定义的CCT的结构,函数的参数应当是由PM来压入堆栈,所以用far pascal模式调用。
一天到晚游荡的牛呀!满地走。 一天到晚杀牛的人呐!到处有。 我们喊:杀牛!杀牛!好可爱的牛呀! 母牛之王来啦!,我走先。
njtuyjt
驱动牛犊
驱动牛犊
  • 注册日期2002-10-30
  • 最后登录2002-11-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-11-03 15:28
给你一个典型的autoexec.bat。至于问题还得你来找,我也是个初哥,呵呵。
@echo off
\\DOS\\mscdex.exe /d:mscd000 /k
\\DOS\\smartdrv.exe
\\DOS\\DOSKEY
path C:\\MSCLIENT;c:\\;c:\\DOS;a:\\;a:\\DOS
set dircmd=/o:gne
C:\\NET\\net initialize
C:\\NET\\nwlink
C:\\NET\\netbind.com
C:\\NET\\umb.com
C:\\NET\\tcptsr.exe
C:\\NET\\tinyrfc.exe
C:\\NET\\nmtsr.exe
C:\\NET\\emsbfr.exe
C:\\NET\\net start

一天到晚游荡的牛呀!满地走。 一天到晚杀牛的人呐!到处有。 我们喊:杀牛!杀牛!好可爱的牛呀! 母牛之王来啦!,我走先。
seven
驱动小牛
驱动小牛
  • 注册日期2001-04-03
  • 最后登录2007-03-28
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2002-11-03 16:22
dddddd
我爱中医:http://www.ngotcm.com/forum/index.php
seven
驱动小牛
驱动小牛
  • 注册日期2001-04-03
  • 最后登录2007-03-28
  • 粉丝0
  • 关注0
  • 积分80分
  • 威望8点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2002-11-03 16:23
我有的。不知道怎么发给你呀。
不知道什么原因,上次发的变成了DDDD
我爱中医:http://www.ngotcm.com/forum/index.php
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2002-11-04 09:02
能以附件的形式发到我的信箱吗?太感谢了。email:zhangba@cmmail.com
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2002-11-04 09:07
to njtuyjt:你给的.bat是安装网络后就产生的呀,我也有。你在你的InitiateBind中要根据给你的CCT,调用MAC的Bind接口,把你的CCT传给它。
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2002-11-04 10:42
to njtuyjt:还有你的返回值,好像应该是0:SUCCESS之类的东西,而不是_COMMTABLE * ,指针在程序中可以直接赋值返回嘛。我只是凭感觉,不知道你写的是不是一个上层的driver。
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2002-11-04 14:34
20分太少,我再加100分。
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
njtuyjt
驱动牛犊
驱动牛犊
  • 注册日期2002-10-30
  • 最后登录2002-11-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2002-11-04 14:43
是的,我做的是上层模块,直接用MAC驱动模块。
to silan:你在前面提到“在你的InitiateBind中要根据给你的CCT,调用MAC的Bind接口,把你的CCT传给它。”那么我的协议模块的InitiateBind函数还应当根据返回的MAC的CCT调用MAC的Bind接口是吧。可是我这么做了,还是有问题,按理说我的InitiateBind函数中要显示的信息应该在,可是没有迹象说明PM调用了我的InitiateBind函数,而InitiateBind函数又返回了一个错误代码,这不太合理。
一天到晚游荡的牛呀!满地走。 一天到晚杀牛的人呐!到处有。 我们喊:杀牛!杀牛!好可爱的牛呀! 母牛之王来啦!,我走先。
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2002-11-08 09:14
你是不是要绑定到MAC driver,在你的初始化部分是不是要进行如下操作:
1.打开PROTMAN$;
2.调用PROTMAN的GetProtocolManagerInfo,得到protocol.ini中的信息;
3.调用ProtMan的RegisterModule接口。
之后,ProtMan会自动调用你的InitiateBind接口。如果没调用RegisterModule,ProtMan怎么会知道你的存在呢?我也是瞎说!!!
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
silan
驱动小牛
驱动小牛
  • 注册日期2002-02-04
  • 最后登录2004-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2002-11-14 09:28
njtuyjt,问题解决调了吗?
/***************************/ 认认真真学好三个代表,踏踏实实做好无产阶级接班人。 /***************************/
njtuyjt
驱动牛犊
驱动牛犊
  • 注册日期2002-10-30
  • 最后登录2002-11-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2002-11-20 16:19
没有呀,在做不出来老板要开我了。我的就差最后一步bind了,不知道为什么没法完成绑定。真是呕气死了。:(
PS:我给你发了封信详细描述请查收
一天到晚游荡的牛呀!满地走。 一天到晚杀牛的人呐!到处有。 我们喊:杀牛!杀牛!好可爱的牛呀! 母牛之王来啦!,我走先。
上一页
游客

返回顶部