|
晕,昨天刚自己写了一个类似的。不过还没有写完,自己用的。
楼主的这个程序我也是刚看到,没参考到,思路也完全不一样,也贴出来吧。
没任何技术含量,高手们勿笑。
@echo off
title=IP自动设置程序---Design By:风流才子(http://www.54caizi.com)
color 0A
rem *************** IP地址自动设置程序 ***************
rem 免费程序,可在 GNU 框架下自由分发或/和修改。
rem 程序制作:风流才子 http://www.54caizi.com
rem **************************************************
set find=%SystemRoot%\System32\find.exe
set config=%SystemRoot%\System32\ipconfig.exe
if not "%1" == "%*" goto :syntax
if /I "%1"=="/?" goto :help
if /I "%1"=="/dhcp" goto :godhcp
if /I "%1"=="/static" goto :gostatic
if /I "%1"=="/restore" goto :gorestore
goto :start
:syntax
echo.
echo 调用语法错误,程序终止!
goto :end
:help
cls
echo.
echo IP地址自动设置程序 - 说明
echo ==========================================================
echo 免费程序,可在 GNU 框架下自由分发或/和修改
echo 程序制作:风流才子 http://www.54caizi.com
echo ----------------------------------------------------------
echo 本程序设置全智能化,通常单机ADSL上网的用户,用全自动静态
echo IP设置即可,其实动态IP通常也能正常上网,但电脑启动速度会
echo 变慢。因为系统会自动去搜索DHCP,并获取DHCP分配的IP设置。
echo.
echo 本程序支持带参数调用,参数如下:
echo.
echo /dhcp ................. 自动设置成动态IP
echo /static ............... 自动设置成静态IP (192.168.1.168)
echo 自动设置子网掩码 (255.255.255.0)
echo 自动设置网关地址 (192.168.1.1)
echo /static IP Mask Geteway
echo 参数形式设置IP,子网掩码及网关地址
echo (例:/static 192.168.1.100 255.255.255.255 192.168.1.1)
echo ==========================================================
echo 按任一键进入程序菜单,选择相应的操作。
pause >nul
:start
cls
echo ╭─────────────╮
echo ╭──────┤ IP地址自动设置程序 ├──────╮
echo │ ╰─────────────╯ │
echo │本程序能为您自动或手动设置合适的IP,网关及DNS │
echo │ Design By: 风流才子│
echo ╰───────────────────────────╯
echo.
echo 1. 设置成动态IP (局域网或路由上网且路由开放DHCP功能)
echo 2. 设置成静态IP (拨号或路由上网且路由没开放DHCP功能)
echo H. 查看帮助说明
echo Q. 退出程序
echo ==========================================================
set type=
set /P type= 请选择: [1],[2],[H] 或 [Q] ?
if /I "%type%"=="1" goto :godhcp
if /I "%type%"=="2" goto :gostatic
if /I "%type%"=="H" goto :help
if /I "%type%"=="Q" goto :end
goto :start
:godhcp
echo.
echo 正在设置动态IP地址,请稍候!
netsh interface ip set address name="本地连接" source=dhcp >nul
goto :comm
:gostatic
cls
echo.
echo 1. 全自动设置静态IP,子网掩码及网关 (适合单机ADSL拨号上网)
echo 2. 手动指定静态IP,子网掩码及网关 (适合于局域网且有IP限制)
echo B. 返回上一菜单
echo Q. 退出本程序
echo ==========================================================
set stype=
set /P stype= 请选择: [1],[2],[B] 或 [Q] ?
if /I "%stype%"=="1" goto :autostatic
if /I "%stype%"=="2" goto :inputstatic
if /I "%stype%"=="Q" goto :end
if /I "%stype%"=="B" goto :start
goto :gostatic
:autostatic
echo.
echo 将IP地址设置成 192.168.1.168
echo 子网掩码设置成 255.255.255.0
echo 网关地址设置成 192.168.1.1
echo.
set confirm=
set /P confirm= 确认吗? [Y]确认,[N]返回主菜单:
if /I "%confirm%"=="N" goto :start
if /I "%confirm%"=="Y" (
echo.
echo 正在设置IP地址及子网掩码
netsh interface ip set address name="本地连接" source=static addr=192.168.1.168 mask=255.255.255.0 >nul
echo 正在设置默认网关地址
netsh interface ip set address name="本地连接" gateway=192.168.1.1 gwmetric=0 >nul
goto :comm
)
goto :autostatic
:inputstatic
set /P IP= 请输入 IP 地址 (格式:192.168.1.168) :
set /P Mask= 请输入子网掩码 (格式:255.255.255.0) :
set /P Gateway= 请输入网关地址 (格式:192.168.1.1) :
echo.
echo 正在根据您输入的资料进行设置 ......
netsh interface ip set address "本地连接" source=static addr=%IP% mask=%Mask% gateway=%Geteway% gwmetric=0 >nul
goto :comm
:comm
echo 正在设置DNS,请稍候!
netsh interface ip set dns name="本地连接" source=static addr=202.96.134.133 register=PRIMARY >nul
netsh interface ip add dns name="本地连接" addr=202.96.128.68 index=2 >nul
netsh interface ip add dns name="本地连接" addr=203.77.1.1 index=3 >nul
netsh interface ip add dns name="本地连接" addr=203.77.1.20 index=4 >nul
::netsh interface ip set wins name="本地连接" source=static addr=none >nul
echo.
echo 设置完成,按任一键查看您目前的网络信息:
pause >nul
cls
ipconfig/all
::netsh int ip show address
echo.
echo 按任一键退出程序!
pause >nul
:end
echo.
把附件也打包发上来好了。 |
|