Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.06.2016, 07:09   #1
Ecosasha
Форумчанин
 
Регистрация: 22.05.2009
Сообщений: 248
По умолчанию Как узнать Mac-адрес реального сетевого адаптера

Для извлечения списка Mac-адресов используется известная функция. Она выводит список Mac-адресов реальных и виртуальных сетевых адаптеров. Но как понять, какой из них не от виртуальной машины или чего-то другого, а реальный, то есть используемый, например, в текущий момент сетевой адаптер?

Код:
function GetMACAddressOfNetwordDrives(var LstInfo:TStringList; var LstMAC:TStringList):boolean;
var
  TmpPointer, InterfaceInfo: PIP_ADAPTER_INFO;
  IP: PIP_ADDR_STRING;
  Len: ULONG;
  i:integer;
  st:string;
begin
  Result:=false;

  if GetAdaptersInfo(nil, Len) = ERROR_BUFFER_OVERFLOW then
  begin
    GetMem(InterfaceInfo, Len);
    if GetAdaptersInfo(InterfaceInfo, Len) = ERROR_SUCCESS then begin
      TmpPointer := InterfaceInfo;
      repeat
        st:='';
        for i:=0 to TmpPointer^.AddressLength-1 do
        begin
          st:=st+IntToHex(TmpPointer^.Address[i],2);
          if i<TmpPointer^.AddressLength-1 then st:=st+'-';
        end;
        LstInfo.Add(string(TmpPointer^.Description)); 
        LstMAC.Add(st); ///<-- Здесь все верно - MAC-адрес

//showmessage(string(TmpPointer^.AdapterName)+' '+string(TmpPointer^.Description));

      TmpPointer := TmpPointer.Next;
      until TmpPointer = nil;
    end;
    FreeMem(InterfaceInfo);
  end;

  Result:=True;
end;
Ecosasha вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка сетевого адаптера rakro C# (си шарп) 1 13.12.2012 12:49
узнать имя сетевого интерфейса его IP/Mac StartMis Работа с сетью в Delphi 1 19.11.2011 21:10
Как узнать MAC адрес? HTL Общие вопросы Delphi 1 05.06.2010 09:22
как узнать ip адрес зная mac адрес Roman Работа с сетью в Delphi 9 25.06.2007 12:39