Batch file 访问被拒绝。。。?

Batch file 访问被拒绝。。。?,batch-file,Batch File,如果要测试,请在桌面上创建两个名为AH1和AH2的批处理文件 它说访问被拒绝…为什么???无论您在选项中输入了什么变量,它都会转到:yes 我猜您在执行此操作时与choice命令混淆了,因为errorlevel不包含您在使用set命令时选择的选项 从集合文档: %ERRORLEVEL%-扩展为当前ERRORLEVEL值 因此,您可能需要将if%errorlevel%eq no goto no更改为if%option%eq no goto no 另外,如果您既不输入是也不输入否,会发生什么情况。您

如果要测试,请在桌面上创建两个名为AH1和AH2的批处理文件
它说访问被拒绝…为什么???

无论您在
选项中输入了什么
变量,它都会转到
:yes

我猜您在执行此操作时与
choice
命令混淆了,因为
errorlevel
不包含您在使用
set
命令时选择的选项

集合
文档:

%ERRORLEVEL%-扩展为当前ERRORLEVEL值

因此,您可能需要将
if%errorlevel%eq no goto no
更改为
if%option%eq no goto no


另外,如果您既不输入
也不输入
,会发生什么情况。您可能需要在第二个
if
语句之后使用
exit
命令来说明这些问题。

默认情况下,只有管理员帐户才对“C:\ProgramData”下的所有内容具有写访问权。
@echo off
color 4
ping localhost 2.5 > nul
echo Welcome to the configuration menu.
echo Move AH1.exe and AH2.exe to your desktop.
echo This only works the first time
echo SO BE CAREFUL!
echo Would you like this to start on computer startup?
echo say "yes" or "no" below.
set /p option=Option:

IF %ERRORLEVEL% EQU no goto no
IF %ERRORLEVEL% EQU yes goto yes
:yes
echo Move AH1.bat and AH2.bat to desktop.
::Copies files to dekstop of current user *For Windows 7
xcopy "%systemdrive%\users\%username%\Desktop\AH1.bat" "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup"
xcopy "%systemdrive%\users\%username%\Desktop\AH2.bat" "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup"

echo Moved.
echo Press any key to close Anti Hacker Configuration.
pause > nul
exit
:no
echo No?The program will not take full effect then.
pause
exit