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

Вниз

Определение MAC-адреса УДАЛЁННОГО компьютера   Найти похожие ветки 

 
Volf_555   (2005-10-15 23:48) [0]

Как определить MAC-адрес удалённого компьютера по IP-адресу?


 
Alex Konshin ©   (2005-10-16 00:38) [1]

Насколько удаленного? В локалке?
Если в одном сегменте сети, то через IP Helper API, смотри в MSDN.


 
Volf_555   (2005-10-16 01:04) [2]

Дай ссылку на MSDN


 
antoxa2005   (2005-10-16 03:35) [3]

А как определить MAC-адрес текущего компьютера, но чтобы на всех ОС работало Win98-Win2003 или хотябы -WinXP(Sp2)


 
Volf_555   (2005-10-17 02:08) [4]

>>antoxa2005
Смотри следующую ссылку:
http://newgalaxy.alfaspace.net/forum/topic.php?forum=29&topic=1


 
Volf_555   (2005-11-10 18:32) [5]

Народ! Так как же всё таки определить MAC-адрес удалённого компьютера по IP-адресу?


 
Verg ©   (2005-11-11 10:44) [6]

SendARP

function SendARP(DestIP:DWORD;SrcIP:DWORD; var pMacAddr; var PhyAddrLen:DWORD):DWORD;stdcall;

implementation
function   SendARP;          external "IPHLPAPI.DLL";


 
Volf_555   (2005-11-12 14:05) [7]

Приведи пример использования этой команды!
Следующий код вызывает ошибку:
SendARP(10.0.0.1;что за SrcIP??;это здевь вручную мак-адрес писать?!; а тут что?)
И как DWORD перевести в String в дальнейшем?


 
Васяня   (2005-11-28 05:45) [8]


unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, Winsock, ExtCtrls;

const
 MAX_ADAPTER_ADDRESS_LENGTH = 6;

type
 TMacAddress = array[0..MAX_ADAPTER_ADDRESS_LENGTH - 1] of byte;

 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 end;

 function SendARP(const DestIP, SrcIP: ULONG;
   pMacAddr: PULONG; var PhyAddrLen: ULONG): DWORD; stdcall; external "IPHLPAPI.DLL";

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

 function GetMAC(Value: TMacAddress; Length: DWORD): String;
 var
   I: Integer;
 begin
   if Length = 0 then Result := "00-00-00-00-00-00" else
   begin
     Result := "";
     for i:= 0 to Length - 2 do
       Result := Result + IntToHex(Value[i], 2) + "-";
     Result := Result + IntToHex(Value[Length-1], 2);
   end;
 end;

var
 DestIP, SrcIP: ULONG;
 pMacAddr: TMacAddress;
 PhyAddrLen: ULONG;
begin
 DestIP := inet_addr("192.168.2.115");
 PhyAddrLen := 6;
 SendArp(DestIP, 0, @pMacAddr, PhyAddrLen);
 Caption := GetMAC(pMacAddr, PhyAddrLen);
end;

end.



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

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

Наверх




Память: 0.46 MB
Время: 0.013 c
2-1140728066
lex85
2006-02-23 23:54
2006.03.12
кнопка button1


15-1139894641
Лисенок
2006-02-14 08:24
2006.03.12
без темы


3-1137321654
Корешь
2006-01-15 13:40
2006.03.12
Как узнать, что набор данных в DataSet был изменен


2-1140427780
nap<>
2006-02-20 12:29
2006.03.12
TPageControl


4-1134816898
Igor_thief
2005-12-17 13:54
2006.03.12
Проблема с Hook om





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский