我有这批代码:
IF [%1]==[] GOTO NoParameter
IF NOT [%1]==[] GOTO Parameter
:NoParameter
SET /p "Name= ASM file name (exclude .ASM): "
TASM /ZI %Name%
IF ERRORLEVEL 1 GOTO End
TLINK /v %Name%
IF ERRORLEVEL 1 GOTO End
TD %Name%
GOTO End
:Parameter
TASM /ZI %1
IF ERRORLEVEL 1 GOTO End
TLINK /v %1
IF ERRORLEVEL 1 GOTO End
TD %1
:End
它在CMD中运行良好,但在DOSBox中并不是我需要的。该脚本未在SET / p暂停,并继续执行下一个命令,以null作为参数,然后在TLINK处停止,因为给定的参数无效。如果我在从DOSBox运行脚本时输入参数,则脚本可以正常工作。知道如何获得这样的用户输入吗?
答案 0 :(得分:0)
DOSBox不支持XP命令扩展,例如set /p
,即开发人员was against it。
输入字符串的唯一方法是使用该论坛中提到的string25
之类的其他实用程序。