:: Visual Foxpro, Foxpro for DOS
IP и MAC адреса
Божья_коровка
Автор

Сообщений: 25731
Дата регистрации: 23.08.2001
Всем привет!

Сижу тренируюсь, хочу получить вот такую строку - MAC1 - IP1.1,IP1.2,IP1.n, MAC2 -IP2.1,IP2.2,IP2.n программно. Без командной строки и без того чтобы всё скинуть в текстовый файл а потом парсить сидеть.
Вот потренировалась -

Получение всех MAC

MACAddress = ""
oWMI = Getobject("winmgmts:")
Items = oWMI.ExecQuery("Select * From Win32_NetworkAdapter")
For Each Item In Items
IF NOT ISNULL(Item.MACAddress)
MACAddress = MACAddress+Item.MACAddress+','
ENDIF
next
MESSAGEBOX(MACAddress)

Получение IP тех которые активны -

sIP=""
oWMI = Getobject("winmgmts:")
oAdapters = oWMI.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=True")
For Each oAdapter In oAdapters
If Not Isnull(oAdapter.ipaddress)
For Each cAddress In oAdapter.ipaddress
If !cAddress$sIP
sIP=sIP+cAddress+','
Endif
Next
Endif
NEXT
MESSAGEBOX(sIP)

Как мне зная IP получить MAC или наоборот, чтобы сформировать строку в том порядке, что я привела выше?


------------------
Жись, она как зёбра, полоса белая, полоса черная, а мне всегда задница достается...




Исправлено 2 раз(а). Последнее : Божья_коровка, 13.04.18 13:33
Ratings: 0 negative/0 positive
Re: IP и MAC адреса
Божья_коровка
Автор

Сообщений: 25731
Дата регистрации: 23.08.2001
Всё вопрос решился Тему можно закрыть


------------------
Жись, она как зёбра, полоса белая, полоса черная, а мне всегда задница достается...
Ratings: 0 negative/0 positive
Re: IP и MAC адреса
VeterVFP

Сообщений: 413
Откуда: Москва
Дата регистрации: 26.12.2006
А нам интересно, как именно вдруг пригодится кому ;)
Ratings: 0 negative/0 positive
Re: IP и MAC адреса
of63

Сообщений: 25256
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Все содержится в единственном запросе к WMI:
oWMI = Getobject("winmgmts:")
oAdapters = oWMI.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=True") && собственно получаем коллекцию адаптеров (МАК-ов и их IP)
* далее просто разбор коллекции адаптеров и их IP
sIP = "" && соберем строки - МАК: IP,IP...
For Each oAdapter In oAdapters && перебираем адаптеры
If Not Isnull(oAdapter.ipaddress) && привязаны ли какие IP к адаптеру?
sIP = sIP + CHR(13) + oAdapter.MACAddress + ": " && МАК адаптера
For Each cAddress In oAdapter.ipaddress && перебираем коллекцию IP адаптера
sIP=sIP + cAddress + ',' && например, собираем строку - список IP
Next
Endif
NEXT
? sIP
Ratings: 0 negative/1 positive
Re: IP и MAC адреса
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
Божья_коровка
Как мне зная IP получить MAC
тащемта на одном маке может сидеть более одного айпи


------------------
Позовите санитаров
Ratings: 0 negative/0 positive
Re: IP и MAC адреса
Божья_коровка
Автор

Сообщений: 25731
Дата регистрации: 23.08.2001
spinz
Божья_коровка
Как мне зная IP получить MAC
тащемта на одном маке может сидеть более одного айпи
Да знаю я Или ты не прочитал первичное условие, какую строку я хотела сформировать?
Цитата:
хочу получить вот такую строку - MAC1 - IP1.1,IP1.2,IP1.n, MAC2 -IP2.1,IP2.2,IP2.n программно.


PS: Офа, уже выложил работающий код, который делает то, что надо Первоначально я не знала, что вот тут и MAC сидят - Win32_NetworkAdapterConfiguration. Поэтому и не знала с какого боку подойти.

PPS: документашка по WMI, может кому еще пригодится - msdn.microsoft.com


------------------
Жись, она как зёбра, полоса белая, полоса черная, а мне всегда задница достается...
Ratings: 0 negative/0 positive
Re: IP и MAC адреса
spinz

Сообщений: 5263
Дата регистрации: 21.01.2016
Божья_коровка
я хотела сформировать
Вот, у женщин всегда к этому сводится. "Я хотела, я хочу, достань мне луну с неба"


------------------
Позовите санитаров
Ratings: 0 negative/0 positive
Re: IP и MAC адреса
of63

Сообщений: 25256
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Лен, ты сама все нашла. Этот WMI-запросы (Win32_NetworkAdapter, Win32_NetworkAdapterConfiguration ), получила IP, связь МАК-IP только не прочуствовала, разбор возвращенных коллекций то есть.

ПС. Не касаюсь, зачем нужны такие списки )
Ratings: 0 negative/0 positive
Re: IP и MAC адреса
Berloga

Сообщений: 72
Откуда: Нефтекамск
Дата регистрации: 19.12.2007
Можно просто написать IPAddress(0). И проверять на NULL нет необходимости, ибо уже стоит условие IPEnabled = True



Исправлено 1 раз(а). Последнее : Berloga, 17.04.18 15:40
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 32 (Гостей: 32)

© 2000-2024 Fox Club 
Яндекс.Метрика