Здравствуйте MALnew, Вы писали:
MAL>Если не пройдет то попробуй к буферу доступ найти не из ReadComplete а из ReadDispatch — здесь write можно у меня получалось
Спасибо за ссылочку, но вот заменить Caps на Ctrl у меня и из своей программы получается:
VOID
KbFilter_ServiceCallback(
IN PDEVICE_OBJECT DeviceObject,
IN PKEYBOARD_INPUT_DATA InputDataStart,
IN PKEYBOARD_INPUT_DATA InputDataEnd,
IN OUT PULONG InputDataConsumed
)
PDEVICE_EXTENSION devExt;
int i,x;
devExt = (PDEVICE_EXTENSION) DeviceObject->DeviceExtension;
x= InputDataEnd - InputDataStart;
for( i = 0; i < x; i++ )
{
if (InputDataStart[i].MakeCode == CAPS_LOCK)
InputDataStart[i].MakeCode = LCONTROL;
(*(PSERVICE_CALLBACK_ROUTINE) devExt->UpperConnectData.ClassService)(
devExt->UpperConnectData.ClassDeviceObject,
InputDataStart,
InputDataEnd,
InputDataConsumed);
}
}
, а вот каким образом файл открыть, да чего-нибудь туда записать — не представляю. Если есть мысли, то поделись, если не трудно, поподробнее..