Wykonanie komendy za pomocą TPRocess w systemie linux

0

Witam

Mam taki problem, używam Lazarusa i potrzebuję wykonać komendę i wyświetlić jej wynik w komponencie memo. Mam taki kod:

procedure TForm1.Button1Click(Sender: TObject);
var
   TmpProcess : TProcess;

     begin
          TmpProcess := TProcess.Create(self);
          TmpProcess.CommandLine := 'tutaj wpisuję komendę';
          TmpProcess.Options [poUsePipes]
          TmpProcess.Execute;
          Memo1.Lines.LoadFromStream(TmpProcess.Output);
          TmpProcess.Free;
      
     end;

Jak widać komendy wpisuję w Edit wyświetlają się takie komendy jak who, ls -all, lsmod. Komendy top, nano nie wyświetlają niczego.
Ja potrzebuje wykonać komendę sudo iptables -L jak ją wykonam to program się zacina :(
Proszę o pomoc bo nie mogę znaleźć materiałów poza wiki lazarusa.

0

Jak widać komendy wpisuję w Edit wyświetlają się takie komendy jak who, ls -all, lsmod. Komendy top, nano nie wyświetlają niczego.
Ja potrzebuje wykonać komendę sudo iptables -L jak ją wykonam to program się zacina :(
Proszę o pomoc bo nie mogę znaleźć materiałów poza wiki lazarusa.

też używam lazarusa :D.
Ale dobra-
Podejrzewam że program musi mieć uprawnienia roota ;/

0

Czyli Od razu po starcie musi pojawiac się okno logowania dla root-a?
A jak wykonac coś takiego w lazarusie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1