@echo off
    setlocal enabledelayedexpansion
    title 
    echo.####################################################################
    echo.
    echo.Ϊ̶IP,DNSΪ,ͬʱSERVERȷ
    echo.ĬϰسĻ:ѡIPַλã
    echo.  a).ԶHost-Only
    echo.  b).host-Only   IP "192.168.188.1"
    echo.  c).ڱ   IP "192.168.188.2"~"192.168.188.6"
    echo.IPγָͻʱֶIP
    echo.ע⣺Host-OnlyIPҪΪͬһΡ
    echo.ɺҪIpconfig/all鿴
    echo.
    echo.####################################################################


   echo.


rem ϵͳ汾
SET sysver=""
VER|FINDSTR -I " 5.0." > nul && SET sysver=win2000
VER|FINDSTR -I " 5.1." > nul && SET sysver=winXP
VER|FINDSTR -I " 6.0." > nul && SET sysver=winVista
VER|FINDSTR -I " 6.1." > nul && SET sysver=win7

if "%sysver%"=="" (
  echo δԶʶǰĲϵͳ汾밴˵ֶM
  goto :eof
) else (
  if /i "%sysver%"=="win7" (
    echo win7ҪԹԱУڱļϵҼѡ"ԹԱ"
    echo.
  )
)


   :seladapter

    if /i "%sysver%"=="win7" (
        rem رipv6
        netsh interface teredo set state disable > nul
        netsh interface 6to4 set state disabled > nul
        netsh interface isatap set state disabled > nul

        rem ipv6
        reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters\ /v DisabledComponents /t REG_DWORD /d 0xffffffff /f > nul

    )
    set adapternum=0
    set selno=1
    set NetCardRefNo=0
    set NetCardName=""

    echo.б

    FOR /F "tokens=2*" %%i IN ('ipconfig/all^|find "Ethernet adapter"') DO (
      FOR /F "tokens=1* delims=:" %%a in ("%%j") do (
           set /a adapternum+=1
           echo [!adapternum!] "%%a"
           set Desp!adapternum!="%%a"
           if /i "%%a" == "VMware Network Adapter VMnet1"  set NetCardRefNo=!adapternum!
           if /i "%%a" == "VirtualBox Host-Only Network"  set NetCardRefNo=!adapternum!

        )
    )


rem İwin7ϵͳΪʶ޷ѯΪ±ߵ
if %adapternum% EQU 0 (
  if /i "%sysver%"=="win7" (
    FOR /F "tokens=1*" %%i IN ('ipconfig/all^|find ""') DO (
      FOR /F "tokens=1* delims=:" %%a in ("%%j") do (
           set /a adapternum+=1
           echo [!adapternum!] "%%a"
           set Desp!adapternum!="%%a"
           if /i "%%a" == "VMware Network Adapter VMnet1" set NetCardRefNo=!adapternum!
           if /i "%%a" == "VirtualBox Host-Only Network" set NetCardRefNo=!adapternum!
        )
    )
    FOR /F "tokens=1*" %%i IN ('ipconfig/all^|find "m"') DO (
      FOR /F "tokens=1* delims=:" %%a in ("%%j") do (
           set /a adapternum+=1
           echo [!adapternum!] "%%a"
           set Desp!adapternum!="%%a"
           if /i "%%a" == "VMware Network Adapter VMnet1" set NetCardRefNo=!adapternum!
           if /i "%%a" == "VirtualBox Host-Only Network" set NetCardRefNo=!adapternum!
        )
    )
  )
)

    echo.
    echo.

    if %adapternum% EQU 0 (
        echo δҵϢ˳
        goto :eof
    )

    REM ûҵĬϵHost-Only,õһ
    if %NetCardRefNo% EQU 0 (set selno=1) else (set selno=%NetCardRefNo% )

    set /p selno="ѡõ[1~%adapternum%]:"


    if %selno% GTR %adapternum% (
        echo.Чѡ...
        goto :seladapter)


    if  %selno% LSS 1  (
        echo.Чѡ...
        goto :seladapter)

    for /l %%i in (1 1 %adapternum%) do (
       if %%i EQU %selno% set NetCardName=!Desp%%i!
     )

    echo ǰѡΪ %NetCardName%
    echo.

    REM ֻһΪ "192.168.188.2"  Ϊ "192.168.188.1"
    if %adapternum% EQU 1 (set myip=192.168.188.2) else (set myip=192.168.188.1)

   :setmyip

    set mydot=.
    set myiprang=""

    set /p myip="õ IP[%myip%]:"

    echo ׼IP:%myip%


    REM 鿴ǰǷ

    for /f "tokens=1-3 delims=." %%i in ("%myip%") do (
      set myiprang=%%i%mydot%%%j%mydot%%%k
    )

    set findnum=0
    FOR /F "tokens=*" %%i IN ('ipconfig^|find /i "%myiprang%"') DO (
      set /a findnum+=1
    )

   

SET ipname=ip
if /i "%sysver%"=="win7" SET ipname=ipv4
   
if %findnum% GTR 1 (
  echo %myiprang% Ѿ,һ
  goto :setmyip
)

if %findnum% EQU 0 goto :netConfig

SET b=0
FOR /F %%i IN ('netsh interface %ipname% show address %NetCardName%^|find "%myiprang%."') DO (
  SET b=1
)
if %b%==0 (
  echo %myiprang% Ѿ, һ
  goto :setmyip
)


   :netConfig
    echo.

echo IP ַʼ...   

echo  IP ַڴDHCPԶȡ
netsh interface ip set address name=%NetCardName% dhcp   
echo  DNSַڴDHCPԶȡ
netsh interface ip set dns name=%NetCardName% dhcp   

    echo ʼ粿...



echo [%NetCardName%] IP%myip%  : 
netsh interface %ipname% set address name=%NetCardName% static %myip% 255.255.255.248 gateway=none


echo  [%NetCardName%] DNS 
netsh interface %ipname% set dns name=%NetCardName% source=static none
netsh interface %ipname% set wins name=%NetCardName% source=static none


    echo 粿ϡ
    echo.

    echo ͣserver


SET DISABLED=0 && sc qc Browser|FINDSTR -I "DISABLED" > nul && SET DISABLED=1
if %DISABLED%==0 (
  sc config Browser start= disabled
  net stop Browser
)

SET DISABLED=0 && sc qc lanmanServer|FINDSTR -I "DISABLED" > nul && SET DISABLED=1
if %DISABLED%==0 (
  sc config lanmanServer start= disabled
  net stop lanmanServer
)


rem ͣ2߷յķ

echo ͣRemote Registry
  SET DISABLED=0 && sc qc RemoteRegistry|FINDSTR -I "DISABLED" > nul && SET DISABLED=1
  if %DISABLED%==0 (
    sc config RemoteRegistry start= disabled
    net stop RemoteRegistry
  )

echo ͣTask Scheduler

if /i NOT "%sysver%"=="win7" (
  SET DISABLED=0 && sc qc Schedule|FINDSTR -I "DISABLED" > nul && SET DISABLED=1
  
  if %DISABLED%==0 (
    sc config Schedule start= disabled
    net stop Schedule
  )
)




  :eof
  Pause
