Используя приведенный ниже код, я получу все сетевые интерфейсы, которые включены и работают на машине.
Private netIntrfc As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces()
For i As Integer = 0 To netIntrfc.Length - 1
If netIntrfc(i).OperationalStatus = OperationalStatus.Up Then
netDevicesList.Items.Add(netIntrfc(i).Name.ToString)
End If
Next
Но моя проблема в том, как получить значение по умолчанию один, то есть ( Ethernet-адаптер ), через который пользователь подключен к Интернету?
Мне нужно изменить некоторые настройки по умолчанию ( через который пользователь подключен к интернету ) адаптер. Настройки, которые я изменяю через реестр, чтобы я мог добавить те же настройки для каждого сетевого интерфейса, но это может вызвать проблемы и не имеет смысла: D
Может кто-нибудь помочь? Спасибо! ;)
РЕДАКТИРОВАНИЕ:
на данный момент я сделал, как код ниже, так что если это может помочь кому-то другому ... :)
но если у кого-то есть жидкое или более надежное решение, отправьте, пожалуйста,
Dim u As UdpClient = New UdpClient(System.Net.Dns.GetHostName, 1)
Dim localAddr As IPAddress = CType(u.Client.LocalEndPoint, IPEndPoint).Address
Private netIntrfc As NetworkInterface() = NetworkInterface.GetAllNetworkInterfaces()
For i As Integer = 0 To netIntrfc.Length - 1
If netIntrfc(i).OperationalStatus = OperationalStatus.Up Then
For Each uni As NetworkInformation.UnicastIPAddressInformation In ipProps.UnicastAddresses
If uni.Address.ToString = localAddr.ToString Then
netDevicesList.Items.Add("DEFAULT: " & netIntrfc(i).Name.ToString)
DEFDEVID = netIntrfc(i).Id.ToString
End If
Next
netDevicesList.Items.Add(netIntrfc(i).Name.ToString)
End If
Next
Спасибо Томас-Ли и этот пост