http://d.namipan.com/d/d2d1d670edec720ee058fd6f81c8473a2ff9350c39a11700
新编Windows API参考大全
键盘过滤驱动勘误《寒江独钓》
Keydata=Irp->AssociatedIrp.SystemBuffer;
numKeys=Irp->IoStatus.Information / Sizeof(KEYBOARD_INPUT_DATA);
for ( i=0;i<numKeys;i++)
{
DbgPrint(("numKeys : %d ",numKeys));
DbgPrint(("Scan code : %x ",KeyData->MakeCode));
DbgPrint(("%s\n",KeyData->Flags? "up":"down"));
MyPrintKeyStroke((UCHAR)KeyData->MakeCode);
if (KeyData->MakeCode==CAPS_LOCK)
{
KeyData->MakeCode=LCONTROL;
}
}
以上是书上的源代码,整个循环体只遍历了第一个结构体,后面的并没有进行操作,虽然有个循环但是并没有什么实质的作用,正确的遍历代码应该是下面的样子。程序代码所在页面Page-73
Keydata=Irp->AssociatedIrp.SystemBuffer;
numKeys=Irp->IoStatus.Information / Sizeof(KEYBOARD_INPUT_DATA);
for ( i=0;i<numKeys;i++,numKeys++)
{
DbgPrint(("numKeys : %d ",numKeys));
DbgPrint(("Scan code : %x ",KeyData->MakeCode));
DbgPrint(("%s\n",KeyData->Flags? "up":"down"));
MyPrintKeyStroke((UCHAR)KeyData->MakeCode);
if (KeyData->MakeCode==CAPS_LOCK)
{
KeyData->MakeCode=LCONTROL;
}
}
IP Sender [IP 发送者 ] beta 2
话说前几天又有人问关于能不能获取公网ip的问题,今天修改了下,增加了公网ip的获取,猛击此处下载文件!
最终获取的ip为如下的格式:
可能的公网ip:124.128.77.XXX
本地ip:192.168.5.146
2010-1-18 17:31:07