function GetAdapterSN(num: integer): string;
var
ibuf: array [0..5] of Byte;
sn: string[12];
i: integer;
st: string;
pbuf: PChar;
ncb: TNCB;
uRetCode: CHAR;
lana_enum: TLANAENUM;
begin
FillChar(ncb, sizeof(ncb), 0);
ncb.ncb_command := Char(NCBENUM);
uRetCode := Netbios( @ncb );
ncb.ncb_buffer := @lana_enum;
ncb.ncb_length := sizeof(lana_enum);
uRetCode := Netbios( @ncb );// 获取网卡数量、编号信息。 此处返回值总是 7
// NRC_BADDR = $07; // illegal buffer address
if uRetCode = #0 then
......调试系统是 XP, 请问如何改正?
var
ibuf: array [0..5] of Byte;
sn: string[12];
i: integer;
st: string;
pbuf: PChar;
ncb: TNCB;
uRetCode: CHAR;
lana_enum: TLANAENUM;
begin
FillChar(ncb, sizeof(ncb), 0);
ncb.ncb_command := Char(NCBENUM);
uRetCode := Netbios( @ncb );
ncb.ncb_buffer := @lana_enum;
ncb.ncb_length := sizeof(lana_enum);
uRetCode := Netbios( @ncb );// 获取网卡数量、编号信息。 此处返回值总是 7
// NRC_BADDR = $07; // illegal buffer address
if uRetCode = #0 then
......调试系统是 XP, 请问如何改正?
解决方案 »
- excel 导入access
- 界面设计 要达到美观、稳定、灵活、风格统一 等要求 开发控件采用 tms 还是 devexpress 两个对比哪个好 ?
- 救命呀!!!!
- 请问有D7的文件删除复制改名移动的代码吗?
- 刚毕业的专科生,找delphi工作,一般月薪多少啊?大家说说。
- 用SPCOMM控件控制GSM MODEM发送中文短信的问题
- 怎么约束Edit中可以输入的信息
- 关于DBGrid刷新
- 如何使Delphi解析XML?
- 问问题!D5Form的visible属性怎么默认是False!还能看见??NT下面开发好的东东!怎么到了998下面Form乱跑!明明设置的好好好的!poDesktopCenter怎么跑到下面去了!倒~~望高手解决!
- 急阿急阿。。各位大哥帮帮忙。。
- 关于MSSQL数据库的一个简单问题。。。。HELP。。。
分不能给自己,删除贴子又没有信誉。
大家顶吧,这50分一定要送出去呀。
// 用SendARP获取MAC (我在win98使用该函数得不到MAC)
function SendARP( const DestIP : DWord; const SrcIP : DWord;
const pMacAddr : Pointer; const PhyAddrLen : PULONG) : DWord;
stdcall; external 'IPHLPAPI.DLL' name 'SendARP';....
function GetRemoteMAC(ip:string):String;
var
dwResult : DWord;
ulIPAddr : DWord;
ulMACAddr : Array [0..5] of Byte;
ulAddrLen : ULONG;
begin
ulIPAddr := inet_addr(PChar(ip));
ulAddrLen := 6;
FillChar(ulMACAddr, 6, $ff);
dwResult := SendARP(ulIPAddr,0,@ulMACAddr,@ulAddrLen);
if dwResult=0 then
Result:=(IntToHex(ulMACAddr[0],2)+
IntToHex(ulMACAddr[1],2)+
IntToHex(ulMACAddr[2],2)+
IntToHex(ulMACAddr[3],2)+
IntToHex(ulMACAddr[4],2)+
IntToHex(ulMACAddr[5],2));
end;
// vMac:String;
vtmpPath,vtmpFile:Pchar;
vOrder,vNewName:String;
vF:Integer;
vFile:PChar;
F:TextFile;
begin
vtmpPath:=GetMemory(MAX_PATH);
vtmpFile:=GetMemory(MAX_PATH);
GetTempPath(MAX_PATH,vtmpPath);
GetTempFileName(vtmpPath,'sh',0,vtmpFile);
vNewName:=ChangeFileExt(vtmpFile,'.bat');
vOrder:=format('nbtstat -a %s >%s',[AServerName,StrPas(vtmpFile)]);
AssignFile(F,vNewName);
Rewrite(F);
Writeln(F,vOrder);
CloseFile(F);
ShellExecute(Application.Handle,'open',PChar(vNewName),nil,nil,SW_HIDE);
Sleep(300);
vF:=FileOpen(StrPas(vtmpFile),fmOpenRead);
FileSeek(vF,0,0);
vSize:=FileSeek(vF,0,2);
FileSeek(vF,0,0);
vFile:=PChar(AllocMem(vSize + 1));
FileRead(vF,vFile^,vSize);
FileClose(vF);
Result:=ReadMacAddr(StrPas(vFile));
DeleteFile(StrPas(vtmpFile));
DeleteFile(vNewName);
FreeMem(vtmpPath);
FreeMem(vtmpFile);