Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2009.08.16;
Скачать: [xml.tar.bz2];

Вниз

Характеристики сетевых адаптеров через WinPCap   Найти похожие ветки 

 
SVD ©   (2008-06-25 10:51) [0]

Добрый день
Определил через WinPCap количество и имена сетевых адаптеров. Теперь пытаюсь определить их характеристики с помощью PacketGetNetInfoEx:
var
pr:boolean;
s:string;
i,n:integer;
NPFIFAddr:PNPFIFAddr;
begin
for i:=0 to AdapterCnt-1 do
 begin
 s:=AdapterNames[i];
 pr:=PacketGetNetInfoEx(pchar(s),NPFIFAddr,@n);
 if pr then showmessage(inttostr(n));
 end;
end;

PacketGetAdapterNames дает наличие в системе 2 адаптеров. Вызов PacketGetNetInfoEx для каждого адаптера отдельно (с указанием его имени в вызове функции) дает для первого адаптера n=0, для второго - n=1. При выполнении приведенного кода для обоих адаптеров возвращается 0, а в NPFIFAddr ничего не заполняется. При выполнении цикла в обратном порядке (for i:=AdapterCnt-1 downto 0 do) все работает. Вопрос: почему не работает прямой порядок? Неужто если натывкаемся на адаптер, у которого возвращается 0, то для всех остальных тоже будет 0? Что-то не верится...


 
han_malign ©   (2008-06-25 12:34) [1]

var
   pr:boolean;
   s:string;
   i,n:integer;
   NPFIFAddr:array[0..17]of TNPFIFAddr;
begin
   for i:=0 to AdapterCnt-1 do begin
       s:=AdapterNames[i];
       n:= Length(NPFIFAddr);
       pr:=PacketGetNetInfoEx(pchar(s),@NPFIFAddr[0],@n);
       if pr then showmessage(inttostr(n));
   end;
end;

http://www.reactos.org/generated/doxygen/d1/db9/group__packet32.html#ga27


 
Rouse_ ©   (2008-06-25 18:03) [2]

n:= Length(NPFIFAddr) * SizeOf(TNPFIFAddr);


 
han_malign ©   (2008-06-27 11:32) [3]


> Rouse_ ©
> n:= Length(NPFIFAddr) * SizeOf(TNPFIFAddr);

- там исходники есть, при просмотре которых видно, что sizeof - это глюк матрицы... На реальном опыте это подтверждается...


 
Rouse_ ©   (2008-06-27 11:44) [4]

Согласен... приписку в скобках не прочитал :)
> Size of the array (in npf_if_addr).



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2009.08.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
15-1245325093
Дмитрий С
2009-06-18 15:38
2009.08.16
iphone в качестве модема


2-1245537180
Нойвам
2009-06-21 02:33
2009.08.16
Обработка чекбоксов


15-1244795544
dmitry1991
2009-06-12 12:32
2009.08.16
ООП


15-1245203187
brother
2009-06-17 05:46
2009.08.16
Защита от AUTORUN.INF вирусов.


15-1245011026
DillerXX
2009-06-15 00:23
2009.08.16
Лексикографическая сортировка?!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский