AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Lazarus (IDE) TProcess für pipe Transfer einrichten.
Thema durchsuchen
Ansicht
Themen-Optionen

TProcess für pipe Transfer einrichten.

Ein Thema von DualCoreCpu · begonnen am 4. Aug 2017
Antwort Antwort
DualCoreCpu
(Gast)

n/a Beiträge
 
#1

TProcess für pipe Transfer einrichten.

  Alt 4. Aug 2017, 12:44
Hallo,

ich habe diesen Quelltext:
Delphi-Quellcode:
unit uyapimain;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, process, FileUtil, Forms, Controls, Graphics, Dialogs,
  StdCtrls, ExtCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    btnInstall: TButton;
    btnCancel: TButton;
    btnClose: TButton;
    cbPkgToInstall: TComboBox;
    Label1: TLabel;
    Label2: TLabel;
    list: TListBox;
    InstallProcess: TProcess;
    RadioGroup1: TRadioGroup;
    procedure btnCloseClick(Sender: TObject);
    procedure btnInstallClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { private declarations }
    FPackageName: String;
    FParameters: String;
  public
    { public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
var i: integer;
begin
  InstallProcess.CurrentDirectory := GetCurrentDir + '/';
  FPackageName := '';
  if ParamCount <> 0 then FPackageName := ParamStr(1);
  for i := 2 to ParamCount-1 do FParameters := FParameters + ' ' + ParamStr(i);
  cbPkgToInstall.Text := FPackageName;
  //ShowMessage('Aktuelles Verzeichnis: '+InstallProcess.CurrentDirectory);
  //cbPkgToInstall.Text := '/home/knoppix/Downloads/skypeforlinux-64.deb';
end;

procedure TForm1.btnCloseClick(Sender: TObject);
begin
  Close;
end;

procedure TForm1.btnInstallClick(Sender: TObject);
begin
  //cbPkgToInstall.Text := '/home/knoppix/Downloads/skypeforlinux-64.deb';
  FPackageName := cbPkgToInstall.Text;
  if FPackageName <> 'then
  begin
    InstallProcess.Executable := FPackageName;
    InstallProcess.Parameters.Add('Install'); //Add(FParameters);
    InstallProcess.Execute;
    list.items.LoadFromStream(InstallProcess.Output);
  end
  else
  begin
    ShowMessage('Bitte zu installierendes Paket angeben!');
  end;
end;

end.

Folgende Options sind gesetzt:
[poWaitOnExit,poUsePipes,poStderrToOutPut,poNewProc essGroup]

Die Command Eigenschaft lautet "sudo apt get install "

Das Programm soll so auf der Kommandozeile aufgerufen werden können und als Parameter das zu installierende Paket übergeben bekommen.

In der Listbox soll dann der Installationsverlauf angezeigt werden. In der ersten Version einfach durch Umleitung der Ausgaben an die Console in die Listbox, siehe Formular.

Die Listbox bleibt aner leer. Was muss ich da noch einstellen. Ich programmiere unter Konoppix 7.6.

.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:25 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz