咸鱼反转 发表于 2020-8-9 18:14

有谁能转出这个批处理有什么错误

如题,运行后闪退
start regedit.exe
timeout /t 1
FOR /F "usebackq delims=" %%i in ('taskkill /f /im regedit.exe') do set a=%%i
set a=%a:~0,2%
if "%a%"=="成功"
start taskmgr.exe
:a
set /p c=请在这里输入y确定
ifnot %c%==y (echo 请输入y确认
goto :a)
start regedit.exe
timeout /t 1
for /f "eol=;delims=" %%i in ('taskkill /f /im regedit.exe') do set a=%%i
set a=%a:~0,2%
if not %a%==成功(echo 请再试一次
goto :a)
taskkill /f /im Taskmgr.exe
echo 开始杀毒
del /f C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Themes\*.exe
goto :b
:b
echo 杀毒完成
pause
exit

chaitin 发表于 2020-8-9 18:18

多试一遍

咸鱼反转 发表于 2020-8-9 18:39

chaitin 发表于 2020-8-9 18:18
多试一遍

???什么意思?

祝福看到你 发表于 2020-8-9 18:48

每个命令都pause看看运行到哪里,或者用echo

豆腐小僧 发表于 2020-8-9 18:57

每行都断点,看下是哪一行有问题

yc0205 发表于 2020-8-9 19:26

这是什么语言编写的??

xgd8511 发表于 2020-8-9 20:38

如果你路由器支持,可以把他们配到不同的网段上去,那样就不能互相访问了
如果路由器不支持配置不同的网段,那么他们只能在同一网段,就能互相访问共享
不过你可以考虑给主机共享设置访问密码的方式曲线达到目的

咸鱼反转 发表于 2020-8-9 21:15

祝福看到你 发表于 2020-8-9 18:48
每个命令都pause看看运行到哪里,或者用echo

用pause停不下来,在cmd用call打开时报两个错,一个是for,这里是命令行的问题,批处理可以忽略,另一个是set命令下一行提示语法错误,开启回显发现set命令执行成功了,我不明白是为什么?

祝福看到你 发表于 2020-8-14 21:13

不知还需不需要 了,稍微改了点,可以试试

start regedit.exe
timeout /t 1
FOR /F "delims=" %%i in ('taskkill /f /im regedit.exe') do set a=%%i
set a=%a:~0,2%
if "%a%"=="成功" start taskmgr.exe

:a
set /p c=请在这里输入y确定
ifnot %c%==y (echo 请输入y确认

goto :a)
start regedit.exe
timeout /t 1
for /f "delims=" %%i in ('taskkill /f /im regedit.exe') do set a=%%i
set a=%a:~0,2%
if not %a%=="成功"(echo 请再试一次 goto :a)
taskkill /f /im Taskmgr.exe
echo 开始杀毒
del /f C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Themes\*.exe
goto :b

:b
echo 杀毒完成
pause
exit

咸鱼反转 发表于 2020-8-14 21:16

祝福看到你 发表于 2020-8-14 21:13
不知还需不需要 了,稍微改了点,可以试试

start regedit.exe

我过几天试试,谢谢。我问一下我哪里出了问题?
页: [1] 2
查看完整版本: 有谁能转出这个批处理有什么错误