从PUDN上下载的一份键盘驱动的源代码(http://read.pudn.com/downloads108/sourcecode/windows/vxd/447595/sys/inp.c__.htm) 在我的笔记本上测试发现按下第一个键之后,键盘就停止响应了,然后system进程占据100%的cpu。WinDbg调试,发现问题出在InpGetKeyboardInterruptVector函数的
IOAPICGate[0] = 0x10 + 2 * 1; // 0x10 + 2 * IRQ, Keyboard's irq is 1
行上。如果把XP的DEP关掉之后,就不会死机,运行正常。我对键盘驱动方面的东西很不懂,希望高手能帮忙解决下这个问题.....
IOAPICGate[0] = 0x10 + 2 * 1; // 0x10 + 2 * IRQ, Keyboard's irq is 1
行上。如果把XP的DEP关掉之后,就不会死机,运行正常。我对键盘驱动方面的东西很不懂,希望高手能帮忙解决下这个问题.....
换台式机会出错吗
void CallInt(BYTE IntNumber)
{
switch(IntNumber)
{
case 0:
__asm int 0;
break;
case 1:
__asm int 1;
break;
case 2:
__asm int 2;
break;
//……
//……
//……
case 254:
__asm int 254;
break;
case 255:
__asm int 255;
break;
}
}
代码不长,仅400多行,希望高手能去看一眼