what should we code for RequestCompleteHandler ?

I don’t have any idea on what should we code on RequestCompleteHandler. I
read the packet example from the DDK, and can’t understand. Can anyone
please advise on this.

currently, I leave the function empty. but after I set the filter using
NdisRequest function, the system display blue screen of death… probably I
need to code some clean up in the RequestCompleteHandler function… please
advise. thanks


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com

Humm…

I think that you must go back and study the way NDIS requests are handled.

You must also study the NDIS documentation in the DDK.

You should also look at the Windows XP version of PACKET, which has a new
name called NDISUIO. The Windows XP DDK samples are often better then the
older NT 4.0 samples.

In particular, it is vital that you understand how the PACKET sample handles
NDIS requests. Understand where ProtocolRequestComplete is called:

1.) If the request completes immediately (that is, Status is not
NDIS_STATUS_PENDING), then the PACKET driver sample calls
ProtocolRequestComplete directly.

2.) If the request does not complete immediately (that is, Status is
NDIS_STATUS_PENDING), then NDIS will call ProtocolRequestComplete later when
the request completes.

Finally. why in the world did you change the PACKET ProtocolRequestComplete
code from something that worked (i.e., the original PACKET code) to
something that does not work (your new code the "leaves the function empty)?

Bad idea!!!

Your comment that “the system display blue screen of death” is not useful.
Its no better then saying “my software don’t work”. Make sure that you have
a kernel-mode debugger - and learn to use it to find out what kind of fault
caused the BSOD and where it occurred. Hopefully, with a debugger you will
be able to find the problem. You may also need to learn how to use the
various NDIS debugging features and learn how to use the Windows “Checked
Build”.

If what I am saying seems to be a lot, then you are right. In fact, you
really need to learn how to write and debug Windows device drivers. Books
are good. Perhaps take a course in DDK programming.

Good luck,

Thomas F. Divine

PCAUSA - Tools & Resources For Network Software Developers
NDIS Protocol/Intermediate/Hooking - TDI Client/Filter
http: - http:

“cksiow” wrote in message news:xxxxx@ntdev…
>
> I don’t have any idea on what should we code on RequestCompleteHandler. I
> read the packet example from the DDK, and can’t understand. Can anyone
> please advise on this.
>
> currently, I leave the function empty. but after I set the filter using
> NdisRequest function, the system display blue screen of death… probably I
> need to code some clean up in the RequestCompleteHandler function… please
> advise. thanks
>


You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com</http:></http:>