Jochen Arndt
Сначала вы должны определить, что делает сетевой адаптер основным, потому что нет фиксированного определения.
Общее определение состоит в том, что этот адаптер является основным, который используется для подключения к интернету. Тогда у него есть один (или несколько) адресов шлюза (маршрутов). Вы можете получить список ваших сетевых адаптеров и позвонить Функция GetAdaptersInfo (Windows)[^] для каждого из них проверка GatewayList
.
Но обратите внимание, что для одного адаптера может быть несколько шлюзов и что несколько адаптеров могут иметь настроенные шлюзы. В последнем случае у вас будет несколько" первичных " адаптеров для такого определения.
Если ваша система является частью интернет-домена (локального или Всемирного), другое определение заключается в том, что adpater, привязанный к этому домену, является основным. Если да, то используйте Функция GetNetworkParams (Windows)[^] чтобы получить HostName
Если это полное имя хоста, разрешите его, чтобы получить IP-адрес (DNS-запрос), который затем указывает" основной " адаптер для такого определения.