konie_wu
驱动牛犊
驱动牛犊
  • 注册日期2003-08-17
  • 最后登录2003-10-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:927回复:1

编写网卡VXD驱动的问题!

楼主#
更多 发布于:2003-08-20 15:41
  1.想要在win98底下控制网卡,首先必须卸载win98安装的驱动程序,把网卡设置成Jumpless,如果使用PNP会造成网卡的中断和端口地址会发生变化,这给编程造成不变。
  2.我把网卡设置成Jumpless,IRQ5,端口地址为300-31FH
   我对的数据端口读写会引起中断,这在OnHardwareInt()函数对x自加1,并在DriverMonitor上输出可以看到。
  3.但是这个中断却没有办法引起应用程序中等待线程的响应。我使用了异步过程调用VWIN32_QueueUserApc(CallBackApc,(DWORD)&x,TheThread);
  ,发送消息SHELL_PostMessage(hWnd,WM_USER_VXD,x,0,PostMsgCallback,NULL)这两种方式都不行 ,如果使用WIN32事件CEvent,一运行就出现A fatal exception 0E error致命错误。
  4.上面的异步调用和发送消息,使用SOFTICE让WINDOWS强制产生IQR5的中断,是可以引起应用程序中等待线程的响应。
  5.我还试过其它的中断IRQ3,IRQ10,都是这种情况。
  6.我请教大侠,为什么会出现上述情况,难道用VHaredwardInt处理某个中断一定要进行注册么?
例如向Microsoft申请Device_ID等等。
看一看再说
konie_wu
驱动牛犊
驱动牛犊
  • 注册日期2003-08-17
  • 最后登录2003-10-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-08-21 11:14
怎么每人回应,考虑加更多分给解答问题的人
看一看再说
游客

返回顶部