Hi,

I would like to figure out to detect when a ce 4.2 device is connected or
disconnect to or from the network.
I found the API call CeSetUserNotificationEx().
I set the trigger event to CNT_EVENT, and the trigger event type to
NOTIFICATION_EVENT_NET_CONNECT or NOTIFICATION_EVENT_NET_DISCONN­ECT.

I did not get any notification when I disconnected and reconnected the
network cable.

Does anyone have any suggestion or an alternative?

Thanks in advanced.


Didier

Re: Connect or disconnect from network by Carl

Carl
Wed Jun 29 12:34:51 CDT 2005

Our programmer here found the same problem you did with windows ce 5.0.
It works perfectly in windows xp professional, but it doesn't at all
in windows ce 5.0 or 4.2.

DidierW wrote:
> Hi,
>
> I would like to figure out to detect when a ce 4.2 device is connected or
> disconnect to or from the network.
> I found the API call CeSetUserNotificationEx().
> I set the trigger event to CNT_EVENT, and the trigger event type to
> NOTIFICATION_EVENT_NET_CONNECT or NOTIFICATION_EVENT_NET_DISCONN­ECT.
>
> I did not get any notification when I disconnected and reconnected the
> network cable.
>
> Does anyone have any suggestion or an alternative?
>
> Thanks in advanced.
>
>
> Didier
>
>

Re: Connect or disconnect from network by Paul

Paul
Wed Jun 29 19:49:31 CDT 2005

I think that you can best do that by creating a message queue with
CreateMsgQueue, then sending a DeviceIoControl to the NDISUIO driver to
IOCTL_NDISUIO_REQUEST_NOTIFICATION. You'll want to ask for the following
notifications, I think:

NDISUIO_NOTIFICATION_MEDIA_CONNECT
NDISUIO_NOTIFICATION_MEDIA_DISCONNECT
NDISUIO_NOTIFICATION_BIND
NDISUIO_NOTIFICATION_UNBIND

I use this to keep the external LINK LED on some of our devices correctly
set based on whether *any* adapter in the unit is LINKed. Note that you'll
still have to check the connection status when you get the notification, as
you can't count on the adapter driver to properly balance connect/disconnect
messages and so on. I may have posted some more code about this previously.
You can search the archives...

Paul T.


"Carl" <carl@purpleglobe.com> wrote in message
news:OeH63JNfFHA.2384@TK2MSFTNGP15.phx.gbl...
> Our programmer here found the same problem you did with windows ce 5.0. It
> works perfectly in windows xp professional, but it doesn't at all in
> windows ce 5.0 or 4.2.
>
> DidierW wrote:
>> Hi,
>>
>> I would like to figure out to detect when a ce 4.2 device is connected or
>> disconnect to or from the network.
>> I found the API call CeSetUserNotificationEx().
>> I set the trigger event to CNT_EVENT, and the trigger event type to
>> NOTIFICATION_EVENT_NET_CONNECT or NOTIFICATION_EVENT_NET_DISCONN­ECT.
>>
>> I did not get any notification when I disconnected and reconnected the
>> network cable.
>>
>> Does anyone have any suggestion or an alternative?
>>
>> Thanks in advanced.
>>
>>
>> Didier
>>


Re: Connect or disconnect from network by noe

noe
Mon Jul 04 05:20:15 CDT 2005


Hi!
I need to use IOCTL_NDISUIO_REQUEST_NOTIFICATION but it isn't in my
file nuiouser.h. Where can I find this IOCTL and its code?Please, it's
very important.

Carl ha escrito:
> Our programmer here found the same problem you did with windows ce 5.0.
> It works perfectly in windows xp professional, but it doesn't at all
> in windows ce 5.0 or 4.2.
>
> DidierW wrote:
> > Hi,
> >
> > I would like to figure out to detect when a ce 4.2 device is connected =
or
> > disconnect to or from the network.
> > I found the API call CeSetUserNotificationEx().
> > I set the trigger event to CNT_EVENT, and the trigger event type to
> > NOTIFICATION_EVENT_NET_CONNECT or NOTIFICATION_EVENT_NET_DISCONN=ADECT.
> >
> > I did not get any notification when I disconnected and reconnected the
> > network cable.
> >
> > Does anyone have any suggestion or an alternative?
> >=20
> > Thanks in advanced.
> >=20
> >=20
> > Didier
> >=20
> >


Re: Connect or disconnect from network by Paul

Paul
Tue Jul 05 12:24:42 CDT 2005

It sure looks to me like it's in nuiouser.h.

It's a calculated value, just as is the case with most IOCTL values:

_NDISUIO_CTL_CODE(0x207, METHOD_BUFFERED, FILE_ANY_ACCESS)

Paul T.

"noe" <noeliaperaza@msn.com> wrote in message
news:1120472415.063802.226860@g49g2000cwa.googlegroups.com...

Hi!
I need to use IOCTL_NDISUIO_REQUEST_NOTIFICATION but it isn't in my
file nuiouser.h. Where can I find this IOCTL and its code?Please, it's
very important.

Carl ha escrito:
> Our programmer here found the same problem you did with windows ce 5.0.
> It works perfectly in windows xp professional, but it doesn't at all
> in windows ce 5.0 or 4.2.
>
> DidierW wrote:
> > Hi,
> >
> > I would like to figure out to detect when a ce 4.2 device is connected
> > or
> > disconnect to or from the network.
> > I found the API call CeSetUserNotificationEx().
> > I set the trigger event to CNT_EVENT, and the trigger event type to
> > NOTIFICATION_EVENT_NET_CONNECT or NOTIFICATION_EVENT_NET_DISCONN­ECT.
> >
> > I did not get any notification when I disconnected and reconnected the
> > network cable.
> >
> > Does anyone have any suggestion or an alternative?
> >
> > Thanks in advanced.
> >
> >
> > Didier
> >
> >



Re: Connect or disconnect from network by noe

noe
Wed Jul 06 04:01:55 CDT 2005

Thanks
Could you tell me how calculate this value?
And I need the defininition of Notification flag but it isn't in my
file nuiouser.h. Could you tell me where can I find a file nuiouser.h
with all definition of the NDISUIO operation?
My file nuiouser.h is below and I think it is incomplete

