我的AutoIt脚本:
WinWaitActive("Open")
Send($CmdLine[1])
Send("{ENTER}")
我从Java执行它(将文件路径传递给它):
String autoITExecutable = "C:\\filechooser.exe " + fileSource;
文件名包含空格,因此它将文件名读取到第一个空格并忽略余数。如何正确传递包含空格的文件路径作为命令行参数?
答案 0 :(得分:3)
文件名包含空格,但它仅为第一个空格读取文件名并剪切文件名。
根据Documentation - Intro - Running Scripts:
如果您正在使用空格传递字符串,那么您需要使用"双引号"在命令行字符串中。
如果没有,则空格后的文本将包含在下一个数组元素(在这种情况下为$CmdLine[2]
)中。 Java示例:
String autoITExecutable = "C:\\filechooser.exe \"" + fileSource + "\"";
根据接收AutoIt脚本的$CmdLineRaw
,可以使用未处理的命令行(单个字符串)。