CNdisApi

CNdisApi::CNdisApi (const TCHAR* pszFileName = _T("NDISRD"));

Parameters:
pszFileName
Specifies device name to open.

Remarks:
CNdisApi class constructor opens WinpkFilter helper device with default name NDISRD (if you use a customized driver then most probably you should use your custom device name). More than one CNdisApi object can be created, but this is not recommended in general. Helper driver does not support per process (and per object contexts) so if a packet was read from the driver queue, then it means that it was removed from there. Moreover, only one event (last set) will be set to signal state on packet queuing. This architecture was chosen for performance reasons. However, you can use additional CNdisApi objects for reading network configuration, sending raw Ethernet frames to the network or to TCP/IP stack etc.