A network card does not initialize or does not work correctly (832178)



The information in this article applies to:

  • Microsoft Windows CE .NET 4.0
  • Microsoft Windows CE .NET 4.1
  • Microsoft Windows CE .NET 4.2

SYMPTOMS

When you start or reset a device, the driver for the device may not initialize or may not function correctly. Specifically, this may occur with thhe driver for a network card that is built-in to a device or that is already inserted into the PCMCIA bus before you start or reset the device.

CAUSE

This problem occurs if the network driver loads before the Network Driver Interface Specification (NDIS) driver is loaded. Because the network driver depends on the NDIS driver, the problem occurs if the network driver for the card is loaded before the Network Driver Interface Specification (NDIS) driver is loaded, as described in the following sequence:
  1. The driver for the bus that is connected to the card is loaded, and then the driver for the network card is loaded.
  2. NDIS is loaded.
Note The sample PCMCIA driver that is provided in Microsoft Windows CE .NET is configured to load before the NDIS driver.

RESOLUTION

To resolve this problem, the NDIS driver must be loaded before the network driver is loaded.

Configure the network driver to load after the NDIS driver is loaded. To do this, set the load order in the registry so that the PCMCIA, PCI, or any other bus enumerator driver that could load a network card will load after the NDIS driver. To control this behavior, set the load order in the registry as shown in the following sample for a PCMCIA network card in a PCMCIA bus. This sample is for a PCMCIA network card that is connected to a PCMCIA bus. For a network card that connects to a different bus, modify the registy entries for that bus.

This sample has the load order of NDIS set to 1, and the load order of PCMCIA set to 2 so that PCMCIA loads after NDIS.

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NDIS]

"Dll"="NDIS.Dll"

"Prefix"="NDS"

"Index"=dword:0

"Order"=dword:1

; Indicate NDS is a power manageable interface

"IClass"="{A32942B7-920C-486b-B0E6-92A702A99B35}"

[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\PCMCIA]

"Dll"="PCMCIA.dll"

"Order"=dword:2

"IClass"=multi_sz:"{6BEAB08A-8914-42fd-B33F-61968B9AAB32}=PCMCIA Card Services"

STATUS

This behavior is by design.

REFERENCES

For more information about Registry Enumerator documentation, visit the following MSDN Web site:

Modification Type:MajorLast Reviewed:12/11/2003
Keywords:kbOEM kbRegistry kbNetworkCard kbActiveDocs kbNDIS kbDev kbprb KB832178 kbAudDeveloper kbAudOEM