使用start“”“%~dp0 \ server.exe”启动服务器,由于空格而忽略参数

时间:2016-08-19 23:51:44

标签: batch-file unrealscript

START "Test Server" "%~dp0\server.exe" LAN %M%.aao log=server.log ini=server.ini

“LAN”之后的所有内容都没有被server.exe执行我可以在服务器日志文件中看到它正在尝试打开局域网但它应该尝试打开%m%.aao这意味着“LAN”之后的所有内容被忽略了。

我该如何解决这个问题?

使用

START "Test Server" server.exe LAN %M%.aao log=server.log ini=server.ini

将无法正常工作,因为我正在尝试从WOTGreal运行批处理文件。我不确定为什么,但我为其他两个文件/程序修复它的方式是使用%~dp0,但是服务器要求不要忽略这些空格。

1 个答案:

答案 0 :(得分:0)

  

我正在尝试从WOTGreal运行批处理文件

因此批处理文件将从另一个文件夹运行。这也意味着server.exe将从另一个文件夹运行。因此,将从错误的目录中读取%M%.aao log=server.log ini=server.ini中的本地文件名。

您可以通过在所有其他路径中使用%~dp0来解决此问题。但是在批处理文件的开头更改当前目录可能更容易。为此,请将以下行添加到批处理文件的开头。

cd /d "%~dp0"