| 
 | 
晕,昨天刚自己写了一个类似的。不过还没有写完,自己用的。 
楼主的这个程序我也是刚看到,没参考到,思路也完全不一样,也贴出来吧。 
没任何技术含量,高手们勿笑。 
 
@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. 
 
把附件也打包发上来好了。 |   
 
 
 
 |