楼上写的脚本是对的,但他忘记了一点就是现在系统的管理员用户名可能不是admin,或者管理员admin权限不足。
如果系统存在上面的2个问题,仅仅依靠批处理是解决不了你的问题的。最方便的办法就是:开启本地链接并且链接无线网络,当需要访问内网时断开无线,需要访问外网时再链接无线。
② 如何禁用、启用本地连接(网卡)
1、首先,在电脑桌面左下角的“开始”按钮中找到“控制面板”选项。
③ 如何禁用电脑的本地连接和无线网络
工具/原料
演示电脑:超微 X8DAL Main Server Chassis
电脑操作系统:Windows 7 专业版 64位操作系统
1、右键“我的电脑”点击“管理”,
④ 设置一键切换内网和WIFI的批处理
以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI
@echo off
rem 自动切换/禁用或启用无线和有线网络连接
color 3e
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
if '%errorlevel%' NEQ '0' (goto UACPrompt) else (goto gotAdmin)
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" (del "%temp%\getadmin.vbs")
cd /d "%~dp0"
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
set "n1=本地连接"
set "n2=无线网络连接"
set "f="
wmic NIC where "NetConnectionID='%n1%'" get NetConnectionStatus /value|>nul find "=0"&&(set f=1)
if defined f (
echo 关闭wifi,启用内网
netsh interface set interface name="%n2%" admin=disabled
netsh interface set interface name="%n1%" admin=enabled
) else (
echo 打开wifi,关闭内网
netsh interface set interface name="%n2%" admin=enabled
netsh interface set interface name="%n1%" admin=disabled
)
echo;%#% +%$%%$%/%@% %z%
pause
exit
⑤ 怎么使用批处理启动和关闭网络连接
用批处理命令关闭本地连接,有此命令,但是windowxp不支持,window2003不知道会不会支持
在windows2000下:
C:\>netsh
netsh>interface
interface>set interface name="本地连接" admin=DISABLED connect=DISCONNECTED newname="本地连接"
不能连接,断开,启用或禁用专用接口。
无法完成此功能。
可以换个思路,禁用本地连接就是要本地连接无效,不能连上网络,如果将本地连接的ip该成一个无效的ip(与其他机器不在同一网段),不也可以达到相同的目的
netsh interface ip set address "本地连接" static addr=192.168.10.2 mask=255.255.0.0
netsh interface ip set address "本地连接" gateway=192.168.10.1 gwmetric=1