Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Определения мак адреса всех машин в сети/домене 
:(
    Опции темы
Guest
Дата 1.11.2005, 16:38 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Привет всем. Требуется получить MacAddr's всех машин в сети/домене (Фунция GetAdaptersInfo возвращает только для локальной машины). Если это - сложно/невозможно, то как получить по MacAddr ip addr?
  Вверх
p0s0l
Дата 2.11.2005, 09:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: нет
Всего: 112



Пример из MSDN - перевод IP->MAC:
Код

//
// Link with ws2_32.lib and iphlpapi.lib
//

#include <windows.h>
#include <stdio.h>
#include <tchar.h>
#include <iphlpapi.h>


int __cdecl main()
{
    HRESULT hr;
    IPAddr  ipAddr;
    ULONG   pulMac[2];
    ULONG   ulLen;

    ipAddr = inet_addr ("216.145.25.31");
    memset (pulMac, 0xff, sizeof (pulMac));
    ulLen = 6;
    
    hr = SendARP (ipAddr, 0, pulMac, &ulLen);
    printf ("Return %08x, length %8d\n", hr, ulLen);
    
    size_t i, j;
    char * szMac = new char[ulLen*3];
    PBYTE pbHexMac = (PBYTE) pulMac;

    //
    // Convert the binary MAC address into human-readable
    //
    for (i = 0, j = 0; i < ulLen - 1; ++i) {
        j += sprintf (szMac + j, "%02X:", pbHexMac[i]);
    }
    
    sprintf (szMac + j, "%02X", pbHexMac[i]);
    printf ("MAC address %s\n", szMac);
    
    delete [] szMac;

    return 0;
}
Узнаешь IP адреса компов в сетке (это уже другой вопрос), и для каждого IP выполняешь этот код...


--------------------
С уважением, г-н Посол.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0391 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.