Windows 8 and NDIS 5.1

Gents,

Is NDIS 5.1 supposed to operate well under Windows 8?

I am asking that because of two strange things:

  1. When driver is installed with “auto start” service, the driver does
    not start, I have the manually type “net start xxx” in order to get the
    driver running. I need to type that once only.

  2. On the next reboot, NDIS 5.1 does not find any NDIS devices, the
    enumeration, list of devices is empty. If I do “net stop xxx” and then “net
    start xxx” then everything works as a charm (up to the next reboot
    obviously).

Anyone encountered such an issue? Does anyone know whether or not NDIS 5.1
is supposed to operate under Windows 8?

Thanks,

Arnaud

NDIS 5.1 is supported on Windows 8… barely. NDIS 5.x has been deprecated for 5 years, and is slated for removal in the near future. Indeed, it has already been removed from Windows Phone and was never ported to Windows RT.

Does your INF’s AddService directive have SPSVCSINST_STARTSERVICE (flag 0x00000800)? This flag instructs the OS to start your driver service immediately after installation. (The service start type is only looked at during boot, and is not considered during installation/uninstallation.) These are the flags:

http://msdn.microsoft.com/en-us/library/ff546326(VS.85).aspx

NDIS 5.1 does not find any NDIS devices, the enumeration, list of devices is empty.

This statement is not clear to me. Do you have an NDIS 5.1 protocol driver based off of NDISPROT, and you have a usermode app sending IOCTL_NDISPROT_QUERY_BINDING, which returns NDIS_STATUS_ADAPTER_NOT_FOUND for index 0?

Hello Jeffrey,

Sorry to come back late to your message, I needed to Win8 box to be
available. I will try the SPSVCSINST_STARTSERVICE trick and report back to
you. However we have never seen this problem on Windows 7, but maybe we had
a reboot also. I will double check that and report back to you

As far as the second point is concerned, I have indeed a ndisprot driver and
an API. The API is calling DeviceIoControl() using
IOCTL_NDISPROT_QUERY_BINDING and a binding index of 0. DeviceIoControl()
returns 0 (error) and the error code from GetLastError() is 259,
ERROR_NO_MORE_ITEMS. I tried to do that 5 times in a row, same problem

Then I do net stop drv (windows tells the service was stopped successfully)
and net start drv (windows tells the service was started successfully) and
the problem is gone; DeviceControl is happy with binding index 0…

The exact same code works fine on XP and Win7 and it looks like a colleague
of mine don’t have this problem on his Windows 8 laptop.

So what is left? Faulty Win8 drivers for an Ethernet peripheral, obviously
this is an old (4 years old) machine which was manufactured before Windows 7
and Windows 8.

Any comments are welcome.

Thanks,
Arnaud

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jeffrey Tippet
Sent: Monday, January 14, 2013 1:30 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Windows 8 and NDIS 5.1

NDIS 5.1 is supported on Windows 8… barely. NDIS 5.x has been deprecated
for 5 years, and is slated for removal in the near future. Indeed, it has
already been removed from Windows Phone and was never ported to Windows RT.

Does your INF’s AddService directive have SPSVCSINST_STARTSERVICE (flag
0x00000800)? This flag instructs the OS to start your driver service
immediately after installation. (The service start type is only looked at
during boot, and is not considered during installation/uninstallation.)
These are the flags:

http://msdn.microsoft.com/en-us/library/ff546326(VS.85).aspx

NDIS 5.1 does not find any NDIS devices, the enumeration, list of devices
is empty.

This statement is not clear to me. Do you have an NDIS 5.1 protocol driver
based off of NDISPROT, and you have a usermode app sending
IOCTL_NDISPROT_QUERY_BINDING, which returns NDIS_STATUS_ADAPTER_NOT_FOUND
for index 0?


NTDEV is sponsored by OSR

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

Hello,

I tried to look further on the internet but I haven’t found anything
relevant.

I have tried on five different windows 8 machine and I can only see this
problem on one machine…

Does it sounds familiar to anyone?

Thanks,
Arnaud

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Arnaud Maye
Sent: Wednesday, January 16, 2013 3:50 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Windows 8 and NDIS 5.1

Hello Jeffrey,

Sorry to come back late to your message, I needed to Win8 box to be
available. I will try the SPSVCSINST_STARTSERVICE trick and report back to
you. However we have never seen this problem on Windows 7, but maybe we had
a reboot also. I will double check that and report back to you

As far as the second point is concerned, I have indeed a ndisprot driver and
an API. The API is calling DeviceIoControl() using
IOCTL_NDISPROT_QUERY_BINDING and a binding index of 0. DeviceIoControl()
returns 0 (error) and the error code from GetLastError() is 259,
ERROR_NO_MORE_ITEMS. I tried to do that 5 times in a row, same problem

Then I do net stop drv (windows tells the service was stopped successfully)
and net start drv (windows tells the service was started successfully) and
the problem is gone; DeviceControl is happy with binding index 0…

The exact same code works fine on XP and Win7 and it looks like a colleague
of mine don’t have this problem on his Windows 8 laptop.

So what is left? Faulty Win8 drivers for an Ethernet peripheral, obviously
this is an old (4 years old) machine which was manufactured before Windows 7
and Windows 8.

Any comments are welcome.

Thanks,
Arnaud

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Jeffrey Tippet
Sent: Monday, January 14, 2013 1:30 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Windows 8 and NDIS 5.1

NDIS 5.1 is supported on Windows 8… barely. NDIS 5.x has been deprecated
for 5 years, and is slated for removal in the near future. Indeed, it has
already been removed from Windows Phone and was never ported to Windows RT.

Does your INF’s AddService directive have SPSVCSINST_STARTSERVICE (flag
0x00000800)? This flag instructs the OS to start your driver service
immediately after installation. (The service start type is only looked at
during boot, and is not considered during installation/uninstallation.)
These are the flags:

http://msdn.microsoft.com/en-us/library/ff546326(VS.85).aspx

NDIS 5.1 does not find any NDIS devices, the enumeration, list of
devices
is empty.

This statement is not clear to me. Do you have an NDIS 5.1 protocol driver
based off of NDISPROT, and you have a usermode app sending
IOCTL_NDISPROT_QUERY_BINDING, which returns NDIS_STATUS_ADAPTER_NOT_FOUND
for index 0?


NTDEV is sponsored by OSR

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer


NTDEV is sponsored by OSR

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer