Share via


NdisReadNetworkAddress

This function returns the software-configurable network address that was stored in the registry for an NIC when it was installed in the computer.

VOID NdisReadNetworkAddress(
OUT PNDIS_STATUS Status, 
OUT PVOID *NetworkAddress, 
OUT PUINT NetworkAddressLength, 
IN NDIS_HANDLE ConfigurationHandle );

Parameters

  • Status
    Pointer to a caller-supplied variable in which this function returns the status of the call as one of the following:

    Value Description
    NDIS_STATUS_SUCCESS The caller can use the address returned at NetworkAddress for its NIC.
    NDIS_STATUS_FAILURE There was no NIC address information available in the caller's registry Parameters key, or the value stored was not a string.
  • NetworkAddress
    Pointer to a caller-supplied variable in which this function returns a pointer to the buffered network address, stored as a sequence of byte integers, if the call is successful.

  • NetworkAddressLength
    Pointer to a caller-supplied variable in which this function returns the number of bytes returned at NetworkAddress.

  • ConfigurationHandle
    Handle returned by the NdisOpenConfiguration function.

Remarks

For PC Card NICs, if no network address was specified in the registry, NDIS reads the network address from the card's attribute space and stores it in the registry.

This function searches the registry Parameters key designated by the specified ConfigurationHandle for the keyword NetworkAddress, converts the value of this string-type entry into a sequence of byte integers, and stores the requested information internally. The storage that NDIS allocates for such an address remains valid until the NIC driver calls NdisCloseConfiguration, which frees the memory.

The caller cannot use the variable at NetworkAddress as a pointer unless this function returns NDIS_STATUS_SUCCESS at Status.

The installation program for an NIC that supports software-configurable network addressing stores a value entry named with the NetworkAddress keyword in the appropriate XXX\DriverName\Parameters key of the registry.

An NIC installer usually stores the value of a NetworkAddress entry in the registry as a string of hexadecimal digits. Optionally, an installer can store such an address as a string of paired digits, with each pair separated from the next by a hyphen. This function discards hyphens and converts each such pair into a single byte.

In either form, this function converts the address specified as a string, one character at a time, into the equivalent integer until the string is exhausted.

In the Windows CE registry, such an installed address string contains Unicode characters.

A driver that calls this function runs at IRQL PASSIVE_LEVEL.

Requirements

Runs on Versions Defined in Include Link to
Windows CE OS 2.0 and later Ndis.h    

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

NdisCloseConfiguration, NdisOpenConfiguration

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.