Please, help me.
-----------------------------------------------
/*++

Copyright (c) 2000 Microsoft Corporation

Module Name:

nuiouser.h

Abstract:

Constants and types to access the NDISUIO driver.
Users must also include ntddndis.h

Environment:

User/Kernel mode.

Revision History:

arvindm 4/12/2000 Created

--*/

#ifndef __NUIOUSER__H
#define __NUIOUSER__H


#define FSCTL_NDISUIO_BASE FILE_DEVICE_NETWORK

#define _NDISUIO_CTL_CODE(_Function, _Method, _Access) \
CTL_CODE(FSCTL_NDISUIO_BASE, _Function, _Method, _Access)

#define IOCTL_NDISUIO_OPEN_DEVICE \
_NDISUIO_CTL_CODE(0x200, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_QUERY_OID_VALUE \
_NDISUIO_CTL_CODE(0x201, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_SET_OID_VALUE \
_NDISUIO_CTL_CODE(0x205, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_SET_ETHER_TYPE \
_NDISUIO_CTL_CODE(0x202, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_QUERY_BINDING \
_NDISUIO_CTL_CODE(0x203, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_BIND_WAIT \
_NDISUIO_CTL_CODE(0x204, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)


//
// Structure to go with IOCTL_NDISUIO_QUERY_OID_VALUE.
// The Data part is of variable length, determined by
// the input buffer length passed to DeviceIoControl.
//
typedef struct _NDISUIO_QUERY_OID
{
NDIS_OID Oid;
UCHAR Data[sizeof(ULONG)];

} NDISUIO_QUERY_OID, *PNDISUIO_QUERY_OID;

//
// Structure to go with IOCTL_NDISUIO_SET_OID_VALUE.
// The Data part is of variable length, determined
// by the input buffer length passed to DeviceIoControl.
//
typedef struct _NDISUIO_SET_OID
{
NDIS_OID Oid;
UCHAR Data[sizeof(ULONG)];

} NDISUIO_SET_OID, *PNDISUIO_SET_OID;


//
// Structure to go with IOCTL_NDISUIO_QUERY_BINDING.
// The input parameter is BindingIndex, which is the
// index into the list of bindings active at the driver.
// On successful completion, we get back a device name
// and a device descriptor (friendly name).
//
typedef struct _NDISUIO_QUERY_BINDING
{
ULONG BindingIndex; // 0-based binding number
ULONG DeviceNameOffset; // from start of this struct
ULONG DeviceNameLength; // in bytes
ULONG DeviceDescrOffset; // from start of this struct
ULONG DeviceDescrLength; // in bytes

} NDISUIO_QUERY_BINDING, *PNDISUIO_QUERY_BINDING;

#endif // __NUIOUSER__H
---------------------------------------------


Paul G. Tobey [eMVP] ha escrito:
> It sure looks to me like it's in nuiouser.h.
>
> It's a calculated value, just as is the case with most IOCTL values:
>
> _NDISUIO_CTL_CODE(0x207, METHOD_BUFFERED, FILE_ANY_ACCESS)
>
> Paul T.
>
> "noe" <noeliaperaza@msn.com> wrote in message
> news:1120472415.063802.226860@g49g2000cwa.googlegroups.com...
>
> Hi!
> I need to use IOCTL_NDISUIO_REQUEST_NOTIFICATION but it isn't in my
> file nuiouser.h. Where can I find this IOCTL and its code?Please, it's
> very important.
>
> Carl ha escrito:
> > Our programmer here found the same problem you did with windows ce 5.0.
> > It works perfectly in windows xp professional, but it doesn't at all
> > in windows ce 5.0 or 4.2.
> >
> > DidierW wrote:
> > > Hi,
> > >
> > > I would like to figure out to detect when a ce 4.2 device is connected
> > > or
> > > disconnect to or from the network.
> > > I found the API call CeSetUserNotificationEx().
> > > I set the trigger event to CNT_EVENT, and the trigger event type to
> > > NOTIFICATION_EVENT_NET_CONNECT or NOTIFICATION_EVENT_NET_DISCONN=ADEC=
T=2E
> > >
> > > I did not get any notification when I disconnected and reconnected the
> > > network cable.
> > >
> > > Does anyone have any suggestion or an alternative?
> > >
> > > Thanks in advanced.
> > >
> > >
> > > Didier
> > >
> > >


Re: Connect or disconnect from network by Paul

Paul
Wed Jul 06 10:25:41 CDT 2005

Well, you can pretend that you are the compiler, look at the macro
definition and figure it out, or you can write a program that prints the
value. If you can't write a functional program to use that value, you'll
have to do it by reading the code and pretending you are the compiler.

Where did you get that file from? That looks like a desktop SDK file, not a
file from the SDK for your target device. Use the file in your device's
SDK.

Paul T.

"noe" <noeliaperaza@msn.com> wrote in message
news:1120640515.479136.157850@o13g2000cwo.googlegroups.com...
Thanks
Could you tell me how calculate this value?
And I need the defininition of Notification flag but it isn't in my
file nuiouser.h. Could you tell me where can I find a file nuiouser.h
with all definition of the NDISUIO operation?
My file nuiouser.h is below and I think it is incomplete

Please, help me.
-----------------------------------------------
/*++

Copyright (c) 2000 Microsoft Corporation

Module Name:

nuiouser.h

Abstract:

Constants and types to access the NDISUIO driver.
Users must also include ntddndis.h

Environment:

User/Kernel mode.

Revision History:

arvindm 4/12/2000 Created

--*/

#ifndef __NUIOUSER__H
#define __NUIOUSER__H


#define FSCTL_NDISUIO_BASE FILE_DEVICE_NETWORK

#define _NDISUIO_CTL_CODE(_Function, _Method, _Access) \
CTL_CODE(FSCTL_NDISUIO_BASE, _Function, _Method, _Access)

#define IOCTL_NDISUIO_OPEN_DEVICE \
_NDISUIO_CTL_CODE(0x200, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_QUERY_OID_VALUE \
_NDISUIO_CTL_CODE(0x201, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_SET_OID_VALUE \
_NDISUIO_CTL_CODE(0x205, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_SET_ETHER_TYPE \
_NDISUIO_CTL_CODE(0x202, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_QUERY_BINDING \
_NDISUIO_CTL_CODE(0x203, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)

#define IOCTL_NDISUIO_BIND_WAIT \
_NDISUIO_CTL_CODE(0x204, METHOD_BUFFERED, FILE_READ_ACCESS
| FILE_WRITE_ACCESS)


//
// Structure to go with IOCTL_NDISUIO_QUERY_OID_VALUE.
// The Data part is of variable length, determined by
// the input buffer length passed to DeviceIoControl.
//
typedef struct _NDISUIO_QUERY_OID
{
NDIS_OID Oid;
UCHAR Data[sizeof(ULONG)];

} NDISUIO_QUERY_OID, *PNDISUIO_QUERY_OID;

//
// Structure to go with IOCTL_NDISUIO_SET_OID_VALUE.
// The Data part is of variable length, determined
// by the input buffer length passed to DeviceIoControl.
//
typedef struct _NDISUIO_SET_OID
{
NDIS_OID Oid;
UCHAR Data[sizeof(ULONG)];

} NDISUIO_SET_OID, *PNDISUIO_SET_OID;


//
// Structure to go with IOCTL_NDISUIO_QUERY_BINDING.
// The input parameter is BindingIndex, which is the
// index into the list of bindings active at the driver.
// On successful completion, we get back a device name
// and a device descriptor (friendly name).
//
typedef struct _NDISUIO_QUERY_BINDING
{
ULONG BindingIndex; // 0-based binding number
ULONG DeviceNameOffset; // from start of this struct
ULONG DeviceNameLength; // in bytes
ULONG DeviceDescrOffset; // from start of this struct
ULONG DeviceDescrLength; // in bytes

} NDISUIO_QUERY_BINDING, *PNDISUIO_QUERY_BINDING;

#endif // __NUIOUSER__H
---------------------------------------------


Paul G. Tobey [eMVP] ha escrito:
> It sure looks to me like it's in nuiouser.h.
>
> It's a calculated value, just as is the case with most IOCTL values:
>
> _NDISUIO_CTL_CODE(0x207, METHOD_BUFFERED, FILE_ANY_ACCESS)
>
> Paul T.
>
> "noe" <noeliaperaza@msn.com> wrote in message
> news:1120472415.063802.226860@g49g2000cwa.googlegroups.com...
>
> Hi!
> I need to use IOCTL_NDISUIO_REQUEST_NOTIFICATION but it isn't in my
> file nuiouser.h. Where can I find this IOCTL and its code?Please, it's
> very important.
>
> Carl ha escrito:
> > Our programmer here found the same problem you did with windows ce 5.0.
> > It works perfectly in windows xp professional, but it doesn't at all
> > in windows ce 5.0 or 4.2.
> >
> > DidierW wrote:
> > > Hi,
> > >
> > > I would like to figure out to detect when a ce 4.2 device is connected
> > > or
> > > disconnect to or from the network.
> > > I found the API call CeSetUserNotificationEx().
> > > I set the trigger event to CNT_EVENT, and the trigger event type to
> > > NOTIFICATION_EVENT_NET_CONNECT or NOTIFICATION_EVENT_NET_DISCONN­ECT.
> > >
> > > I did not get any notification when I disconnected and reconnected the
> > > network cable.
> > >
> > > Does anyone have any suggestion or an alternative?
> > >
> > > Thanks in advanced.
> > >
> > >
> > > Didier
> > >
> > >



Re: Connect or disconnect from network by noe

noe
Thu Jul 07 03:53:42 CDT 2005

Thanks
I don't understand you very well when you say something on the
compiler.I am new in this matter.I get this file from Win Xp Sp1 DDK. I
need all definitions of NDISUIO operations because I am doing an
application in Visual Studio and I need to comunicate with the driver
of my wireless card.I can do query, set but I cannot do event
notification. Could you help me?, please

Paul G. Tobey [eMVP] ha escrito:
> Well, you can pretend that you are the compiler, look at the macro
> definition and figure it out, or you can write a program that prints the
> value. If you can't write a functional program to use that value, you'll
> have to do it by reading the code and pretending you are the compiler.
>
> Where did you get that file from? That looks like a desktop SDK file, no=
t a
> file from the SDK for your target device. Use the file in your device's
> SDK.
>
> Paul T.
>
> "noe" <noeliaperaza@msn.com> wrote in message
> news:1120640515.479136.157850@o13g2000cwo.googlegroups.com...
> Thanks
> Could you tell me how calculate this value?
> And I need the defininition of Notification flag but it isn't in my
> file nuiouser.h. Could you tell me where can I find a file nuiouser.h
> with all definition of the NDISUIO operation?
> My file nuiouser.h is below and I think it is incomplete
>
> Please, help me.
> -----------------------------------------------
> /*++
>
> Copyright (c) 2000 Microsoft Corporation
>
> Module Name:
>
> nuiouser.h
>
> Abstract:
>
> Constants and types to access the NDISUIO driver.
> Users must also include ntddndis.h
>
> Environment:
>
> User/Kernel mode.
>
> Revision History:
>
> arvindm 4/12/2000 Created
>
> --*/
>
> #ifndef __NUIOUSER__H
> #define __NUIOUSER__H
>
>
> #define FSCTL_NDISUIO_BASE FILE_DEVICE_NETWORK
>
> #define _NDISUIO_CTL_CODE(_Function, _Method, _Access) \
> CTL_CODE(FSCTL_NDISUIO_BASE, _Function, _Method, _Access)
>
> #define IOCTL_NDISUIO_OPEN_DEVICE \
> _NDISUIO_CTL_CODE(0x200, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_QUERY_OID_VALUE \
> _NDISUIO_CTL_CODE(0x201, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_SET_OID_VALUE \
> _NDISUIO_CTL_CODE(0x205, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_SET_ETHER_TYPE \
> _NDISUIO_CTL_CODE(0x202, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_QUERY_BINDING \
> _NDISUIO_CTL_CODE(0x203, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_BIND_WAIT \
> _NDISUIO_CTL_CODE(0x204, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
>
> //
> // Structure to go with IOCTL_NDISUIO_QUERY_OID_VALUE.
> // The Data part is of variable length, determined by
> // the input buffer length passed to DeviceIoControl.
> //
> typedef struct _NDISUIO_QUERY_OID
> {
> NDIS_OID Oid;
> UCHAR Data[sizeof(ULONG)];
>
> } NDISUIO_QUERY_OID, *PNDISUIO_QUERY_OID;
>
> //
> // Structure to go with IOCTL_NDISUIO_SET_OID_VALUE.
> // The Data part is of variable length, determined
> // by the input buffer length passed to DeviceIoControl.
> //
> typedef struct _NDISUIO_SET_OID
> {
> NDIS_OID Oid;
> UCHAR Data[sizeof(ULONG)];
>
> } NDISUIO_SET_OID, *PNDISUIO_SET_OID;
>
>
> //
> // Structure to go with IOCTL_NDISUIO_QUERY_BINDING.
> // The input parameter is BindingIndex, which is the
> // index into the list of bindings active at the driver.
> // On successful completion, we get back a device name
> // and a device descriptor (friendly name).
> //
> typedef struct _NDISUIO_QUERY_BINDING
> {
> ULONG BindingIndex; // 0-based binding number
> ULONG DeviceNameOffset; // from start of this struct
> ULONG DeviceNameLength; // in bytes
> ULONG DeviceDescrOffset; // from start of this struct
> ULONG DeviceDescrLength; // in bytes
>
> } NDISUIO_QUERY_BINDING, *PNDISUIO_QUERY_BINDING;
>
> #endif // __NUIOUSER__H
> ---------------------------------------------
>
>
> Paul G. Tobey [eMVP] ha escrito:
> > It sure looks to me like it's in nuiouser.h.
> >
> > It's a calculated value, just as is the case with most IOCTL values:
> >
> > _NDISUIO_CTL_CODE(0x207, METHOD_BUFFERED, FILE_ANY_ACCESS)
> >
> > Paul T.
> >
> > "noe" <noeliaperaza@msn.com> wrote in message
> > news:1120472415.063802.226860@g49g2000cwa.googlegroups.com...
> >
> > Hi!
> > I need to use IOCTL_NDISUIO_REQUEST_NOTIFICATION but it isn't in my
> > file nuiouser.h. Where can I find this IOCTL and its code?Please, it's
> > very important.
> >
> > Carl ha escrito:
> > > Our programmer here found the same problem you did with windows ce 5.=
0=2E
> > > It works perfectly in windows xp professional, but it doesn't at all
> > > in windows ce 5.0 or 4.2.
> > >
> > > DidierW wrote:
> > > > Hi,
> > > >
> > > > I would like to figure out to detect when a ce 4.2 device is connec=
ted
> > > > or
> > > > disconnect to or from the network.
> > > > I found the API call CeSetUserNotificationEx().
> > > > I set the trigger event to CNT_EVENT, and the trigger event type to
> > > > NOTIFICATION_EVENT_NET_CONNECT or NOTIFICATION_EVENT_NET_DISCONN=AD=
ECT.
> > > >
> > > > I did not get any notification when I disconnected and reconnected =
the
> > > > network cable.
> > > >
> > > > Does anyone have any suggestion or an alternative?
> > > >
> > > > Thanks in advanced.
> > > >
> > > >
> > > > Didier
> > > >
> > > >


Re: Connect or disconnect from network by Paul

Paul
Thu Jul 07 11:33:14 CDT 2005

This group is specific to Windows CE. It has *nothing* to do with Windows
XP...

Paul T.

"noe" <noeliaperaza@msn.com> wrote in message
news:1120726422.838198.80090@z14g2000cwz.googlegroups.com...
Thanks
I don't understand you very well when you say something on the
compiler.I am new in this matter.I get this file from Win Xp Sp1 DDK. I
need all definitions of NDISUIO operations because I am doing an
application in Visual Studio and I need to comunicate with the driver
of my wireless card.I can do query, set but I cannot do event
notification. Could you help me?, please

Paul G. Tobey [eMVP] ha escrito:
> Well, you can pretend that you are the compiler, look at the macro
> definition and figure it out, or you can write a program that prints the
> value. If you can't write a functional program to use that value, you'll
> have to do it by reading the code and pretending you are the compiler.
>
> Where did you get that file from? That looks like a desktop SDK file, not
> a
> file from the SDK for your target device. Use the file in your device's
> SDK.
>
> Paul T.
>
> "noe" <noeliaperaza@msn.com> wrote in message
> news:1120640515.479136.157850@o13g2000cwo.googlegroups.com...
> Thanks
> Could you tell me how calculate this value?
> And I need the defininition of Notification flag but it isn't in my
> file nuiouser.h. Could you tell me where can I find a file nuiouser.h
> with all definition of the NDISUIO operation?
> My file nuiouser.h is below and I think it is incomplete
>
> Please, help me.
> -----------------------------------------------
> /*++
>
> Copyright (c) 2000 Microsoft Corporation
>
> Module Name:
>
> nuiouser.h
>
> Abstract:
>
> Constants and types to access the NDISUIO driver.
> Users must also include ntddndis.h
>
> Environment:
>
> User/Kernel mode.
>
> Revision History:
>
> arvindm 4/12/2000 Created
>
> --*/
>
> #ifndef __NUIOUSER__H
> #define __NUIOUSER__H
>
>
> #define FSCTL_NDISUIO_BASE FILE_DEVICE_NETWORK
>
> #define _NDISUIO_CTL_CODE(_Function, _Method, _Access) \
> CTL_CODE(FSCTL_NDISUIO_BASE, _Function, _Method, _Access)
>
> #define IOCTL_NDISUIO_OPEN_DEVICE \
> _NDISUIO_CTL_CODE(0x200, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_QUERY_OID_VALUE \
> _NDISUIO_CTL_CODE(0x201, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_SET_OID_VALUE \
> _NDISUIO_CTL_CODE(0x205, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_SET_ETHER_TYPE \
> _NDISUIO_CTL_CODE(0x202, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_QUERY_BINDING \
> _NDISUIO_CTL_CODE(0x203, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
> #define IOCTL_NDISUIO_BIND_WAIT \
> _NDISUIO_CTL_CODE(0x204, METHOD_BUFFERED, FILE_READ_ACCESS
> | FILE_WRITE_ACCESS)
>
>
> //
> // Structure to go with IOCTL_NDISUIO_QUERY_OID_VALUE.
> // The Data part is of variable length, determined by
> // the input buffer length passed to DeviceIoControl.
> //
> typedef struct _NDISUIO_QUERY_OID
> {
> NDIS_OID Oid;
> UCHAR Data[sizeof(ULONG)];
>
> } NDISUIO_QUERY_OID, *PNDISUIO_QUERY_OID;
>
> //
> // Structure to go with IOCTL_NDISUIO_SET_OID_VALUE.
> // The Data part is of variable length, determined
> // by the input buffer length passed to DeviceIoControl.
> //
> typedef struct _NDISUIO_SET_OID
> {
> NDIS_OID Oid;
> UCHAR Data[sizeof(ULONG)];
>
> } NDISUIO_SET_OID, *PNDISUIO_SET_OID;
>
>
> //
> // Structure to go with IOCTL_NDISUIO_QUERY_BINDING.
> // The input parameter is BindingIndex, which is the
> // index into the list of bindings active at the driver.
> // On successful completion, we get back a device name
> // and a device descriptor (friendly name).
> //
> typedef struct _NDISUIO_QUERY_BINDING
> {
> ULONG BindingIndex; // 0-based binding number
> ULONG DeviceNameOffset; // from start of this struct
> ULONG DeviceNameLength; // in bytes
> ULONG DeviceDescrOffset; // from start of this struct
> ULONG DeviceDescrLength; // in bytes
>
> } NDISUIO_QUERY_BINDING, *PNDISUIO_QUERY_BINDING;
>
> #endif // __NUIOUSER__H
> ---------------------------------------------
>
>
> Paul G. Tobey [eMVP] ha escrito:
> > It sure looks to me like it's in nuiouser.h.
> >
> > It's a calculated value, just as is the case with most IOCTL values:
> >
> > _NDISUIO_CTL_CODE(0x207, METHOD_BUFFERED, FILE_ANY_ACCESS)
> >
> > Paul T.
> >
> > "noe" <noeliaperaza@msn.com> wrote in message
> > news:1120472415.063802.226860@g49g2000cwa.googlegroups.com...
> >
> > Hi!
> > I need to use IOCTL_NDISUIO_REQUEST_NOTIFICATION but it isn't in my
> > file nuiouser.h. Where can I find this IOCTL and its code?Please, it's
> > very important.
> >
> > Carl ha escrito:
> > > Our programmer here found the same problem you did with windows ce
> > > 5.0.
> > > It works perfectly in windows xp professional, but it doesn't at all
> > > in windows ce 5.0 or 4.2.
> > >
> > > DidierW wrote:
> > > > Hi,
> > > >
> > > > I would like to figure out to detect when a ce 4.2 device is
> > > > connected
> > > > or
> > > > disconnect to or from the network.
> > > > I found the API call CeSetUserNotificationEx().
> > > > I set the trigger event to CNT_EVENT, and the trigger event type to
> > > > NOTIFICATION_EVENT_NET_CONNECT or
> > > > NOTIFICATION_EVENT_NET_DISCONN­ECT.
> > > >
> > > > I did not get any notification when I disconnected and reconnected
> > > > the
> > > > network cable.
> > > >
> > > > Does anyone have any suggestion or an alternative?
> > > >
> > > > Thanks in advanced.
> > > >
> > > >
> > > > Didier
> > > >
> > > >



Re: Connect or disconnect from network by noe

noe
Fri Jul 08 06:26:02 CDT 2005

How???????
But I have done my software with Windows XP and I can do query and set
using NDISUIO. The problem is that I cannot do event notification.
Then, Where and How can I get the NDISUIO operations for Windows XP?
Please, help me, it is very important for me.

Paul G. Tobey [eMVP] ha escrito:
> This group is specific to Windows CE. It has *nothing* to do with Windows
> XP...
>
> Paul T.
>
> "noe" <noeliaperaza@msn.com> wrote in message
> news:1120726422.838198.80090@z14g2000cwz.googlegroups.com...
> Thanks
> I don't understand you very well when you say something on the
> compiler.I am new in this matter.I get this file from Win Xp Sp1 DDK. I
> need all definitions of NDISUIO operations because I am doing an
> application in Visual Studio and I need to comunicate with the driver
> of my wireless card.I can do query, set but I cannot do event
> notification. Could you help me?, please
>
> Paul G. Tobey [eMVP] ha escrito:
> > Well, you can pretend that you are the compiler, look at the macro
> > definition and figure it out, or you can write a program that prints the
> > value. If you can't write a functional program to use that value, you'=
ll
> > have to do it by reading the code and pretending you are the compiler.
> >
> > Where did you get that file from? That looks like a desktop SDK file, =
not
> > a
> > file from the SDK for your target device. Use the file in your device's
> > SDK.
> >
> > Paul T.
> >
> > "noe" <noeliaperaza@msn.com> wrote in message
> > news:1120640515.479136.157850@o13g2000cwo.googlegroups.com...
> > Thanks
> > Could you tell me how calculate this value?
> > And I need the defininition of Notification flag but it isn't in my
> > file nuiouser.h. Could you tell me where can I find a file nuiouser.h
> > with all definition of the NDISUIO operation?
> > My file nuiouser.h is below and I think it is incomplete
> >
> > Please, help me.
> > -----------------------------------------------
> > /*++
> >
> > Copyright (c) 2000 Microsoft Corporation
> >
> > Module Name:
> >
> > nuiouser.h
> >
> > Abstract:
> >
> > Constants and types to access the NDISUIO driver.
> > Users must also include ntddndis.h
> >
> > Environment:
> >
> > User/Kernel mode.
> >
> > Revision History:
> >
> > arvindm 4/12/2000 Created
> >
> > --*/
> >
> > #ifndef __NUIOUSER__H
> > #define __NUIOUSER__H
> >
> >
> > #define FSCTL_NDISUIO_BASE FILE_DEVICE_NETWORK
> >
> > #define _NDISUIO_CTL_CODE(_Function, _Method, _Access) \
> > CTL_CODE(FSCTL_NDISUIO_BASE, _Function, _Method, _Access)
> >
> > #define IOCTL_NDISUIO_OPEN_DEVICE \
> > _NDISUIO_CTL_CODE(0x200, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_QUERY_OID_VALUE \
> > _NDISUIO_CTL_CODE(0x201, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_SET_OID_VALUE \
> > _NDISUIO_CTL_CODE(0x205, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_SET_ETHER_TYPE \
> > _NDISUIO_CTL_CODE(0x202, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_QUERY_BINDING \
> > _NDISUIO_CTL_CODE(0x203, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_BIND_WAIT \
> > _NDISUIO_CTL_CODE(0x204, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> >
> > //
> > // Structure to go with IOCTL_NDISUIO_QUERY_OID_VALUE.
> > // The Data part is of variable length, determined by
> > // the input buffer length passed to DeviceIoControl.
> > //
> > typedef struct _NDISUIO_QUERY_OID
> > {
> > NDIS_OID Oid;
> > UCHAR Data[sizeof(ULONG)];
> >
> > } NDISUIO_QUERY_OID, *PNDISUIO_QUERY_OID;
> >
> > //
> > // Structure to go with IOCTL_NDISUIO_SET_OID_VALUE.
> > // The Data part is of variable length, determined
> > // by the input buffer length passed to DeviceIoControl.
> > //
> > typedef struct _NDISUIO_SET_OID
> > {
> > NDIS_OID Oid;
> > UCHAR Data[sizeof(ULONG)];
> >
> > } NDISUIO_SET_OID, *PNDISUIO_SET_OID;
> >
> >
> > //
> > // Structure to go with IOCTL_NDISUIO_QUERY_BINDING.
> > // The input parameter is BindingIndex, which is the
> > // index into the list of bindings active at the driver.
> > // On successful completion, we get back a device name
> > // and a device descriptor (friendly name).
> > //
> > typedef struct _NDISUIO_QUERY_BINDING
> > {
> > ULONG BindingIndex; // 0-based binding number
> > ULONG DeviceNameOffset; // from start of this struct
> > ULONG DeviceNameLength; // in bytes
> > ULONG DeviceDescrOffset; // from start of this struct
> > ULONG DeviceDescrLength; // in bytes
> >
> > } NDISUIO_QUERY_BINDING, *PNDISUIO_QUERY_BINDING;
> >
> > #endif // __NUIOUSER__H
> > ---------------------------------------------
> >
> >
> > Paul G. Tobey [eMVP] ha escrito:
> > > It sure looks to me like it's in nuiouser.h.
> > >
> > > It's a calculated value, just as is the case with most IOCTL values:
> > >
> > > _NDISUIO_CTL_CODE(0x207, METHOD_BUFFERED, FILE_ANY_ACCESS)
> > >
> > > Paul T.
> > >
> > > "noe" <noeliaperaza@msn.com> wrote in message
> > > news:1120472415.063802.226860@g49g2000cwa.googlegroups.com...
> > >
> > > Hi!
> > > I need to use IOCTL_NDISUIO_REQUEST_NOTIFICATION but it isn't in my
> > > file nuiouser.h. Where can I find this IOCTL and its code?Please, it's
> > > very important.
> > >
> > > Carl ha escrito:
> > > > Our programmer here found the same problem you did with windows ce
> > > > 5.0.
> > > > It works perfectly in windows xp professional, but it doesn't at =
all
> > > > in windows ce 5.0 or 4.2.
> > > >
> > > > DidierW wrote:
> > > > > Hi,
> > > > >
> > > > > I would like to figure out to detect when a ce 4.2 device is
> > > > > connected
> > > > > or
> > > > > disconnect to or from the network.
> > > > > I found the API call CeSetUserNotificationEx().
> > > > > I set the trigger event to CNT_EVENT, and the trigger event type =
to
> > > > > NOTIFICATION_EVENT_NET_CONNECT or
> > > > > NOTIFICATION_EVENT_NET_DISCONN=ADECT.
> > > > >
> > > > > I did not get any notification when I disconnected and reconnected
> > > > > the
> > > > > network cable.
> > > > >
> > > > > Does anyone have any suggestion or an alternative?
> > > > >
> > > > > Thanks in advanced.
> > > > >
> > > > >
> > > > > Didier
> > > > >
> > > > >


Re: Connect or disconnect from network by Paul

Paul
Fri Jul 08 10:30:44 CDT 2005

Look at the Windows XP DDK newsgroup. You're asking an auto mechanic for
information on flying the space shuttle here.

Paul T.

"noe" <noeliaperaza@msn.com> wrote in message
news:1120821962.287370.43730@g43g2000cwa.googlegroups.com...
How???????
But I have done my software with Windows XP and I can do query and set
using NDISUIO. The problem is that I cannot do event notification.
Then, Where and How can I get the NDISUIO operations for Windows XP?
Please, help me, it is very important for me.

Paul G. Tobey [eMVP] ha escrito:
> This group is specific to Windows CE. It has *nothing* to do with Windows
> XP...
>
> Paul T.
>
> "noe" <noeliaperaza@msn.com> wrote in message
> news:1120726422.838198.80090@z14g2000cwz.googlegroups.com...
> Thanks
> I don't understand you very well when you say something on the
> compiler.I am new in this matter.I get this file from Win Xp Sp1 DDK. I
> need all definitions of NDISUIO operations because I am doing an
> application in Visual Studio and I need to comunicate with the driver
> of my wireless card.I can do query, set but I cannot do event
> notification. Could you help me?, please
>
> Paul G. Tobey [eMVP] ha escrito:
> > Well, you can pretend that you are the compiler, look at the macro
> > definition and figure it out, or you can write a program that prints the
> > value. If you can't write a functional program to use that value,
> > you'll
> > have to do it by reading the code and pretending you are the compiler.
> >
> > Where did you get that file from? That looks like a desktop SDK file,
> > not
> > a
> > file from the SDK for your target device. Use the file in your device's
> > SDK.
> >
> > Paul T.
> >
> > "noe" <noeliaperaza@msn.com> wrote in message
> > news:1120640515.479136.157850@o13g2000cwo.googlegroups.com...
> > Thanks
> > Could you tell me how calculate this value?
> > And I need the defininition of Notification flag but it isn't in my
> > file nuiouser.h. Could you tell me where can I find a file nuiouser.h
> > with all definition of the NDISUIO operation?
> > My file nuiouser.h is below and I think it is incomplete
> >
> > Please, help me.
> > -----------------------------------------------
> > /*++
> >
> > Copyright (c) 2000 Microsoft Corporation
> >
> > Module Name:
> >
> > nuiouser.h
> >
> > Abstract:
> >
> > Constants and types to access the NDISUIO driver.
> > Users must also include ntddndis.h
> >
> > Environment:
> >
> > User/Kernel mode.
> >
> > Revision History:
> >
> > arvindm 4/12/2000 Created
> >
> > --*/
> >
> > #ifndef __NUIOUSER__H
> > #define __NUIOUSER__H
> >
> >
> > #define FSCTL_NDISUIO_BASE FILE_DEVICE_NETWORK
> >
> > #define _NDISUIO_CTL_CODE(_Function, _Method, _Access) \
> > CTL_CODE(FSCTL_NDISUIO_BASE, _Function, _Method, _Access)
> >
> > #define IOCTL_NDISUIO_OPEN_DEVICE \
> > _NDISUIO_CTL_CODE(0x200, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_QUERY_OID_VALUE \
> > _NDISUIO_CTL_CODE(0x201, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_SET_OID_VALUE \
> > _NDISUIO_CTL_CODE(0x205, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_SET_ETHER_TYPE \
> > _NDISUIO_CTL_CODE(0x202, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_QUERY_BINDING \
> > _NDISUIO_CTL_CODE(0x203, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> > #define IOCTL_NDISUIO_BIND_WAIT \
> > _NDISUIO_CTL_CODE(0x204, METHOD_BUFFERED, FILE_READ_ACCESS
> > | FILE_WRITE_ACCESS)
> >
> >
> > //
> > // Structure to go with IOCTL_NDISUIO_QUERY_OID_VALUE.
> > // The Data part is of variable length, determined by
> > // the input buffer length passed to DeviceIoControl.
> > //
> > typedef struct _NDISUIO_QUERY_OID
> > {
> > NDIS_OID Oid;
> > UCHAR Data[sizeof(ULONG)];
> >
> > } NDISUIO_QUERY_OID, *PNDISUIO_QUERY_OID;
> >
> > //
> > // Structure to go with IOCTL_NDISUIO_SET_OID_VALUE.
> > // The Data part is of variable length, determined
> > // by the input buffer length passed to DeviceIoControl.
> > //
> > typedef struct _NDISUIO_SET_OID
> > {
> > NDIS_OID Oid;
> > UCHAR Data[sizeof(ULONG)];
> >
> > } NDISUIO_SET_OID, *PNDISUIO_SET_OID;
> >
> >
> > //
> > // Structure to go with IOCTL_NDISUIO_QUERY_BINDING.
> > // The input parameter is BindingIndex, which is the
> > // index into the list of bindings active at the driver.
> > // On successful completion, we get back a device name
> > // and a device descriptor (friendly name).
> > //
> > typedef struct _NDISUIO_QUERY_BINDING
> > {
> > ULONG BindingIndex; // 0-based binding number
> > ULONG DeviceNameOffset; // from start of this struct
> > ULONG DeviceNameLength; // in bytes
> > ULONG DeviceDescrOffset; // from start of this struct
> > ULONG DeviceDescrLength; // in bytes
> >
> > } NDISUIO_QUERY_BINDING, *PNDISUIO_QUERY_BINDING;
> >
> > #endif // __NUIOUSER__H
> > ---------------------------------------------
> >
> >
> > Paul G. Tobey [eMVP] ha escrito:
> > > It sure looks to me like it's in nuiouser.h.
> > >
> > > It's a calculated value, just as is the case with most IOCTL values:
> > >
> > > _NDISUIO_CTL_CODE(0x207, METHOD_BUFFERED, FILE_ANY_ACCESS)
> > >
> > > Paul T.
> > >
> > > "noe" <noeliaperaza@msn.com> wrote in message
> > > news:1120472415.063802.226860@g49g2000cwa.googlegroups.com...
> > >
> > > Hi!
> > > I need to use IOCTL_NDISUIO_REQUEST_NOTIFICATION but it isn't in my
> > > file nuiouser.h. Where can I find this IOCTL and its code?Please, it's
> > > very important.
> > >
> > > Carl ha escrito:
> > > > Our programmer here found the same problem you did with windows ce
> > > > 5.0.
> > > > It works perfectly in windows xp professional, but it doesn't at
> > > > all
> > > > in windows ce 5.0 or 4.2.
> > > >
> > > > DidierW wrote:
> > > > > Hi,
> > > > >
> > > > > I would like to figure out to detect when a ce 4.2 device is
> > > > > connected
> > > > > or
> > > > > disconnect to or from the network.
> > > > > I found the API call CeSetUserNotificationEx().
> > > > > I set the trigger event to CNT_EVENT, and the trigger event type
> > > > > to
> > > > > NOTIFICATION_EVENT_NET_CONNECT or
> > > > > NOTIFICATION_EVENT_NET_DISCONN­ECT.
> > > > >
> > > > > I did not get any notification when I disconnected and reconnected
> > > > > the
> > > > > network cable.
> > > > >
> > > > > Does anyone have any suggestion or an alternative?
> > > > >
> > > > > Thanks in advanced.
> > > > >
> > > > >
> > > > > Didier
> > > > >
> > > > >



Re: Connect or disconnect from network by noe

noe
Mon Jul 11 06:31:23 CDT 2005

Thanks. I will try it.
Paul G. Tobey [eMVP] ha escrito:
> Look at the Windows XP DDK newsgroup. You're asking an auto mechanic for
> information on flying the space shuttle here.
>
> Paul T.
>
> "noe" <noeliaperaza@msn.com> wrote in message
> news:1120821962.287370.43730@g43g2000cwa.googlegroups.com...
> How???????
> But I have done my software with Windows XP and I can do query and set
> using NDISUIO. The problem is that I cannot do event notification.
> Then, Where and How can I get the NDISUIO operations for Windows XP?
> Please, help me, it is very important for me.
>
> Paul G. Tobey [eMVP] ha escrito:
> > This group is specific to Windows CE. It has *nothing* to do with Wind=
ows
> > XP...
> >
> > Paul T.
> >
> > "noe" <noeliaperaza@msn.com> wrote in message
> > news:1120726422.838198.80090@z14g2000cwz.googlegroups.com...
> > Thanks
> > I don't understand you very well when you say something on the
> > compiler.I am new in this matter.I get this file from Win Xp Sp1 DDK. I
> > need all definitions of NDISUIO operations because I am doing an
> > application in Visual Studio and I need to comunicate with the driver
> > of my wireless card.I can do query, set but I cannot do event
> > notification. Could you help me?, please
> >
> > Paul G. Tobey [eMVP] ha escrito:
> > > Well, you can pretend that you are the compiler, look at the macro
> > > definition and figure it out, or you can write a program that prints =
the
> > > value. If you can't write a functional program to use that value,
> > > you'll
> > > have to do it by reading the code and pretending you are the compiler.
> > >
> > > Where did you get that file from? That looks like a desktop SDK file,
> > > not
> > > a
> > > file from the SDK for your target device. Use the file in your devic=
e's
> > > SDK.
> > >
> > > Paul T.
> > >
> > > "noe" <noeliaperaza@msn.com> wrote in message
> > > news:1120640515.479136.157850@o13g2000cwo.googlegroups.com...
> > > Thanks
> > > Could you tell me how calculate this value?
> > > And I need the defininition of Notification flag but it isn't in my
> > > file nuiouser.h. Could you tell me where can I find a file nuiouser.h
> > > with all definition of the NDISUIO operation?
> > > My file nuiouser.h is below and I think it is incomplete
> > >
> > > Please, help me.
> > > -----------------------------------------------
> > > /*++
> > >
> > > Copyright (c) 2000 Microsoft Corporation
> > >
> > > Module Name:
> > >
> > > nuiouser.h
> > >
> > > Abstract:
> > >
> > > Constants and types to access the NDISUIO driver.
> > > Users must also include ntddndis.h
> > >
> > > Environment:
> > >
> > > User/Kernel mode.
> > >
> > > Revision History:
> > >
> > > arvindm 4/12/2000 Created
> > >
> > > --*/
> > >
> > > #ifndef __NUIOUSER__H
> > > #define __NUIOUSER__H
> > >
> > >
> > > #define FSCTL_NDISUIO_BASE FILE_DEVICE_NETWORK
> > >
> > > #define _NDISUIO_CTL_CODE(_Function, _Method, _Access) \
> > > CTL_CODE(FSCTL_NDISUIO_BASE, _Function, _Method, _Access)
> > >
> > > #define IOCTL_NDISUIO_OPEN_DEVICE \
> > > _NDISUIO_CTL_CODE(0x200, METHOD_BUFFERED, FILE_READ_ACCESS
> > > | FILE_WRITE_ACCESS)
> > >
> > > #define IOCTL_NDISUIO_QUERY_OID_VALUE \
> > > _NDISUIO_CTL_CODE(0x201, METHOD_BUFFERED, FILE_READ_ACCESS
> > > | FILE_WRITE_ACCESS)
> > >
> > > #define IOCTL_NDISUIO_SET_OID_VALUE \
> > > _NDISUIO_CTL_CODE(0x205, METHOD_BUFFERED, FILE_READ_ACCESS
> > > | FILE_WRITE_ACCESS)
> > >
> > > #define IOCTL_NDISUIO_SET_ETHER_TYPE \
> > > _NDISUIO_CTL_CODE(0x202, METHOD_BUFFERED, FILE_READ_ACCESS
> > > | FILE_WRITE_ACCESS)
> > >
> > > #define IOCTL_NDISUIO_QUERY_BINDING \
> > > _NDISUIO_CTL_CODE(0x203, METHOD_BUFFERED, FILE_READ_ACCESS
> > > | FILE_WRITE_ACCESS)
> > >
> > > #define IOCTL_NDISUIO_BIND_WAIT \
> > > _NDISUIO_CTL_CODE(0x204, METHOD_BUFFERED, FILE_READ_ACCESS
> > > | FILE_WRITE_ACCESS)
> > >
> > >
> > > //
> > > // Structure to go with IOCTL_NDISUIO_QUERY_OID_VALUE.
> > > // The Data part is of variable length, determined by
> > > // the input buffer length passed to DeviceIoControl.
> > > //
> > > typedef struct _NDISUIO_QUERY_OID
> > > {
> > > NDIS_OID Oid;
> > > UCHAR Data[sizeof(ULONG)];
> > >
> > > } NDISUIO_QUERY_OID, *PNDISUIO_QUERY_OID;
> > >
> > > //
> > > // Structure to go with IOCTL_NDISUIO_SET_OID_VALUE.
> > > // The Data part is of variable length, determined
> > > // by the input buffer length passed to DeviceIoControl.
> > > //
> > > typedef struct _NDISUIO_SET_OID
> > > {
> > > NDIS_OID Oid;
> > > UCHAR Data[sizeof(ULONG)];
> > >
> > > } NDISUIO_SET_OID, *PNDISUIO_SET_OID;
> > >
> > >
> > > //
> > > // Structure to go with IOCTL_NDISUIO_QUERY_BINDING.
> > > // The input parameter is BindingIndex, which is the
> > > // index into the list of bindings active at the driver.
> > > // On successful completion, we get back a device name
> > > // and a device descriptor (friendly name).
> > > //
> > > typedef struct _NDISUIO_QUERY_BINDING
> > > {
> > > ULONG BindingIndex; // 0-based binding number
> > > ULONG DeviceNameOffset; // from start of this struct
>