hoosyman
驱动小牛
驱动小牛
  • 注册日期2002-10-31
  • 最后登录2006-07-14
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:1463回复:6

98的wdm驱动如何挂上中断?(100分)

楼主#
更多 发布于:2004-03-06 22:44
在2000中我用了HalGetInterrupt来获得中断资源,可是98不支持该函数,请问该怎么做?
hoosyman
驱动小牛
驱动小牛
  • 注册日期2002-10-31
  • 最后登录2006-07-14
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-03-06 22:45
另外在问一个问题:XP底下是否支持HalGetInterrupt函数?
yonghong204
驱动牛犊
驱动牛犊
  • 注册日期2003-12-10
  • 最后登录2010-12-22
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望80点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-03-07 11:15
在98下,如使用VToolsd开发vxd驱动程序,可以填充VPICD数据结构,并进行注册即可。
seaquester
驱动大牛
驱动大牛
  • 注册日期2002-05-22
  • 最后登录2016-06-16
  • 粉丝0
  • 关注0
  • 积分500分
  • 威望115点
  • 贡献值0点
  • 好评度107点
  • 原创分0分
  • 专家分52分
地板#
发布于:2004-03-07 11:53
在2000中我用了HalGetInterrupt来获得中断资源,可是98不支持该函数,请问该怎么做?


WDM驱动不需要调用HalGetInterruptVector,只要处理IRP_MN_START_DEVICE 就行。
如果你的卡不支持PnP,Win98下就写VxD吧。
八风舞遥翩,九野弄清音。 鸣高常向月,善舞不迎人。
hoosyman
驱动小牛
驱动小牛
  • 注册日期2002-10-31
  • 最后登录2006-07-14
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-03-07 20:44
非常感谢楼上的回答.由于我的卡是不支持PnP的所以我在98底下就是用VxD写的,2000的系统用的是WDM.照楼上的说法,是不是98底下就只有写Vxd了?难道就没有其他的办法?还有一点需要请教,我用2000的wdm驱动在winXP下运行发现无法挂接中断,所以想请教是否是HalGetInterrupt在XP底下不支持?谢谢
hoosyman
驱动小牛
驱动小牛
  • 注册日期2002-10-31
  • 最后登录2006-07-14
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-03-09 15:29
顶!
seaquester
驱动大牛
驱动大牛
  • 注册日期2002-05-22
  • 最后登录2016-06-16
  • 粉丝0
  • 关注0
  • 积分500分
  • 威望115点
  • 贡献值0点
  • 好评度107点
  • 原创分0分
  • 专家分52分
6楼#
发布于:2004-03-09 15:53
非常感谢楼上的回答.由于我的卡是不支持PnP的所以我在98底下就是用VxD写的,2000的系统用的是WDM.照楼上的说法,是不是98底下就只有写Vxd了?难道就没有其他的办法?还有一点需要请教,我用2000的wdm驱动在winXP下运行发现无法挂接中断,所以想请教是否是HalGetInterrupt在XP底下不支持?谢谢


98下只能作VxD了,2000/XP上应该是写一个NT式驱动。HalGetInterruptVector应该是可以在2000/XP下用的,不过,微软提供了另外一种替代方法,具体怎么作,参照MSDN(DDK文档)。
八风舞遥翩,九野弄清音。 鸣高常向月,善舞不迎人。
游客

返回顶部