[原创]全自动设置机号、IP工具3.0(完整版)
🖨 打印本页
标题:[原创]全自动设置机号、IP工具3.0(完整版)
作者:qasa | 时间:2007-07-26 17:29 | 标题:[原创]全自动设置机号、IP工具3.0(完整版)
这个版本是我在实践中不断完善和改进写出来的,修正了之前的BUG和可能错漏的地方,也算是比较完整的版本了,谢谢大家的支持和关注。
主代码参考:
@echo %dbg% off&setlocal enabledelayedexpansion
:: code by qasa copyright@qknet 2:16 2007-7-26
title 自动改IP(自设重启次数) 作者:钟其栋
mode con cols=50 lines=10&color a
if not exist 次数.txt goto st_
if exist c:\ip\key.txt goto OK
if not exist 设置.txt goto do_
set /p sum_=<次数.txt
for /l %%i in (!sum_!,-1,1) do (
if exist c:\ip\off%%i.txt goto end
)
exit /b
:st_
del /q c:\ip\*.txt >nul 2>nul
set /p sum_=你准备重启电脑多少次后安装冰点(建议设2次以上)?
echo %sum_% >次数.txt
cd %USERPROFILE%\「开始」菜单\程序\启动\
copy c:\ip\ippp.lnk . >nul 2>nul
cd c:\ip\
echo.&echo 请重启进行系统备份! ! !
ping/n 7 127.1>nul
goto :eof
:do_
setlocal enabledelayedexpansion
set no_=0
cd.>设置.txt
for /f "tokens=12 delims= " %%i in ('ipconfig /all^|find /i "Physical Address"') do (
set mac=%%i
set mac=!mac:~0,-1!
)
for /f "tokens=1-3 delims==|" %%j in (MAC.INI) do (
set mac_=%%j
set ip_=%%k
set sm_=%%l
if !mac! equ !mac_! (
call :set_ !mac_! !ip_! !sm_!
set /a no_+=1
)
)
if "!no_!"=="0" (
echo.&echo MAC.ini中没有此机的MAC地址,将发送到工作机上......
echo %date% %time%新发现的MAC地址:>>NewMAC.ini&echo !mac! >>NewMAC.ini
echo %date% %time%新发现的MAC地址:>>\\游戏主机\full$\NewMAC.ini&echo !mac! >>\\游戏主机\full$\NewMAC.ini
echo.&echo 已经发送到工作机! ! !
del /q c:\ip\次数.txt
)
goto :eof
:set_
set /p w=<次数.txt
if %w% equ 1 cd.>c:\ip\key.txt&&start shutdown -r -t 90 -c 现在是第1次重启_最后一次重启_下次将安装冰点。作者:qasa
if %w% neq 1 start shutdown -r -t 90 -c 现在是第1次重启。
cd.>c:\ip\off2.txt
echo %1 %2 %3
set yy_=%3
echo.&echo 正在为%yy_:~1,3%号设置IP、机号...... 请稍候
for /f "tokens=1-4 delims==|" %%e in (DNS.ini) do (
set dns1_=%%e
set dns2_=%%f
set workgate_=%%g
set zwym_=%%h
)
for /f "tokens=1 delims=" %%s in ('ipconfig /all^|find /i "Ethernet adapter"') do (set ss_=%%s)
set ss_=%ss_:~17,-2%
for /l %%w in (1,1,2) do (
netsh interface IP Set Address "%ss_%" Static %2 %zwym_% %workgate_% 1 >nul
)
netsh interface IP Set Dns "%ss_%" static %dns1_% >nul
netsh interface ip add dns "%ss_%" %dns2_% >nul
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName /v "ComputerName" /t REG_SZ /d %3 /f >nul 2>NUL
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName /v "ComputerName" /t REG_SZ /d %3 /f >nul 2>NUL
REG ADD HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v "Hostname" /t REG_SZ /d %3 /f >nul 2>NUL
REG ADD HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /v "NV Hostname" /t REG_SZ /d %3 /f >nul 2>NUL
echo.&echo 设置完毕
goto :eof
:end
setlocal EnableDelayedExpansion
set /p summ_=<次数.txt
set /p ss=<次数.txt
set /a sss=ss
for /l %%i in (!summ_!,-1,1) do (
if exist c:\ip\off%%i.txt (
set /a a=%%i
if exist c:\ip\off!sss!.txt (
start shutdown -r -t 60 -c 现在是第!a!次重启_最后一次重启_下次将安装冰点。作者:qasa
cd.>c:\ip\key.txt
goto :eof
)
start shutdown -r -t 60 -c 现在是第!a!次重启。
set/a b=a+1
cd.>c:\ip\off!b!.txt
goto :eof
)
)
goto :eof
:OK
cd %USERPROFILE%\「开始」菜单\程序\启动\
del /q ippp.lnk
cd c:\ip\
del /q c:\ip\*.txt
start "" df /install
goto :eof
现附上源代码给大家学习指正,里面并附上了使用说明一份。
第一次发的发错了,发2.0版上来了,现已更正,之前已经下载的请重新下载,谢谢。
[
Last edited by qasa on 2007-7-26 at 10:03 PM ]
作者:wudixin96 | 时间:2007-07-26 17:32
楼主名字:钟其栋?
这么长,头痛了!
作者:qasa | 时间:2007-07-26 22:08
Originally posted by wudixin96 at 2007-7-26 17:32:
楼主名字:钟其栋?
这么长,头痛了!
正是
作者:ncqingyi | 时间:2007-07-27 09:16
上面的这种修改方法有些地方不是很严密,我感觉。 特提供我写的脚本。
@Echo off
Title Please waitting. update computer information.
set flName=c:\windows\ip.txt
set netMask=255.255.255.0
set Gateway=192.168.1.254
set Metric=1
set DNS1=61.177.7.1
set DNS2=221.228.255.1
set DNS3=218.2.135.1
IF EXIST D:\ %windir%\system32\CSCRIPT %windir%\system32\PAGEFILECONFIG.vbs /create /I 768 /M 1536 /VO d: >nul
if EXIST E:\ %windir%\system32\CSCRIPT %windir%\system32\PAGEFILECONFIG.vbs /create /I 512 /M 768 /VO E: >nul
IF EXIST C:\ %windir%\system32\CSCRIPT %windir%\system32\PAGEFILECONFIG.vbs /change /I 512 /M 768 /VO C: >nul
REM GET ComputerName,AdapName,Phyaddr
for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|find "Host Name"') do set pcName=%%a
for /f "tokens=3 delims= " %%a in ('ipconfig /all^|find "Ethernet adapter"') do set AdapName=%%a
for /f "tokens=2 delims=:" %%a in ('ipconfig /all^|find "Physical Address"') do set PhyAddr=%%a
set pcName=%pcName:~1%
set AdapName=%AdapName:~0,-2%
set PhyAddr=%PhyAddr:~1%
set mac1=%PhyAddr:~0,2%
set mac2=%PhyAddr:~3,2%
set mac3=%PhyAddr:~6,2%
set mac4=%PhyAddr:~9,2%
set mac5=%PhyAddr:~12,2%
set mac6=%PhyAddr:~15,2%
set PhyAddr=%mac1%%mac2%%mac3%%mac4%%mac5%%mac6%
set wmicMac=%mac1%:%mac2%:%mac3%:%mac4%:%mac5%:%mac6%
:Echo %pcName% %AdapName% %PhyAddr%
REM Find ip-Mac addr @ file.
for /f "skip=2 tokens=1,2,3,4" %%a in ('find "%PhyAddr%" "%flName%"') do call :findok %%b %%a %%c
goto end
REM Change Computer name
REM
:setok
@Echo This computer's mac is: %1 ipaddress is: %2 name is: %3
@Echo Please waitting...
@Echo Now,update computer name
WMIC computersystem where Name="%pcName%" call Rename Name="%3" >nul
@Echo Modify ip address
WMIC NICCONFIG WHERE MACAddress="%wmicMac%" call EnableStatic("%2"),("%netMask%") >nul
WMIC NICCONFIG WHERE MACAddress="%wmicMac%" call SetGateways("%Gateway%") >nul
@Echo Modify DNS
WMIC NICCONFIG WHERE MACAddress="%wmicMac%" call SetDNSServerSearchOrder("%DNS1%", "%DNS2%", "%DNS3%") >nul
:end
@Echo All Done!
IP.txt 基本结构:
192.168.1.1 001A928EFC1E PC001 WORKGROUP
192.168.1.2 001A9235D870 PC002 WORKGROUP
192.168.1.3 001A928EF04E PC003 WORKGROUP
192.168.1.4 001A9235B64D PC004 WORKGROUP
192.168.1.5 001A928EF37A PC005 WORKGROUP
192.168.1.6 001A928EF12E PC006 WORKGROUP
192.168.1.7 001A928EE291 PC007 WORKGROUP
192.168.1.8 001A928EE318 PC008 WORKGROUP
192.168.1.9 001A928EF187 PC009 WORKGROUP
192.168.1.10 001A928EF44A PC010 WORKGROUP
作者:ncqingyi | 时间:2007-07-27 09:20
全部通过WMIC 实现修改计算机名,IP地址,网关,DNS服务器。
同时在C D E 三个盘分别创建Pagefile.sys 页面文件,可以防止被格式化。
IP.txt 还在多个地方有重用。DHCP服务器上使用
For /f .... do netsh dhcp server *** scope *** add reservedip ip mac
绑定MAC到IP. 等
作者:anson73 | 时间:2007-07-31 21:59
学习学习在学习
作者:Rhinoceros | 时间:2007-08-01 00:22
实用的好东东,向楼主致谢。
作者:9393000 | 时间:2007-08-01 19:43
谢谢分享,试试看。
作者:gmsx007 | 时间:2007-08-02 03:16 | 标题:好东东
好东东,能不能小一点?
作者:smmenglong | 时间:2007-08-09 14:25
这个想要,积分不够,呵呵
作者:smmenglong | 时间:2007-08-09 14:26
再回个就可以下了
作者:CZJang | 时间:2007-08-09 14:34
全自动到什么份上,下下来看一下
作者:csyfly2003 | 时间:2007-08-31 18:26
好东东
作者:lyaa | 时间:2007-09-03 10:36
作者:lyaa | 时间:2007-09-05 21:21
无法重启
作者:lifei666 | 时间:2007-09-10 16:22 | 标题:寻找中!
下了
作者:nazren | 时间:2007-09-11 10:49
可以啊
作者:sujie2008cn | 时间:2007-09-11 21:57
好象对我没什么用
作者:titiger | 时间:2007-09-14 23:52
不错,学习学习
作者:vboy | 时间:2007-09-19 16:30
可惜积分不够下载不了
支持一下
作者:jihbb | 时间:2007-09-21 13:55
这个想要,积分不够,呵呵
作者:huangxiaohao | 时间:2007-10-06 11:32
没有钱,但是我顶,等我有钱了在来下
作者:nightbb | 时间:2007-10-07 18:06
好用的東西 學習學習 謝了
作者:lshlyn | 时间:2007-10-10 20:19 | 标题:我看看
我项
作者:p1509101 | 时间:2007-11-05 18:07
收藏了
作者:che11n | 时间:2007-11-26 00:05
5555
下这个还得要十积分啊..我刚注册还没有分..
作者:lsf0523 | 时间:2007-11-29 18:00
好像不错的样子啊
作者:pan163 | 时间:2007-11-30 13:10
好东西,,,,有一个问题,MAC和IP地址是用什么软件或工具读出来呢?人工一个个改???
作者:nicesoft | 时间:2007-12-02 23:27
『第 32 楼』:
好东西,,,,有一个问题,MAC和IP地址是用什么软件或工具读出来呢?人工一个个改???
————————————————————————————————
可以用优化大师扫描。
作者:testdamao | 时间:2007-12-03 11:19
很好的东东,学习中
作者:hzwts | 时间:2007-12-17 13:41
这要积分 10 点啊。。
作者:zhljldz | 时间:2007-12-27 17:37
晕,要积分,,哪不要玩完,,
作者:wangweihebtu | 时间:2007-12-28 15:35
下载了-对于我这样的常重装的人来说-好些东西
作者:aofunjaw | 时间:2007-12-31 20:00
謝謝分享~
作者:cityof93 | 时间:2008-01-07 18:49
谢谢
作者:qq43142691 | 时间:2008-01-08 03:35
Originally posted by pan163 at 2007-11-30 01:10 PM:
好东西,,,,有一个问题,MAC和IP地址是用什么软件或工具读出来呢?人工一个个改???
这个可以收集到
@Echo off
Title 收集你的机器的 计算机名.IP.MAC为刻盘自动改IP做准备by 彬 QQ43142691
For /f "tokens=16" %%a in ('ipconfig/all^|find /i "Host Name"') do (set PcName=%%a)
For /f "tokens=15" %%i in ('ipconfig^|find /i "ip address"') do (set ip=%%i)
For /f "tokens=12" %%b in ('ipconfig/all^| find /i "Physical Address"') do (set mac=%%b)
if not exist new.ini goto new
For /f "tokens=3" %%m in ('type new.ini^|find /i /n "%mac%"') do (set fm=%%m)
if not "%fm%"=="" exit
:ok
Echo.%PcName% %ip% %mac% >>new.ini
Exit
:new
Echo.**********开始收集咯*******>>new.ini
goto ok
或者这个也可以
@echo off
color 0a
call :getme "ip address" "ip"
call :getme "Physical Address" "mac"
call :getme "Default Gateway" "gateway"
goto begin
:getme
for /f "tokens=2 delims=:" %%i in ('ipconfig /all^|findstr /i /c:%1') do if not "!%~2!" == "" set "%~2=%%i"
goto :eof
:begin
echo -%ip%-%mac%-%gateway%-
pause
exit
[
Last edited by qq43142691 on 2008-1-8 at 03:36 AM ]
作者:haiou327 | 时间:2008-01-08 23:03
只要改计算机名就好!!!
作者:jention | 时间:2008-02-27 00:35
内部网络号没修改到吧?
作者:darkeden | 时间:2008-03-19 15:34
再回个就能下来
作者:80469370 | 时间:2008-03-25 21:58
晕,要钱才可以下的
作者:wuyalang | 时间:2008-03-25 23:52
看了头都会晕……
作者:AhKang | 时间:2008-03-31 05:53
楼主太强了,不断支持中……
作者:AhKang | 时间:2008-03-31 05:54
想看看源代码,可是积分不够,该如何是好?
作者:AhKang | 时间:2008-03-31 05:55
抱歉!不小心弄错了。源代码本来就是公开了的,我是想看看压缩包里面的内容,但积分还差那么一点点儿……
作者:niao22 | 时间:2008-03-31 23:11
无意中发现这个东东,学习一下
作者:BWSkyer | 时间:2008-04-03 16:06
下了~~~没有仔细看, 有用的时候再说
作者:kinghero | 时间:2008-04-03 16:54
郁闷 积分不够!
作者:configwater | 时间:2008-04-03 18:47
的确是有点长啊
作者:stance | 时间:2008-04-21 17:17
謝謝樓主無私分享
作者:myname1994 | 时间:2008-04-25 08:43
感觉不错.学习了!
作者:axuan | 时间:2008-04-28 08:33
东西 不错,
作者:aw567 | 时间:2008-05-02 21:39
学习学习在学习
作者:jhunney | 时间:2008-06-08 02:22
好东西,学习一下,可以要求太高,10分
作者:microsoft | 时间:2008-06-22 04:36
Thanks For All
作者:wjkkk | 时间:2008-08-07 08:56
无法重启??????????
作者:evilangell | 时间:2008-08-17 21:57
xuexi 学习
作者:teamsmall | 时间:2008-08-17 23:29
来学习了
作者:evilangell | 时间:2008-08-17 23:32
学习学习在学习
作者:xuyihua | 时间:2008-08-21 19:31
太好了,学习学习
作者:wupf90 | 时间:2008-09-07 14:43
下下来,研究研究
作者:airstop | 时间:2008-09-08 22:16
谢谢,收下了,回去看看,好好研究下
作者:xiefei3131 | 时间:2008-09-09 12:11 | 标题:感谢分享
帮你顶顶!
作者:qwerqwer | 时间:2008-10-10 09:11
全自动到什么份上,下下来看一下
作者:landays | 时间:2008-10-10 12:12
好像很强大的样子
下来看看
谢谢
作者:cxbcf | 时间:2008-11-12 21:50
我就是因为这个才来的
作者:wdd3359505 | 时间:2008-11-14 09:19
好東西,謝謝~~
作者:dghotman | 时间:2008-11-14 09:52
看一下
作者:hqso | 时间:2008-11-14 11:47
好 真的很好,学习中。。。。
作者:laoyao2007 | 时间:2008-11-14 14:20
好东西,谢谢
作者:86772710 | 时间:2008-11-15 23:41 | 标题:呵呵
呵呵
来源:https://www.cn-dos.net/forum/viewthread.php?tid=32490 · 打印时间 2026-06-24 05:22