使用start命令启动具有多个参数的另一个批处理文件?

时间:2013-08-11 06:06:27

标签: batch-file call self-updating

是否可以使用start命令启动另一个批处理文件并使用空格传递多个参数?

以下是我的计划目前的运作方式:

主程序启动>看到它过时的>调用updater(data1.exe)>更新程序通过>复制新版本它试图删除旧版本,但它不能。从调用更新程序时起,旧版本仍被标记为正在使用。

这就是call命令不起作用的原因。我需要先使用start吗?这会怎么样?

这是原始代码行...调用更新程序并传递变量的代码:

call "%dirofbatch%data1.exe" "%downloc%" "%dirofbatch%" "%lver%" "%lget%"

我很难过。

编辑:我应该提到“data1.exe”只是一个exe'd批处理文件。

1 个答案:

答案 0 :(得分:4)

如何读取批处理文件中的参数:

  1. 来电批次

    start "" "%dirofbatch%data1.exe" "%downloc%" "%dirofbatch%" "%lver%" "%lget%"
    
  2. 名为批次

    set "parm1=%~1"
    set "parm2=%~2"
    set "parm3=%~3"
    set "parm4=%~4"
    echo %parm1% %parm2% %parm3% %parm4%