![]() |
TProcess für pipe Transfer einrichten.
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. . |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:15 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz