Using APC in W2K results in "The instruction at 0x0040100d reference memory at 0x93e277db. The memor

I tried to use the method outlined in
http://www.microsoft.com/msj/0799/nerd/nerd0799.htm” to call a user-mode
function from a W2K file filter driver.

If I place the following codes (as mentioned in the captioned article), of
course correctly registered with a user app, in the IoDeviceControl
routine, it will work fine.


Apc = ExAllocatePool(…)
KeInitializeApc(…)
KeInsertQueueApc(…)

When I place them into FileHookRoutine(s), where I must integrate the
codes to, the captioned error occurs. Also, “IRQL_NOT_LESS_OR_EQUAL” error
appears during shutting down the machine.

Please help me to sort out the problem.

Thanks a lot