If you have a ServiceCallback, you do not deal with PIRPs when reporting
scan codes, instead, do not call the upper ServiceCallback routine with
any packet you do not want to report, when iterating over the array of
packets,just do this
PKEYBOARD_INPUT_DATA pCur;
ULONG consumed;
consumed = 0;
for (pCur = InputDataStart; pCur < InputDataEnd; pCur++)
{
ULONG
if (SomeCheckOnMakeCodeToDropPacket(pCur->MakeCode)) {
//do not report packet, but indicate that the packet was consumed
consumed++;
}
else {
ULONG tmpConsumed;
UpperServiceCallback(UpperContext, pCur, pCur+1, &tmpConsumed);
consumed += tmpConsumed;
}
}
*InputDataConsumed = consumed;
d
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Vikky Kishra
Sent: Thursday, December 29, 2005 10:46 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Problem with keyboard driver
hi all,
I am new to driver. I m writting a keyboard driver to unfunction
certatin keys of keyboard. Now i had a problem in ServiceCallBack
Routine, in this routine i had written a code to unfunction certain
keys as…
if(InputDataStart->MakeCode == 0x3b ||
0x3c ||
0x3d ||
0x3e ||
0x3f ||
0x40 ||
0x41 ||
0x42 ||
0x43 ||
0x44 ||
0x133 ||
0x134
)
{
DropIrp(Irp) // But where from can i get this irp which i want to
destroy
{
Irp->Cancel;
}
}
I dnt want the irp in which i had made changes to go to class driver.
thanks in advance.
–
IndiaInfo Mail - the free e-mail service with a difference!
www.indiainfo.com
Check out our value-added Premium features, such as an extra 20MB for
mail storage, POP3, e-mail forwarding, and ads-free mailboxes!
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
You are currently subscribed to ntdev as: unknown lmsubst tag argument:
‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com