社区
Delphi
帖子详情
如何用delphi获得网卡的物理地址
fengyer
2000-06-09 12:35:00
...全文
399
7
打赏
收藏
如何用delphi获得网卡的物理地址
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fengyer
2000-06-24
打赏
举报
回复
谢谢各位大侠的指点,我已解决了这个问题
w102272
2000-06-14
打赏
举报
回复
看我的!
//获取网卡地址,使用netbios 3.0调用 uses nb30.pas shipped with delphi 4.0
function _NetCardAddress : String ;
var
NCB : TNCB ; // Netbios control block
ADAPTER : TADAPTERSTATUS ; // Netbios adapter status
LANAENUM : TLANAENUM ; // Netbios lana
intIdx : Integer ; // Temporary work value
CRC : Char ; // Netbios return code
strTemp : String ; // Temporary string
begin
Result := '' ;
try
ZeroMemory(@NCB,SizeOf(NCB)) ; // Zero control blocl
NCB.ncb_command := Chr(NCBENUM) ; // Issue enum command
cRC := NetBios(@NCB) ;
if Ord(cRC)>0 then begin
result:=_NBReturnMSG(crc);
exit ;
end;
NCB.ncb_buffer := @LANAENUM ; // Reissue enum command
NCB.ncb_length := SizeOf(LANAENUM);
cRC := NetBios(@NCB) ;
if Ord(cRC)>0 then begin
result:=_NBReturnMSG(crc);
exit ;
end;
ZeroMemory(@NCB,SizeOf(NCB)) ; // Reset adapter
NCB.ncb_command := Chr(NCBRESET) ;
NCB.ncb_lana_num := LANAENUM.lana[0] ;
cRC := NetBios(@NCB) ;
if Ord(cRC)>0 then begin
result:=_NBReturnMSG(crc);
exit ;
end;
ZeroMemory(@NCB,SizeOf(NCB)) ; // Get adapter address
NCB.ncb_command := Chr(NCBASTAT) ;
NCB.ncb_lana_num := LANAENUM.lana[0] ;
StrPCopy(NCB.ncb_callname,'*') ;
NCB.ncb_buffer := @ADAPTER ;
NCB.ncb_length := SizeOf(ADAPTER) ;
cRC := NetBios(@NCB) ;
if Ord(cRC)>0 then begin
result:=_NBReturnMSG(crc);
exit ;
end; // Convert Netcard address it to string
strTemp := '' ;
for intIdx := 0 to 5 do strTemp := strTemp + _Char2Hex(ADAPTER.adapter_address[intIdx]) ;
Result := strTemp ;
finally
end ;
end ;
zxghl
2000-06-14
打赏
举报
回复
不知你指的是在Window3.2(16Bit Delphi)还是Windows95&98&2000(32Bit Delphi),如果是32位Delphi,使用Netbios(nb30.pas),如果是16位Delphi,使用NetBiosCall(汇编语言)。前一段时间从网上下载了一个控件,可以实现此功能,如果需要,请告知:ZXGHL&NETEASE.COM。
hhzh426
2000-06-13
打赏
举报
回复
很感兴趣!
sundyl
2000-06-09
打赏
举报
回复
我的机器没有安装网卡也可以获得GUID,这时候我增么才能知道,机器有没有安装网卡。
如果认为安装了一个悉尼的网卡,我又该如何区分呢?
usage
2000-06-09
打赏
举报
回复
获得GUID,后48位即是!
halfdream
2000-06-09
打赏
举报
回复
我这儿有一个程序。不过程序是BCB的。如果你的话我EMAIL给你。
delphi
获取
网卡
物理地址
Delphi
获取当前计算机内所有
网卡
的
物理地址
。 设计思路: 1 从注册表内获取计算机内所有
网卡
列表 2 根据
网卡
ID来获取各
网卡
的mac地址 此获取规范比之网络上流传的大部分
delphi
获取
网卡
的源码都实用。 PS:当
网卡
被禁用后,此
网卡
的MAC地址不再显示。
Delphi
获取真实物理
网卡
地址
Delphi
获取当前
网卡
地址 永久
网卡
地址 厂商信息
判断物理
网卡
,无线
网卡
,mac地址,网络连接状态
这是一个包含检查
网卡
是否为物理
网卡
(查看
网卡
是否使用irq或设备名是否包含pci,有些hp服务器没有irq但也是物理设备),查看
网卡
物理mac和当前使用的mac(有些
网卡
可以修改mac)使用xpddk头文件和库文件就可以,检查
网卡
是否为无线
网卡
(通过deviceiocontrol让
网卡
搜寻无线网络,支持的是无线
网卡
,不支持的不是),以上程序部分使用vc编写,可以说比现在网络上介绍的方法都要准确,唯一缺点是对禁用网络设备不支持,必须启用才可以,另外程序中还提供了网络连接状态检测。
MAC/
网卡
IP地址获取
Delphi
程序.rar
Delphi
获取电脑IP地址、MAC
网卡
物理地址
、本机名称等,网络相关信息获取,基本的
Delphi
网络参数获取代码,高手请绕行吧。通过调用Api函数gethostname,gethostbyname,wsastartup,uses中加winsock,介绍wsadata,phostent,msdn,另外gethostaddress。 function NBGetAdapterAddress(a: integer): String; a指定多个
网卡
适配器中的哪一个0,1,2... NCB:TNCB; // Netbios control block file://NetBios控制块 ADAPTER : TADAPTERSTATUS; // Netbios adapter status//取
网卡
状态 LANAENUM : TLANAENUM; // Netbios lana intIdx : Integer; // Temporary work value//临时变量 cRC : Char; // Netbios return code//NetBios返回值 strTemp : String; // Temporary string//临时变量 WSAstartup在使用gethostname,gethostbyname前,一定不要忘了初始化WS2_32.DLL。
Delphi
获取
网卡
、硬盘、CPU信息 设置U盘、移动硬盘只读属性.rar
U盘、移动存储、硬盘设备只读属性设置
Delphi
代码,获取
网卡
、硬盘、CPU硬件信息,获取硬盘驱动器信息。同时还有机器码和序列号相关模块示例,U盘保护等。参数: Drive 驱动器盘符 如C、D、E,不要带 :\ InfoID =1 获取驱动器序列号 InfoID =2 获取卷标 获取硬盘物理序列号、枚举当前安装的网络适配器
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章