This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Using bash(cygwin) inside C# program
- From: Dave Korn <dave dot korn dot cygwin at googlemail dot com>
- To: cygwin at cygwin dot com
- Date: Wed, 23 Sep 2009 22:37:56 +0100
- Subject: Re: Using bash(cygwin) inside C# program
- References: <001e01ca3c91$70f661c0$52e32540$@com>
amir knippel wrote:
> i created a process that runs bash and redirect stdin,stout and std error
> but I can’t get tty to work attached is a sample code that starts bash
> process and redirect the input/output.
> the problem is that i don't have tty device. if i try to run tty command or
> stty command i receive error response
> tty - not a tty
> stty - Inappropriate ioctl for device
> i need to run cygwin and disable echo with stty -echo but to do this i need
> a tty device. how can i create a cygwin bash shell with tty device and
> redirect the stdin, out and error ?
Why exactly do you think you need to run stty and set the tty operating
parameters, when the bash process is quite plainly *not* connected to a tty,
it is connected to your C# application?
It's your application that is in charge of I/O - if it doesn't want echo,
all it has to do is discard the stuff it reads from the process' stdout
instead of displaying it, in your OutDataReceived/ErrorDataReceived handlers.
> bashProcess.StartInfo.EnvironmentVariables["CYGWIN"] = "tty";
Don't do this. Win32 native processes don't understand Cygwin's tty
emulation, which is based on pipes.
cheers,
DaveK
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple