Network List Manager

Overview of the Network List Manager technology.

To develop Network List Manager, you need these headers:

For programming guidance for this technology, see:

Enumerations

Title Description
NLM_CONNECTION_COST The NLM_CONNECTION_COST enumeration specifies a set of cost levels and cost flags supported in Windows 8 Cost APIs.
NLM_CONNECTION_PROPERTY_CHANGE The NLM_CONNECTION PROPERTY_CHANGE enumeration is a set of flags that define changes made to the properties of a network connection.
NLM_CONNECTIVITY The NLM_Connectivity enumeration is a set of flags that provide notification whenever connectivity related parameters have changed.
NLM_DOMAIN_TYPE The NLM_DOMAIN_TYPE enumeration is a set of flags that specify the domain type of a network.
NLM_ENUM_NETWORK The NLM_ENUM_NETWORK enumeration contains a set of flags that specify what types of networks are enumerated.
NLM_INTERNET_CONNECTIVITY The NLM_INTERNET_CONNECTIVITY enumeration defines a set of flags that provide additional data for IPv4 or IPv6 network connectivity.
NLM_NETWORK_CATEGORY The NLM_NETWORK_CATEGORY enumeration is a set of flags that specify the category type of a network.
NLM_NETWORK_CLASS NLM_NETWORK_CLASS enumeration defines a set of flags that specify if a network has been identified.
NLM_NETWORK_PROPERTY_CHANGE The NLM_NETWORK_PROPERTY_CHANGE enumeration is a set of flags that define changes made to the properties of a network.

Functions

Title Description
ClearSimulatedProfileInfo Clears the connection profile values previously applied to the internet connection profile by SetSimulatedProfileInfo. The next internet connection query, via GetInternetConnectionProfile, will use system information.
Clone The Clone method creates an enumerator that contains the same enumeration state as the enumerator currently in use.
Clone The Clone method creates an enumerator that contains the same enumeration state as the enumerator currently in use.
ConnectionCostChanged ConnectionCostChanged method notifies an application of a network cost change for a connection.
ConnectionDataPlanStatusChanged ConnectionDataPlanStatusChanged method notifies an application of a data plan status change on a connection.
ConnectivityChanged The NetworkConnectivityChanged method is called when network connectivity related changes occur.
CostChanged CostChanged method is called to indicates a cost change for either machine-wide Internet connectivity, or the first-hop of routing to a specific destination on a connection.
DataPlanStatusChanged DataPlanStatusChanged method is called to indicate a change to the status of a data plan associated with either a connection used for machine-wide Internet connectivity, or the first-hop of routing to a specific destination on a connection.
FreeInterfaceContextTable This function frees the interface context table retrieved using the GetInterfaceContextTableForHostName function.
get__NewEnum The get_NewEnum property returns an automation enumerator object that you can use to iterate through the IEnumNetworkConnections collection.
get__NewEnum The get_NewEnum property returns an automation enumerator object that you can use to iterate through the IEnumNetworks collection.
get_IsConnected The get_IsConnected property specifies if the network has any network connectivity.
get_IsConnected The get_IsConnected property specifies if the associated network connection has network connectivity.
get_IsConnected The get_IsConnected property specifies if the local machine has network connectivity.
get_IsConnectedToInternet The get_IsConnectedToInternet property specifies if the network has internet connectivity.
get_IsConnectedToInternet The get_IsConnectedToInternet property specifies if the associated network connection has internet connectivity.
get_IsConnectedToInternet The get_IsConnectedToInternet property specifies if the local machine has internet connectivity.
GetAdapterId The GetAdapterID method returns the ID of the network adapter used by this connection.
GetCategory The GetCategory method returns the category of a network.
GetConnectionId The GetConnectionID method returns the Connection ID associated with this network connection.
GetConnectivity The GetConnectivity method returns the connectivity state of the network.
GetConnectivity The GetConnectivity method returns the connectivity state of the network connection.
GetConnectivity The GetConnectivity method returns the overall connectivity state of the machine.
GetCost GetCost method retrieves the network cost associated with a connection.
GetCost GetCost method retrieves the current cost of either a machine-wide internet connection, or the first-hop of routing to a specific destination on a connection.
GetDataPlanStatus GetDataPlanStatus method retrieves the status of the data plan associated with a connection.
GetDataPlanStatus GetDataPlanStatus retrieves the data plan status for either a machine-wide internet connection , or the first-hop of routing to a specific destination on a connection.
GetDescription The GetDescription method returns a description string for the network.
GetDomainType The GetDomainType method returns the domain type of a network.
GetDomainType The GetDomainType method returns the domain type of the network connection.
GetInterfaceContextTableForHostName This function retrieves an interface context table for the given hostname and connection profile filter.
GetName The GetName method returns the name of a network.
GetNetwork The GetNetwork method returns the network associated with the connection.
GetNetwork The GetNetwork method retrieves a network based on a supplied network ID.
GetNetworkConnection The GetNetworkConnection method retrieves a network based on a supplied Network Connection ID.
GetNetworkConnections The GetNetworkConnections method returns an enumeration of all network connections for a network. A network can have multiple connections to it from different interfaces or different links from the same interface.
GetNetworkConnections The GetNetworkConnections method enumerates a complete list of the network connections that have been made.
GetNetworkId The GetNetworkId method returns the unique identifier of a network.
GetNetworks The GetNetworks method retrieves the list of networks available on the local machine.
GetTimeCreatedAndConnected The GetTimeCreatedAndConnected method returns the local date and time when the network was created and connected.
NetworkAdded The NetworkAdded method is called when a new network is added. The GUID of the new network is provided.
NetworkConnectionConnectivityChanged The NetworkConnectionConnectivityChanged method notifies a client when connectivity change events occur on a network connection level.
NetworkConnectionPropertyChanged The NetworkConnectionPropertyChanged method notifies a client when property change events related to a specific network connection occur.
NetworkConnectivityChanged The NetworkConnectivityChanged method is called when network connectivity related changes occur.
NetworkDeleted The NetworkDeleted method is called when a network is deleted.
NetworkPropertyChanged The NetworkPropertyChanged method is called when a network property change is detected.
Next The Next method gets the next specified number of elements in the enumeration sequence.
Next The Next method gets the next specified number of elements in the enumeration sequence.
OnDemandGetRoutingHint The OnDemandGetRoutingHint function looks up a destination in the Route Request cache and, if a match is found, return the corresponding Interface ID.
OnDemandRegisterNotification The OnDemandRegisterNotification function allows an application to register to be notified when the Route Requests cache is modified.
OnDemandUnRegisterNotification The OnDemandUnregisterNotification function allows an application to unregister for notifications and clean up resources.
Reset The Reset method resets the enumeration sequence to the beginning.
Reset The Reset method resets the enumeration sequence to the beginning.
SetCategory The SetCategory method sets the category of a network. Changes made take effect immediately. Callers of this API must be members of the Administrators group.
SetDescription The SetDescription method sets or replaces the description for a network.
SetDestinationAddresses SetDestinationAddresses method registers specified destination IPv4/IPv6 addresses to receive cost or data plan status change notifications.
SetName The SetName method sets or renames a network.
SetSimulatedProfileInfo The SetSimulatedProfileInfo method applies a specific set of connection profile values to the internet connection profile in support of the simulation of specific metered internet connection conditions.
Skip The Skip method skips over the next specified number of elements in the enumeration sequence.
Skip The Skip method skips over the next specified number of elements in the enumeration sequence.

Interfaces

Title Description
IEnumNetworkConnections The IEnumNetworkConnections interface provides a standard enumerator for network connections. It enumerates active, disconnected, or all network connections within a network. This interface can be obtained from the INetwork interface.
IEnumNetworks The IEnumNetworks interface is a standard enumerator for networks. It enumerates all networks available on the local machine. This interface can be obtained from the INetworkListManager interface.
INetwork The INetwork interface represents a network on the local machine. It can also represent a collection of network connections with a similar network signature.
INetworkConnection The INetworkConnection interface represents a single network connection.
INetworkConnectionCost To query current network cost and data plan status associated with a connection.
INetworkConnectionCostEvents This interface to notify an application of cost and data plan status change events for a connection.
INetworkConnectionEvents The INetworkConnectionEvents interface is a message sink interface that a client implements to get network connection-related events. Applications that are interested in lower-level events (such as authentication changes) must implement this interface.
INetworkCostManager Use this interface to query for machine-wide cost and data plan status information associated with either a connection used for machine-wide Internet connectivity, or the first-hop of routing to a specific destination on a connection.
INetworkCostManagerEvents This interface to notify an application of machine-wide cost and data plan related events.
INetworkEvents INetworkEvents is a notification sink interface that a client implements to get network related events. These APIs are all callback functions that are called automatically when the respective events are raised.
INetworkListManager The INetworkListManager interface provides a set of methods to perform network list management functions.
INetworkListManagerEvents INetworkListManagerEvents is a message sink interface that a client implements to get overall machine state related events. Applications that are interested on higher-level events, for example internet connectivity, implement this interface.

Structures

Title Description
NET_INTERFACE_CONTEXT The interface context that is part of the NET_INTERFACE_CONTEXT_TABLE structure.
NET_INTERFACE_CONTEXT_TABLE The table of NET_INTERFACE_CONTEXT structures.
NLM_DATAPLAN_STATUS NLM_DATAPLAN_STATUS structure stores the current data plan status information supplied by the carrier.
NLM_SIMULATED_PROFILE_INFO Used to specify values that are used by SetSimulatedProfileInfo to override current internet connection profile values in an RDP Child Session to support the simulation of specific metered internet connection conditions.
NLM_SOCKADDR NLM_SOCKADDR structure contains the IPv4/IPv6 destination address.
NLM_USAGE_DATA NLM_USAGE_DATA structure stores information that indicates the data usage of a plan.