2011-01-28 1 views
0

У меня есть этот фрагмент кода, это в Java:Java для VB.Net преобразования [небольшой фрагмент]

final InetAddress address = InetAddress.getLocalHost(); 
final NetworkInterface ni = NetworkInterface.getByInetAddress(address); 
key = new String(ni.getHardwareAddress()); 

Пример ключа выхода: ▲ ╔UiÎ

Что такое эквивалент в VB.Net? Я понимаю, что первая строка получает Local Host, а как же остальные? Заранее спасибо.

+3

Оставляя преобразование в стороне, создание строки из произвольных байтов - ужасная идея - усугубляется тем фактом, что вы не указываете кодировку символов для использования. –

ответ

1

Это перебирает все локальные интерфейсы:

Dim theNetworkInterfaces() as System.Net.NetworkInformation.NetworkInterface = System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces() 

for each curInterface as System.Net.NetworkInformation.NetworkInterface in theNetworkInterfaces 

    MessageBox.Show(curInterface.GetPhysicalAddress().ToString()) 

Физический адрес является то, что вы хотите.

Линия

final NetworkInterface ni = NetworkInterface.getByInetAddress(address); 

просто захватывает конкретный сетевой интерфейс в InetAddress Say вы храните ваш адрес локального хоста в переменной с именем localIa, а затем вы можете использовать его:

NetworkInterface ni = NetworkInterface.getByInetAddress(localIa) 
ni.GetPhysicalAddress().ToString() 

 Смежные вопросы

  • Нет связанных вопросов^_^