Subject: Re: bug#18745: 24.3; MS Windows, `call-process-shell-command' fails on `shell-quote-argument'ed bat file with quoted args

From: Eli Zaretskii <[email-masked]>
Date: Thu, 16 Oct 2014 16:57:19 +0300

> From: Stefan Monnier <[email-masked]>
> Cc: Noam Postavsky <[email-masked]>,  [email-masked]
> Date: Thu, 16 Oct 2014 09:47:20 -0400
> 
> >> (call-process-shell-command "\"c:/path-without-space/foo-bar.bat\""
> >> nil t t "\"x y\"")
> [...]
> > This is a Windows misfeature, not an Emacs bug: the CreateProcess
> > primitive fails like that when passed a command that is a batch file.
> > To work around, try using cmd.exe as the command, and the batch file
> > with arguments as its arguments, with "/c" prepended.
> 
> But call-process-shell-command (contrary to call-process) should already
> be using cmd.exe, no?

No, shell-file-name on Windows is set to invoke cmdproxy.