Configuring the Component's Driver
After the network configuration subsystem calls a notify object's INetCfgComponentControl::ApplyPnpChanges method, the notify object should send configuration information to the driver of the network component that owns the notify object. The network configuration subsystem calls ApplyPnpChanges after it calls the INetCfgComponentControl::ApplyRegistryChanges method and after drivers and services for the particular network component have started. In the ApplyPnpChanges call, the network configuration subsystem passes the INetCfgPnpReconfigCallback interface. The component's notify object can use the INetCfgPnpReconfigCallback interface to send configuration information to the component's driver. This driver must be either a TDI provider or an NDIS miniport driver.
The notify object can call INetCfgPnpReconfigCallback::SendPnpReconfig within its ApplyPnpChanges implementation to send configuration information to its component's driver. SendPnpReconfig passes configuration information to the driver.
Alternatively, the notify object can call the Win32 CreateFile function to open a connection to its component's driver. The notify object can call the Win32 DeviceIoControl function to send a control code along with input data directly to its component's driver.
The notify object is not required to use INetCfgPnpReconfigCallback. But, if the notify object uses INetCfgPnpReconfigCallback, a user will not be required to reboot the operating system to cause configuration changes to take effect in the driver.