批处理为何不可以 goto 了呢?

来源:百度知道 编辑:UC知道 时间:2024/05/10 09:53:25
@echo off
ECHO.
ECHO. ====================是否安装MSN====================
ECHO.
ECHO. y 安装MSN
ECHO.
ECHO. n 不安装
ECHO.
ECHO. ===================================================
set/p var=请选择 [y/n]
if %var%==y goto MSN
if %var%==n goto NEXT

:MSN
@echo 正在安装MSN请稍候……
@msiexec /i "C:\WINDOWS\runonce\进入桌面后运行\MsnMsgs.msi" /QN
@msiexec /i "C:\WINDOWS\runonce\进入桌面后运行\wllogin.msi" /QN
@C:\WINDOWS\runonce\进入桌面后运行\创建MSN快捷方式.cmd
@echo MSN安装完成
goto NEXT

:NEXT
@echo 正在清理安装用过的临时文件,请稍候……
@del C:\WINDOWS\run.vbs /Q /F
@del C:\WINDOWS\runonce\*.* /S /Q /F
@rd C:\WINDOWS\runonce /S /Q
@reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "MsnMsgr" /f
@reg delete "HKLM\SOFTWARE\Microsoft&#

看了一下没发现什么问题啊...

除了

if %var%==y goto MSN
if %var%==n goto NEXT

和我的写法不一样,其他应该没有什么了

if "%var%"=="y" goto MSN
if "%var%"=="n" goto NEXT

没有错误啊:

这样呢?

@echo off
setlocal enabledelayedexpansion
ECHO.
ECHO. ====================是否安装MSN====================
ECHO.
ECHO. y 安装MSN
ECHO.
ECHO. n 不安装
ECHO.
ECHO. ===================================================
set/p var=请选择 [y/n]
if !var!==y goto MSN
if !var!==n goto NEXT

:MSN
@echo 正在安装MSN请稍候……
@msiexec /i "C:\WINDOWS\runonce\进入桌面后运行\MsnMsgs.msi" /QN
@msiexec /i "C:\WINDOWS\runonce\进入桌面后运行\wllogin.msi" /QN
@C:\WINDOWS\runonce\进入桌面后运行\创建MSN快捷方式.cmd
@echo MSN安装完成
goto NEXT

:NEXT
@echo 正在清理安装用过的临时文件,请稍候……
@del C:\W