Delphi获取本机的MAC地址:

uses

  NB30;

function GetAdaPterInfo(lana: Char): string;

var

  Adapter: TAdapterStatus;

  NCB: TNCB;

begin

  FillChar(NCB,Sizeof(NCB),0);

  NCB.ncb_command := Char(NCBRESET);

  NCB.ncb_lana_num := Lana;

  if Netbios(@NCB) <> Char(NRC_GOODRET) then

  begin

    Result := 'mac not found';

    exit;

  end;

  FillChar(NCB,Sizeof(NCB),0);

  NCB.ncb_command := Char(NCBASTAT);

  NCB.ncb_lana_num := Lana;

  NCB.ncb_callname := '*';

FillChar(Adapter,Sizeof(Adapter),0);

  NCB.ncb_buffer := @Adapter;

  NCB.ncb_length := Sizeof(Adapter);

  if Netbios(@NCB) <> Char(NRC_GOODRET) then

  begin

    result :='mac not found';

    Exit;

  end;

  Result := 

    IntToHex(Byte(Adapter.adapter_address[0]), 2) + '_'+

    IntToHex(Byte(Adapter.adapter_address[1]), 2) + '_'+

    IntToHex(Byte(Adapter.adapter_address[2]), 2) + '_'+

    IntToHex(Byte(Adapter.adapter_address[3]), 2) + '_'+

    IntToHex(Byte(Adapter.adapter_address[4]), 2) + '_'+

    IntToHex(Byte(Adapter.adapter_address[5]), 2) ;

end;

function GetMACAddress: string;

var

  AdapterList: TLanaEnum;

  NCB: TNCB;

begin

  FillChar(NCB,Sizeof(NCB),0);

  NCB.ncb_command := Char(NCBENUM);

  NCB.ncb_buffer := @AdapterList;

  NCB.ncb_length := SizeOf(AdapterList);

  Netbios(@NCB);

  if Byte(AdapterList.length) > 0 then

    Result := GetAdapterInfo(AdapterList.lana[0])

  else

    Result := 'mac not found';

end;

调用: s:= GetMACAddress;

Delphi获取本机的MAC地址的更多相关文章

  1. JAVA获取本机的MAC地址

    /** * 获取本机的Mac地址 * @return */ public String getMac() { InetAddress ia; byte[] mac = null; try { // 获 ...

  2. C#获取本机的MAC地址

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.M ...

  3. 获取本机的IP地址和mac地址

    1. 以前一直用ipconfig来查看ip地址,哈哈哈,现在发现挺好玩 #获取本机的IP地址和mac地址 import uuid import socket def get_mac_address() ...

  4. 【Win 10 应用开发】获取本机的IP地址

    按照老规矩,也是朋友的建议,老周今天在吹牛之前,先讲一个小故事. 有朋友问我,老周,你现在还发短信吗,你每个月用多少电话费?唉,实话说,现在真的发短信不多了,套餐送的130条短信,每月都发不了一条.至 ...

  5. 获取本机的IP地址(局域网)与主机名称

    编写内容保存为bat @echo off &setlocal enabledelayedexpansion Rem '/*========获取本机的IP地址(局域网)=========*/ e ...

  6. ASP.NET获取客户端IP及MAC地址

    朋友最近问如何获取客户端IP及MAC地址,一直想把这段给整理一下,契机来了:下边分为了C#后台获取的方法和前台Javascript(调用ActiveX)获取的方法,大家如果有好的方法一起讨论撒O(∩_ ...

  7. Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP

    Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP IP 工具类 源代码: /** * <p> * * @author XiaoPengwei ...

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

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

  9. 如何获取公网IP的mac地址

    如何获取远程IP的mac地址 思路分析 由于java本身没有相关的jar包进行获取,所以这里介绍从其他的方面进行入手和实践 使用的工具对比: tcpdump tshark pcap4j 都可以达到抓包 ...

随机推荐

  1. C# 获取机器码

    using System.Runtime.InteropServices; using System.Management; using System; public class HardwareIn ...

  2. oracle-闪回技术1

    http://blog.csdn.net/lqx0405/article/details/44776737  Oracle Study案例之--基于表空间的时间点恢复(TSPITR) DBPITR 数 ...

  3. async await 的 实质 本质

    async await  的 实质 就是 用 “状态机” 来 取代 函数层层调用 . async await  的 本质 是 语法糖,  和 提高性能 什么的 没什么关系 . 为了避免理解歧义, 我把 ...

  4. Mysql5.6 自动化部署

    主机环境:Centos6.5 前提: 1. 配置yum源 2. 移除系统自带的mysql 3. 删除原先的mysql用户 4. 使用mysql二进制安装包:https://dev.mysql.com/ ...

  5. html 简单的table样式

    效果预览: 代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...

  6. jmeter --JDBC请求

    转jmeter --JDBC请求 做JDBC请求,首先要了解这个JDBC对象是什么,然后寻找响应的数据库连接URL和数据库驱动. 数据库URL:jdbc:sqlserver://200.99.197. ...

  7. linux mv命令详解

    Linux mv命令 Linux mv命令用来为文件或目录改名.或将文件或目录移入其它位置. 用法: mv [选项]... [-T] 源文件 目标文件 mv [选项]... 源文件... 目录 mv ...

  8. 在Centos7上安装配置ss-libev Proxifier

    http://note.youdao.com/noteshare?id=6f768652c33a64d6b8935eb08b10a213 servier:ss-libev client:ss+Prox ...

  9. 利用Mega2560实现USB转串口

    1. 介绍 2560的串口一共有4个,分别对应数字接口0-1,18-19,16-17,14-15所有串口都可以跟pc通信,但只有0-1是跟板子上的usb2ttl连接,电脑上显示的串口编号就是0-1对应 ...

  10. 响应json去除参数值为空的参数-springboot配置

    1.添加jackson相关依赖 <!--jackson 开始--><dependency> <groupId>com.fasterxml.jackson.core& ...