怎样利用delphi程序修改网卡的MAC地址?另外网卡上的eeprom的空间是怎么分配的呢?

解决方案 »

  1.   

    没有现成的源程序,拷一段获取网卡号的程序给你参考
    function LanCardID: string;
    //获取网卡物理地址
    var guid: TGUID;
        i: integer;
    begin
       result := '';
       CoCreateGUID(guid);
       for i := Low(guid.D4)+2 to High(guid.D4) do
       begin
          result := result + IntToHex(guid.D4[i],2);
       end;
    end;
      

  2.   

    如果你有delphibbs的离线数据库的话,一查就有,很多的
    如果没有可去delphibbs.com上去down
      

  3.   

    各位老大,怎么样将数据写入网卡的eeprom?
      

  4.   

    win2000下是不可以这样改的,98下可以,改硬盘序号都可以
      

  5.   

    不可能改的吧,网卡的MAC地址是事先写进去的,固化了怎么改阿?
    关注
      

  6.   

    网卡的Mac地址是唯一的,如果可以随便改的话就乱了:)
      

  7.   

    网卡上的eeprom(93c46)内的地址是可以进行修改的,有人用网卡进行软件的加密,就是将加密数据写入网卡的,行是一定行的,但我现在不知道怎么写。各位大侠,请帮忙哪!
      

  8.   

    MAC地址也能改 ?俺不懂 !不会吧 !咋可能?
      

  9.   

    应该是根据网卡的MAC地址来加密软吧,MAC地址是不可以随便改的吧???
    如果加密的话大富翁离线包里有的吧
      

  10.   

    它只是用MAC地址做为密钥加密吧,不可能改的,要专用的工具才可以,固化了的.
      

  11.   

    //win2000
    Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0001]
                          ~~~~~ 对应你要修改的网卡"networkaddress"="0000E82B1499"[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\0001\Ndi\params\networkaddress]
    "ParamDesc"="Network Address"
    "type"="edit"
    "default"="0000E82B1499"
    //win98
    REGEDIT4[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net\0001]
    "NetWorkAddress"="0000E82B1499"[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net\0001\Ndi\Params\NetworkAddress]
    "ParamDesc"="MAC Address"
    "default"="0000E82B1499"
    "UpperCase"="1"
      

  12.   

    在网卡的eeprom中有空余的单元可以用的,我所需要的就是如何将数据写入空余的单元,我需要的是源程序;各位老大,怎样可以实现?
      

  13.   

    to Eagle_Lone(阿龙)
    Mac可以"假"改,如果系统重装或是网卡卸了再装就还回了
      

  14.   

    网络上有"MAC扫描器"可能有源码
      

  15.   

    修改网卡的?也许高级的可以提供学习功能,也就是他的驱动里面会提供修改的接口或界面。
    其它的也许可以通过修改 ROM 实现,但是也有可能是固化在主芯片内部的,那就没撤了
    你自己找找这个工具,网卡物理地址修改器-NT版.exe
    ipconfig /all
    会看到
    ......Physical Address. . . . . . . . . : 00-07-95-B5-3A-52
    Physical Address就是MAC地址
    有些老网卡可能改不了可以在dos下,在线对网卡eeprom从新写入网卡地址。对不同的网卡要用不同的方法,我以前写过8139c/d,及winbond 89c940/841在线写eeprom的程序,可惜换了公司之后没办法拿到以前的程序了。
    每一种网卡都是能改的,只要你知道网卡是如何读写eeprom以及网卡地址在eeprom中的存储位置。很简单,用汇编写一个dos 下的应用程序就可以了。windows下是不能直接对硬件操作的,只能在纯dos下。(1)查找注册表中DriverDesc键值,找到正确描述你的网卡信息的键值,如“Realtek RTL8139 Family PCI Fast Ethernet NIC”之类
    (2)在该键下建立一字符串值,键名“NetworkAddress”,键值为你要修改的网卡MAC值(16进制),如“00E04C5C3F19”
    (3)重新启动计算机就OK了
      

  16.   

    各位老大:
        看来没有谁可以对网卡上的eeprom中的数据进行修改了,高手在哪呀?
      

  17.   

    修改Mac地址不用在网卡ROM上,windows里修改注册表啊
      

  18.   

    同意楼上的!
    更换网卡的物理地址--怎一个爽字了得
    我们直到网卡的地址有两种
    1、IP地址-->这个要修改比较容易。
    2、MAC地址-->网卡的物理地址,它师Ethernet协议采用的地址,主要用于局域网中。
    一般由6位00--0FFH之间的16进制数组成,中间用"-"隔开表示,如:00-80-c8-74-12-37
    一般来说,这个Mac地址是网卡自己的唯一标识,不可以随便更换的。本文对网卡Mac地址的
    修改是基于注册表技术实现的。
    可以更改的原理//这是我们需要直到的,也是本文的闪光之处。
    在Windows9x下,网卡驱动程序使用NDIS规范与操作系统通讯。MAC地址就存储在操作系统的
    某个存储单元内,Windows9x系统就根据这个存储单元的内容来识别你网卡的物理地址。所以
    我们完全不用修改EPROM的内容而只通过修改存储单元的内容就能达到修改MAC地址的目的。
    修改方法:
    运行regedit.exe,找到
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net\0000下,如果
    你有一块以上的网卡,就还有0001,0002...在这里保存了有关你机器网卡的信息,其中的
    DriverDesc的内容就是你的网卡的信息描述,比如我的网卡就是
    Intel 21041 based Ethernet Controller
    在相应的0000下新建一字符串"NetworkAddress",键值设为你想设置的地址,主意要连续写。
    如,我设置的是112233445566
    设置完毕,重新启动计算机,你无论是使用winipcfg或者是使用nbtstat -a xxx.xxx.xxx.xxx
    xxx.xxx.xxx.xxx是你的具体IP,来查看你都会发现你的网卡的MAC地址已经被修改成了
    11-22-33-44-55-66。
    更进一步的设置:
    在HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Net\0000
    下的NDI\Params中新建主键NetworkAddress;再在NetworkAddress主键下添加名为default
    的串值,键值设置为你要预设置的MAC地址,如112233445566;继续添加名为ParmasDesc串,键
    值设置为"MAC Address"
    设置好后,重新启动机器,打开网上邻居属性,选择相应的网卡,查看其属性页中的高级选项
    有一项就是刚才我们设置好的Mac Addess它的设置值就是我们的预设值112233445566 
     以上修改只适合于Windows系列操作系统,对于别的操作系统可能得想别的办法。
    修改注册表前请注意备份。
    另:你改了你网卡的物理地址之后,你就不能上网了。(不过,这时另一个比较恶毒的念头
    在我的思维的火光中涌现出来..........)
      

  19.   

    什么是网卡的MAC地址?每一个制造网卡的生产商在制造网卡的过程中都要为每块网卡分配一个独有的标
    识, 也就是人们通常所说的网卡物理地址,这个网卡的物理地址就是MAC地址,它是用来区分每一块网卡的最为
    有效的办法,因为每一块网卡的MAC地址都不同。网卡的MAC地址由48位二进制数组成,为了方便,书写时一般用
    16进制来表示,如00-D0-09-A1-D7-B7的一串字符,共6段16进制数,中间用“-”隔开,MAC地址的前3段(前
    24位)是由IEEE组织分配给各网卡生产商的唯一标识,后3段是由生产网卡的厂商自己给网卡规定的唯一标识
    MAC地址被固化在网卡的EEPROM中,所以全世界的网卡MAC地址都不会相同。能够正确识别每块网卡的MAC地址
    对于组建局域网,尤其是无盘网十分重要
      

  20.   

    见网址  http://www.wpkj.com/mac.htm
      

  21.   

    改网卡的MAC地址需要专用的写入工具。单靠程序是不可能的。
      

  22.   

    问问懂汇编的高人,他们说能改,那你再想办法用delphi实现。但我想2000下是不可能的,即便汇编能做到,2000是不允许操作底层的
      

  23.   

    可以用調用ipconfig/all,讀取Physical address
      

  24.   

    不知道你的想法,我觉的是不可能改MAC地址的。
      

  25.   

    我只是想往网卡的空域的eeprom地址中写入数据,以便自己使用,各位大侠,我不是想修改MAC地址的。高手,你在哪里?呵呵!