communicating with NDIS under user mode without using IM driver

Hi, everybody

I am about to write a user mode diagnostic tools for our network
adapter. But the constraint is I can only implement it in one user mode
execution file (exe or dll). I knew communicating with NDIS driver under
user mode need a IM driver. However, Is there any other way?

Thanks in advance.

Best Regards

Kevin Liang


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

Hello,

I am about to write a user mode diagnostic tools for our network
adapter. But the constraint is I can only implement it in one user mode
execution file (exe or dll). I knew communicating with NDIS driver under
user mode need a IM driver. However, Is there any other way?

First what OS you will support ?
For Windows 2000 you can create a new device extension and use your
normal IO control calls.

When you will support Windos 9x too, you can write a protocol driver
stub on top of your ndis driver. The protcol driver receives commands
with IRP_MJ_IO_CONTROL and pass this data with NdisRequest() calls to
the NDIS driver.

elli


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

> I am about to write a user mode diagnostic tools for our network

adapter. But the constraint is I can only implement it in one user mode
execution file (exe or dll). I knew communicating with NDIS driver under
user mode need a IM driver. However, Is there any other way?

Not an IM, but a protocol driver like the PACKET sample.
I don’t think there are other ways.

Max


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

hello,

>First what OS you will support ?
>For Windows 2000 you can create a new device extension and use your
>normal IO control calls.

Where should I “create a new device extension”? I think I can’t create
device in user mode application.

Your NDIS driver must call NdisMRegisterDevice, now you have a new
device extension under your control and you have your own driver
dispatch table and can dispatch IO Controls from user mode.
But this Ndis API call is only avail in Windows >= 2000.

elli


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