![为什么我的批处理文件在切换命令时会出现长时间的停顿?](https://linux22.com/image/1616831/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E7%9A%84%E6%89%B9%E5%A4%84%E7%90%86%E6%96%87%E4%BB%B6%E5%9C%A8%E5%88%87%E6%8D%A2%E5%91%BD%E4%BB%A4%E6%97%B6%E4%BC%9A%E5%87%BA%E7%8E%B0%E9%95%BF%E6%97%B6%E9%97%B4%E7%9A%84%E5%81%9C%E9%A1%BF%EF%BC%9F.png)
我们运行的软件只有 3 个许可证,但用户数量更多。如果超出,他们会向我们收费,因此我们创建了一个 excel 日志文件,用于检查和退出,以了解是否超出了 3 个限制。我创建了一个批处理文件,可以打开 excel 文件,然后提示是否有可用的许可证,如果有,则打开软件。在提示是否有可用的许可证之前,会有一个长时间的停顿,20 到 30 秒。这一定是因为“是/否”对话框的完成方式,但我对这些东西不太了解。我根据在线找到的东西对此进行了弗兰肯斯坦式的解释。有人可以告诉我一种更快的方法吗?这是我的:
@echo off
call "C:\\Program Files\\Microsoft Office\\root\\Office16\\EXCEL.EXE" "M:\RAM\RAM License Log\MultiFamily.xlsm"
:choice
echo wscript.quit MsgBox ("Is there a RAM license available?", 4, "RAM License Log") > yesno.vbs
wscript //nologo yesno.vbs
set value=%errorlevel%
del yesno.vbs
if "%value%"=="6" goto :RAM
if "%value%"=="7" goto :END
goto :choice
:RAM
call "C:\Program Files\Bentley\Engineering\RAM Concept CONNECT Edition\RAM Concept CONNECT Edition V8\Concept.exe"
cls
start "C:\Program Files (x86)\Microsoft Office\Office12\EXCEL.EXE" /high "M:\RAM\RAM License Log\MultiFamily.xlsm"
goto :END
:END
exit
谢谢你提供的所有帮助