当我使用Windows Run工具用参数调用我的exe时,它运行正常 我在下面做了 cmd.exe / C“C:\ ex \ abc.exe”skk 然后我的exe得到一击,我得到skk作为一个论点。我做了我 cmd.exe / C“C:\ ex \ abc.exe”“sk k”然后我的exe不会调用。为什么? 但同样的事情在cmd行中运行良好 “C:\ ex \ abc.exe”“sk k”
答案 0 :(得分:2)
这是设计
如果在/ C开关后出现两个以上的引号字符,那么“行为是看第一个字符是否是引号字符,如果是,则删除前导字符并删除命令行中的最后一个引号字符,在最后一个引号字符后保留任何文本。“,除非满足以下条件:
所以,当你这样做时
cmd.exe /C "C:\ex\abc.exe" "sk k"
它正在尝试执行
C:\ex\abc.exe" "sk k
显然,这不起作用。如果要使用包含空格的参数运行exe,请尝试
cmd.exe /C C:\ex\abc.exe "sk k"
或者将整个命令用双引号括起来:
cmd.exe /C ""C:\New Folder\abc.exe" "sk k""