阅读:927回复:1
编写网卡VXD驱动的问题!
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等等。 |
|
|
沙发#
发布于:2003-08-21 11:14
怎么每人回应,考虑加更多分给解答问题的人
|
|
|