|
qasa
高级用户
积分 959
发帖 311
注册 2006-4-11 来自 广东-LianJiang
状态 离线
|
『楼 主』:
[原创]全自动设置机号、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 ]
附件
1: 自动改IP3.0源代码.rar (2007-7-26 22:01, 73.46 K, 下载附件所需积分 10 点
,下载次数: 353)
|
κχυμγνξοθπρωψιαδλεηφβτζσ┬╀┾┳┞┯┰┱┣┲┳╂╁│├┟┭┠这是什么??这就是我的人生 |
|
2007-7-26 17:29 |
|
|
wudixin96
银牌会员
积分 1928
发帖 931
注册 2007-1-6
状态 离线
|
『第
2 楼』:
楼主名字:钟其栋?
这么长,头痛了!
|
|
2007-7-26 17:32 |
|
|
qasa
高级用户
积分 959
发帖 311
注册 2006-4-11 来自 广东-LianJiang
状态 离线
|
『第
3 楼』:
Quote: | Originally posted by wudixin96 at 2007-7-26 17:32:
楼主名字:钟其栋?
这么长,头痛了! |
|
正是
|
κχυμγνξοθπρωψιαδλεηφβτζσ┬╀┾┳┞┯┰┱┣┲┳╂╁│├┟┭┠这是什么??这就是我的人生 |
|
2007-7-26 22:08 |
|
|
ncqingyi
初级用户
积分 24
发帖 11
注册 2007-7-13
状态 离线
|
『第
4 楼』:
上面的这种修改方法有些地方不是很严密,我感觉。 特提供我写的脚本。
@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
|
Black/White
Mono
CGA
VGA
SVGA
LCD
十年工龄 For disk operation system |
|
2007-7-27 09:16 |
|
|
ncqingyi
初级用户
积分 24
发帖 11
注册 2007-7-13
状态 离线
|
『第
5 楼』:
全部通过WMIC 实现修改计算机名,IP地址,网关,DNS服务器。
同时在C D E 三个盘分别创建Pagefile.sys 页面文件,可以防止被格式化。
IP.txt 还在多个地方有重用。DHCP服务器上使用
For /f .... do netsh dhcp server *** scope *** add reservedip ip mac
绑定MAC到IP. 等
|
Black/White
Mono
CGA
VGA
SVGA
LCD
十年工龄 For disk operation system |
|
2007-7-27 09:20 |
|
|
anson73
初级用户
积分 28
发帖 10
注册 2007-7-31
状态 离线
|
|
2007-7-31 21:59 |
|
|
Rhinoceros
新手上路
积分 18
发帖 9
注册 2006-8-16
状态 离线
|
|
2007-8-1 00:22 |
|
|
9393000
新手上路
积分 10
发帖 3
注册 2005-7-30
状态 离线
|
|
2007-8-1 19:43 |
|
|
gmsx007
初级用户
积分 75
发帖 36
注册 2007-5-11
状态 离线
|
|
2007-8-2 03:16 |
|
|
smmenglong
新手上路
积分 11
发帖 5
注册 2007-7-27
状态 离线
|
|
2007-8-9 14:25 |
|
|
smmenglong
新手上路
积分 11
发帖 5
注册 2007-7-27
状态 离线
|
|
2007-8-9 14:26 |
|
|
CZJang
初级用户
积分 32
发帖 13
注册 2007-4-14
状态 离线
|
『第
12 楼』:
全自动到什么份上,下下来看一下
|
|
2007-8-9 14:34 |
|
|
csyfly2003
新手上路
积分 10
发帖 5
注册 2007-8-31
状态 离线
|
|
2007-8-31 18:26 |
|
|
lyaa
初级用户
积分 40
发帖 17
注册 2007-8-10
状态 离线
|
|
2007-9-3 10:36 |
|
|
lyaa
初级用户
积分 40
发帖 17
注册 2007-8-10
状态 离线
|
|
2007-9-5 21:21 |
|