Re[5]: получение MAC адреса
От: Flex2 Россия  
Дата: 30.01.04 15:37
Оценка:
Здравствуйте, ebersen, Вы писали:

E>Здравствуйте, Flex2, Вы писали:


F>>Здравствуйте, ebersen, Вы писали:


E>>>Здравствуйте, Flex2, Вы писали:


F>>>>Здравствуйте, ebersen, Вы писали:


E>>>>>Привет Всем!


E>>>>>Не подскажет ли кто-нить, как получить MAC адрес сетевухи (сетевух) стоящих в системе (XP). Пробовал всякие GetAdaptersInfo(), но это всё не то — если тривиально выключить сеть, то указанная функция ничего не обнаружит...


F>>>>1. есть хорошая команда ARP ДОС сесии. Типа ARP>>filename.txt, а потом разбираешь файл

F>>>>2. через WinSock(не помню как, гже-то исходники валялись)
F>>>>3 пошли сам себе сообщение и заснифь пакет IP

E>>>Но эти способы, на сколько я понимаю, тоже не будут работать при выключении сети...


F>>Будут.

F>>Есть еще одно.
F>>Придется помучатся, но можно открыть дрова, эдементраной командой CreateFile и дергать сервис API DDK, он 100% имеет такую-то апи аппаратура-ядро-ситема(это тебе в DDK или ставь Numega — для разработчиков драйверов, VS от 6.0 интегрируется.)
F>>Однакодумаю что есть более простой способ.

F>>И что значит выключенная сеть ?

F>>Если нет драйва под карту сетки то нет. если все "ок" и сам себя видишь то все будет работать.

E>Выключенная сеть означает, что для Local Area Connection просто юзер сделал Disable. От этого же карта не перестала существовать со своим MAC'ом, но трафика ужо никакого нету.


Вопрос не в том к чему ты стучишься а в том как.
В данном случе парень хочет поиметь мак-адрес катры. ну и попролбуй, безVXD, WDM, SYS достучаться до адреса(хрен его знает какой) по базовому адрему сетевухи, как минимум тебе надо иметь привилегии уровня ядра, а имеено 0-1, и хто тебя пустит ? Уверен, что есть API, что облегчает, и что радует API форточек, либо это значение возвращается в качестве результат в структуру. Надеюсь по крайне мере.

Не знаю задачи, если быстро и надежно я бы выгрузку сгрузку в файл и потом его распарсил. Хоть как-то, но работало, а правильно потом-потом.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.