I wanted to thank you guys for you help with this and other problems I posted 
recently. 

My project entered beta today... and I'm expecting it to be opensourced in the 
coming mth or so.

 

I ended up using the suggestion of using the fpsystem() call which seemed to 
work well except that it does not work if you do not have a bash shell 
installed in your environment. I worked around this by sym linking sh to bash 
to make it work under busybox; however, someone may want to look to see if the 
fpsystem call can be shell independant.

 

John
 


From: zittw...@hotmail.com
To: fpc-pascal@lists.freepascal.org
Subject: Exec(), Linux, and /dev/null redirection
Date: Tue, 16 Feb 2010 16:34:08 -0800



I'm cross developing a program in free pascal running FreeVision. When running 
under Linux / Busybox; I'm attempting to mount a device to scan it for a set of 
files. Since I'm running a TUI (Text User Interface); I cannot have the BusyBox 
mount command printing failure information to the screen where it corrupts the 
TUI. The pascal code:
 
Exec( '/bin/mount', '/dev/'+ aline +' /media/' + aline + ' &> /dev/null');
 
When running:
 
Exec( '/bin/mount', '/dev/'+ aline +' /media/' + aline );
 
I see "device busy" STDERR messages appear on the screen. However, when I try 
to redirect using the ' &> /dev/null' it appears as tho the BusyBox executable 
is being passed ' &> /dev/null' as a parameter and isn't taking it as the 
appropriate redirection command.
 
I tried the following kludge instead:
var
OurPipe    : Text;
 
         popen( OurPipe, '/bin/mount /dev/'+ aline +' /media/' + aline, 'R');
         Try
             if (fpgeterrno=0) then Flush (OurPipe)
             ELSE MessageBox ('mount pipe error ' + IntToStr(fpgeterrno), nil,
                  mfError or mfOKButton);
         Finally
             PClose( OurPipe );
         END;
 
however, I'm getting an Accessviolation. unsure if I'm even going down the 
right path.
 
Any other suggestions?
                                          
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to