Delphi如何获取无线网卡mac地址(50分)

  • 主题发起人 主题发起人 wlm217
  • 开始时间 开始时间
W

wlm217

Unregistered / Unconfirmed
GUEST, unregistred user!
Delphi如何获取无线网卡mac地址
 
全文检索 得到NB30.pas 单元
 
获得MAC地址
unit Unit1;

interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls,nb30;
type
PASTAT = ^TASTAT;
TASTAT = record
adapter : TAdapterStatus;
name_buf : TNameBuffer;
end;

type
TForm1 = class(TForm)
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
private
function Getmac:string;
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin

label1.caption:=Getmac;
end;

function TForm1.Getmac:string;
var
ncb : TNCB;
s:string;
adapt : TASTAT;
lanaEnum : TLanaEnum;
i, j, m : integer;
strPart, strMac : string;
begin

FillChar(ncb, SizeOf(TNCB), 0);
ncb.ncb_command := Char(NCBEnum);
ncb.ncb_buffer := PChar(@lanaEnum);
ncb.ncb_length := SizeOf(TLanaEnum);
s:=Netbios(@ncb);
for i := 0 to integer(lanaEnum.length)-1do

begin

FillChar(ncb, SizeOf(TNCB), 0);
ncb.ncb_command := Char(NCBReset);
ncb.ncb_lana_num := lanaEnum.lana;
Netbios(@ncb);
Netbios(@ncb);
FillChar(ncb, SizeOf(TNCB), 0);
ncb.ncb_command := Chr(NCBAstat);
ncb.ncb_lana_num := lanaEnum.lana;
ncb.ncb_callname := '* ';
ncb.ncb_buffer := PChar(@adapt);
ncb.ncb_length := SizeOf(TASTAT);
m:=0;
if (Win32Platform = VER_PLATFORM_WIN32_NT) then

m:=1;
if m=1 then

begin

if Netbios(@ncb) = Chr(0) then

strMac := '';
for j := 0 to 5do

begin

strPart := IntToHex(integer(adapt.adapter.adapter_address[j]), 2);
strMac := strMac + strPart + '-';
end;

SetLength(strMac, Length(strMac)-1);
end;

if m=0 then

if Netbios(@ncb) <>
Chr(0) then

begin

strMac := '';
for j := 0 to 5do

begin

strPart := IntToHex(integer(adapt.adapter.adapter_address[j]), 2);
strMac := strMac + strPart + '-';
end;

SetLength(strMac, Length(strMac)-1);
end;

end;

result:=strmac;
end;

end.


获网卡MAC地址的方法
http://www.delphibbs.com/delphibbs/dispq.asp?lid=541922
修改MAC地址的方法
http://www.delphibbs.com/delphibbs/dispq.asp?lid=387406

有问题先查查以前的帖子
 
后退
顶部