uses Nb30;

//一般用默认的 0 就可以了
function GetMacAddress(const Index:Integer =):string;
var
ncb : TNCB; {NetBios控制块}
AdapterS : TAdapterStatus; {网卡状态结构}
LanaNum : TLanaeNum; {Netbios Lana}
i : Integer;
rc : Char; {NetBios的返回代码}
str : String;
begin
Result := '';
try
ZeroMemory(@ncb, SizeOf(ncb)); {NetBios控制块清零}
ncb.ncb_command := chr(NCBENUM); {ENUM}
rc := NetBios(@ncb); {取返回代码} ncb.ncb_buffer := @LanaNum; {再一次处理ENUM命令}
ncb.ncb_length := SizeOf(LanaNum);
rc := NetBios(@ncb); {取返回代码} if Ord(rc)<> then Exit; ZeroMemory(@ncb, SizeOf(ncb)); {NetBios控制块清零}
ncb.ncb_command := chr(NCBRESET);
ncb.ncb_lana_num := LanaNum.lana[index];
rc := NetBios(@ncb);
if ord(rc)<> then Exit; ZeroMemory(@ncb, SizeOf(ncb)); {取网卡的状态}
ncb.ncb_command := chr(NCBASTAT);
ncb.ncb_lana_num := LanaNum.lana[index];
StrPCopy(ncb.ncb_callname,'*');
ncb.ncb_buffer := @AdapterS;
ncb.ncb_length := SizeOf(AdapterS);
rc := NetBios(@ncb); str := ''; {将MAC地址转换成字符串}
for i:= to do
str := str + IntToHex(Integer(AdapterS.adapter_address[i]),); Result := str;
if Result <>'' then
begin
Result :=Copy(Result ,,)+'-'+Copy(Result ,,) +'-'+Copy(Result ,,) +'-'+Copy(Result ,,) +'-'+Copy(Result ,,)+'-' +Copy(Result ,,)
end;
finally
end;
end;

 

取Mac地址的更多相关文章

  1. 取MAC地址 (含多网卡),最好的方法,支持Vista,Win7

    取MAC地址 (含多网卡),最好的方法,支持Vista,Win7 unit Unit1; interface usesWindows, Messages, SysUtils, Variants, Cl ...

  2. Powershell-获取MAC地址对应IP信息

    因业务需要在DHCP服务器上绑定设备MAC,提示"指定的IP地址或硬件地址正被其他客户端使用",与业务同事沟通之前该设备做过地址保留,具体对应地址遗忘了. 问题描述: a.按照用户 ...

  3. Kotlin 取 MAC 地址

    package com.example.ybs.myapplication import android.annotation.SuppressLint import android.net.wifi ...

  4. 读取Android设备的MAC地址

    读取Android设备的MAC地址   AndroidUtil.java package com.csdn.android.util; import com.csdn.android.framewor ...

  5. Java获取网卡的mac地址

    为了项目的安全,有时候需要得到电脑的唯一码,比如:网卡的mac地址.和大家分享一下,下面是项目中用到的工具类: import java.io.BufferedReader;import java.io ...

  6. java 获取本地 mac 地址

    主要参考:Java获取本机MAC地址/IP地址/主机名 做的更改: 1.我的windows是中文版,程序中获取mac时是按照physical address 获取的,添加上"物理地址&quo ...

  7. Java获取主板序列号、MAC地址、CPU序列号工具类

    import java.io.File; import java.io.FileWriter; import java.io.BufferedReader; import java.io.IOExce ...

  8. tcpdump 基于mac地址抓取数据包

    1.刚刚接触tcpdump时,常用tcpdump -i eth1 host 192.168.1.1 这个命令基于ip地址抓取数据包信息. tcpdump -i eth1(接口名称) host 192. ...

  9. python-获取本机mac地址

    #!/usr/bin/env python #-*- coding:utf-8 -*- ############################ #File Name: getmac.py #Auth ...

随机推荐

  1. (转)新手C#SQL语句的学习2018.08.13

    1.创建数据库(create) CREATE DATABASE database-name 2.删除数据库(drop) drop database dbname 3.备份数据库 --- 创建 备份数据 ...

  2. Nexus 使用配置

    Nexus使用的一些基本设置 1.更改中央仓库地址为私服地址 既然我们配置了私服,那么相应的,我们的项目就应该使用Nexus的地址(Public Repository)来下载jar包 1.1.基于PO ...

  3. 5.Longest Palindromic Substring (String; DP, KMP)

    Given a string S, find the longest palindromic substring in S. You may assume that the maximum lengt ...

  4. ECMAScript6新特性之String API

    填充到指定长度,默认使用空格填充. 一 左填充 var arr = []; for(var i=0;i<20;i++){ var str = (i+'').padStart(2,'0'); ar ...

  5. ADF学习实用网站

    ADF中所有组件工功能例子 http://jdevadf.oracle.com/adf-richclient-demo/faces/components/dialog.jspx;jsessionid= ...

  6. 在ecplise中创建一个maven工程

    1.我们首先需要在Ecplise中配置maven环境,详情见我的博客:https://www.cnblogs.com/wyhluckdog/p/10277278.html 2.maven projec ...

  7. Spring框架的特点

    1. 为什么要学习Spring的框架 * 方便解耦,简化开发 * Spring就是一个大工厂,可以将所有对象创建和依赖关系维护,交给Spring管理 * AOP编程的支持 * Spring提供面向切面 ...

  8. CFR - another java decompiler批量反编译jar文件

    jd-gui众所周知,业界公认的反编译必备工具. 笔者目前遇到一个java项目,社区版,想做一个本地化的版本,询问官方,官方说闭源,无奈之下只能反编译了. 面对那么多jar,jd-gui一个个去反编译 ...

  9. 带你认识那些App可靠性设计

    可靠性是软件一个重要的质量属性,它关注的是软件功能持续的可用性,以及出现故障之后是否能够容错,是否能快速的恢复使用. 可靠性六条基本准则 1.故障应在第一时间被检测和感知: 2.能避免的故障都不应该发 ...

  10. OSGi 系列(十八)之 基于注解的 Blueprint

    OSGi 系列(十八)之 基于注解的 Blueprint 1. 注解实现 blueprint 第一步:bundle 添加 Bundle-Blueprint-Annotation <plugin& ...