[Lazarus] TProcess
Antonio Fortuny
a.fortuny at sitasoftware.lu
Thu Sep 13 11:11:00 CEST 2012
> Hi list.
>
> Which function to use in Linux (if any) to get the process ID of a
> running process which is not mine. GetProcessID retrieves my own process
> ID.
> I'm using OpenProcess in Win
>
> Antonio.
This time it is not a question but a solution to a problem which was
quite boring.
Using the TProcess component to launch antother task, I ran in trouble
when dealing with piped commands like 'ps -s | grep something'
Got the solution:
with TProcess.Create(nil) do try
CommandLine := CmdLine.Text;
Options := Options + [poWaitOnExit, poUsePipes, poStderrToOutPut];
Execute;
Memo1.Lines.LoadFromStream(Output);
Finally
Free
End
CmdLine.Text := '/bin/sh -c ''ps -s | grep something'' '
THis works fine whatever the sh could be (I use bash)
Antonio.
More information about the Lazarus
mailing list