delphi 實現通過ip位址獲取mac位址

2021-05-23 14:31:47 字數 658 閱讀 3764

function sendarp(ipaddr:ulong;temp:dword;ulmacaddr:pointer;ulmacaddrleng:pointer) : dword; stdcall;

external 'iphlpapi.dll' name 'sendarp';

function getmacbyip(const ip:string):string;

varmyip:ulong;

mymac:array[0..5] of byte;

mymaclength:ulong;

errcode:integer;

begin

myip:=inet_addr(pchar(ip));

mymaclength:=length(mymac);

errcode:=sendarp(myip,0,@mymac,@mymaclength);

if errcode = 0 then

result := format('%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x',[mymac[0],mymac[1],mymac[2],mymac[3],mymac[4],mymac[5]])

else

result := ''; //eorrcode: errcode

end;

通過HttpModule實現IP位址遮蔽功能

本文將介紹通過實現ihttpmodule介面,進行判斷和遮蔽ip位址的方法。httomodule的基礎知識可以參閱這裡 閱讀前請先參閱 細說asp.net的ip位址遮蔽功能設計 首先,新建乙個類,名為ipfilter,繼承自ihttpmodule介面 實現ihttpmodule介面,並為contex...

delphi獲取本機IP位址

獲取本機ip位址,其實方法有很多了,現在用windows api 在delphi下實現如下 1.在uses 裡引用 winsock 單元。2.原始碼如下 delphi view plain copy print?function getlocalip string type tapinaddr ar...

通過廣播獲取ip位址的實現

但這個過程有幾個問題要考慮。第一點,如果接收方有多個網絡卡,我怎麼知道 hello 包是通過哪個網絡卡接收的呢?第二點,在接收方我可以用監聽那個廣播埠的socket來傳送訊息嘛?對於第一點,也是苦惱了我很久的問題,最終找到了方法 getsockname,這個函式可以根據addr來得到ip位址,用c語...