[fpc-pascal] Ping problems - OS/X
Peter Brooks
peter.brooks at kchclinics.com
Wed May 21 16:36:59 CEST 2014
Unfortunately, I've tried both the full path and just the name -
apparently TProcess is supposed to look in the path - and it does
work. When it is called, it returns a '0' indicating successful
completion.
I just tried it again with /sbin/ping instead of ping and the
behaviour is just the same.
Is there an easier way to print the stream that comes back from
TProcess? I think that the problem is in TStringList.
On 21 May 2014 14:08, Mattias Gaertner <nc-gaertnma at netcologne.de> wrote:
> On Wed, 21 May 2014 13:00:58 +0200
> Peter Brooks <peter.brooks at kchclinics.com> wrote:
>
>> Sorry, I misled you. I did move it higher up, earlier, to test
>> something, and I forgot to put it back.
>>
>> This version has exactly the same behaviour:
>>
>> -rw-r--r-- 1 peterbrooks wheel 0 21 May 13:00 output.txt
>>
>> Program nmp(input,output);
>>
>> uses
>> Classes, SysUtils, Process;
>> var
>> AProcess: TProcess;
>> AStringList: TStringList;
>> n :Integer;
>> begin { main }
>> for n := 0 to 20 do
>> begin { for }
>> AStringList := TStringList.Create;
>> AProcess := TProcess.Create(nil);
>> AProcess.Executable := 'ping';
>
> TProcess needs the full path: '/bin/ping'
>
> TProcess needs to be extended to raise an exception in this case.
>
>> AProcess.Parameters.Add('-c 1');
>> AProcess.Parameters.Add('www.freepascal.org');
>> AProcess.Options := AProcess.Options + [poWaitOnExit, poUsePipes];
>> AProcess.Execute;
>> Writeln(n,' Execution Over: Exit Status: ',AProcess.ExitStatus);
>> AStringList.Add('stdout:');
>> AStringList.LoadFromStream(Aprocess.Output);
>> AStringList.Add('stderr:');
>> AStringList.LoadFromStream(AProcess.Stderr);
>> AStringList.LoadFromStream(AProcess.Output);
>> AStringList.SaveToFile('output.txt');
>> writeln(AStringList.Text);
>> AstringList.Free;
>> AProcess.Free;
>> end; {for}
>> close(output);
>> close(input);
>> end.
>
> Mattias
> _______________________________________________
> fpc-pascal maillist - fpc-pascal at lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
More information about the fpc-pascal
mailing list