Вы недоразумение. Это список, как следует из названия, все сетевые интерфейсы. Bluetooth и Wi-Fi (и даже RNDIS USB-соединения) являются сетевыми интерфейсами и поэтому будут перечислены. В сущности, это просто просит NDIS рассказать нам обо всех интерфейсах, о которых он знает.
Пока он повторяется, он делает две вещи. Во-первых, он спрашивает WZC, знает ли он об интерфейсе (то есть, зарегистрирован ли драйвер интерфейса в WZC). Если это так, то мы знаем, что это беспроводное устройство, совместимое с WZC, и мы получаем для него дополнительную информацию и возвращаем интерфейс WirelessZeroConfig.
Затем мы спрашиваем NDIS, является ли драйвер для устройства, заявившего о себе как о беспроводном. Если это так, мы получаем информацию NDIS для беспроводных сетей и возвращаем беспроводной интерфейс.
Все остальное становится общим NetworkInterface.
Итак, как беспроводное устройство может отображаться как универсальный сетевой интерфейс? Просто. Драйвер для него не был зарегистрирован в WZC, а также не сообщает, что он является беспроводным через NDIS. Наш код не может обнаружить то, что драйвер не сообщает. На самом деле это в некоторой степени характерно для старых плат Cisco, в которых для беспроводной связи используется фирменный интерфейс Cico. Они физически являются беспроводным устройством, но поскольку программное обеспечение не сообщает нам, что это так, и поскольку мы не запрашиваем никаких проприетарных API, все, что мы можем сделать, - это вернуть общую информацию NDIS для адаптера.
Если у вас есть такое устройство, единственный выход - поговорить с производителем адаптера и посмотреть, есть ли у него API для него, который вы можете использовать.