Next: Buffering in shells and subprocesses, Previous: Quoting issues, Up: Subprocesses [Contents][Index]
Programs that explicitly use a handle to the console (CON or
CON:) instead of stdin and stdout cannot be used as
subprocesses to Emacs, and they will also not work in shell-mode. The
default ftp client on Windows is an example of such a program - this
ftp program is mostly fine for use with ange-ftp
or
tramp
, but not for M-x ftp (see How do
I use FTP within Emacs). There is no convenient way for either Emacs
or any shell used in shell-mode
to redirect the input and
output of such processes from the console to input and output pipes.
The only workaround is to use a different implementation of the
program that does not use the console directly. Microsoft’s new
PowerShell appears to be another such program, so that cannot be used
as a replacement shell for Emacs.