Форум: "Сети";
Текущий архив: 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