本帖最后由 lx427 于 2011-7-7 02:47 编辑
本人根据高人指点做了一个根据MAC地址修改计算机名和IP地址的批处理,对公司所有 的电脑进行了操作系统的重装,采购微软原版系统,用自由天空的易驱动封装,在第一次进入桌面时运行。代码如下- @echo off
- set MASK=255.255.255.0
- set GATEWAY=192.168.1.1
- set DNS=202.103.96.112
- set WINS=192.168.1.192
- for /f "tokens=12 delims= " %%i in ('ipconfig /all^|find /i "Physical Address"') do set mac=%%i
- for /f "tokens=1,2*" %%i in ('ipconfig /all^|find "Ethernet adapter"') do set Ethernet=%%k
- for /f "tokens=1,2" %%i in ('more /e +13 %0 ^|find /i "%mac:~,-1%"') do set "name=%%i"&set "IP=%%j"
- reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v ComputerName /t reg_sz /d %name% /f >nul 2>nul
- reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t reg_sz /d %name% /f >nul 2>nul
- reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v Hostname /t reg_sz /d %name% /f >nul 2>nul
- netsh interface ip set address "%Ethernet:~,-2%" static %IP% %Mask% %GATEWAY% 1 >nul 2>nul
- netsh interface ip set dns "%Ethernet:~,-2%" static %DNS% >nul 2>nul
- exit
- PC001 192.168.1.101 00-0f-ea-bc-61-da
- PC002 192.168.1.102 00-23-54-D3-EE-95
- PC003 192.168.1.103 00-E0-4C-46-C5-59
- PC004 192.168.1.104 00-22-15-B6-D0-3C
- PC005 192.168.1.105 00-23-54-D3-EE-98
- PC006 192.168.1.106 00-25-11-C5-6D-D7
- PC007 192.168.1.107 6C-F0-49-C1-F7-80
- PC008 192.168.1.108 00-E0-4C-19-1A-AD
- PC009 192.168.1.109 44-87-FC-56-44-9B
- PC010 192.168.1.110 00-24-8C-65-90-33
- PC011 192.168.1.111 00-23-54-D3-EE-9A
- PC012 192.168.1.112 00-24-8C-C4-79-15
- PC013 192.168.1.113 00-B0-C4-A1-F5-A0
- PC014 192.168.1.114 00-23-54-d3-ee-7e
- PC015 192.168.1.115 00-11-43-10-DC-FF
复制代码 在运行这个批处理后,本地的计算机名和IP地址确实是改过来了,在本机电脑上可以看到。但是在网上邻居看到其它的用这个批处理修改过的计算机名时仍然是一些随机数字,经过检测发现计算机的NetBios没有修改过来,这个问题经过多次研究,实验,发现只要把上面的注册表路径改一下,
把 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName
改成 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName重启之后计算机名,计算机名和NetBios名就一起改过来了 |