On Mon, Dec 19, 2016 at 3:36 AM, Faré <fahree@gmail.com> wrote:
On Mon, Dec 19, 2016 at 2:32 AM, Jean-Claude Beaudoin
<jean.claude.beaudoin@gmail.com> wrote:
>
>
(...)
> 2) test-run-program.script
>
> .../uiop/launch-program.lisp is incomplete for MKCL on windows and needs to
> be patched
> as per attached file to be in any way functional in that context.
> Once patched accordingly and applied to very latest MKCL repo master head
> this test now passes.
>
+               #+(or mkcl) (list "cmd" (strcat "/c " command))
The list seems very wrong, unless MKCL doesn't quote its arguments to
the win32 spawn function, which is probably wrong in its own right.

You lost me entirely here. It does look like something that works pretty well for being so wrong...

No "spawn" function involved here, just a very native and basic Win32 CreateProcessW() call.
 
Can you confirm how to execute
a raw CMD command line with MKCL?


Are you looking for something like

(mkcl:run-program "cmd" '("/c echo ok 1") :output t)
or
(mkcl:run-program "cmd" '("/c" "echo" "ok" "1") :output t)

both produce the same output (sent to stdout here by the ":output t" pair, adjust to your need).
Any slicing or concatenation of the arguments produce the same result.