[Gelöst] ExecuteProcess Ausgaben des neuen Prozesses fehlen

Antworten
aro
Beiträge: 130
Registriert: Di 26. Jul 2011, 19:58
OS, Lazarus, FPC: Deepin 20.2; Lazarus 2.0.0 + dfsg-2
CPU-Target: 64Bit

[Gelöst] ExecuteProcess Ausgaben des neuen Prozesses fehlen

Beitrag von aro »

Hallo,
nach dem ich komplett auf Linux umgestellt habe, fehlte mir Atmel Studio.
Habe also das Programm für Linux neu nachgebaut. Die einfachste Lösung, um die Chips zu brennen, schien mir zu sein, die Parameter für AVRDUDE zusammen zu bauen und AVRDUDE dann einfach zu starten.

Um Prozesse zu starten wird allgemein TProcess empfohlen.

Die gute Nachricht, AVRDUDE startet, erkennt die Parameter, brennt den Kontroller und das Programm wird auch richtig ausgeführt.

Die schlechte Nachricht, wenn ich AVRDUDE in der Konsole ausführe bekomme ich Informationen, wenn und wo etwas gehakt hat.
Mit TProcess soll man angeblich über TProcess.Output die Ausgaben des Programms abfangen können.
TProcess.Options = [poWaitOnExit, poUsePipes];
Es kommen aber keine Informationen zurück.

Was kann ich anders machen ?
Zuletzt geändert von aro am Mo 9. Nov 2020, 19:51, insgesamt 1-mal geändert.

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: ExecuteProcess Ausgaben des neuen Prozesses fehlen

Beitrag von theo »


aro
Beiträge: 130
Registriert: Di 26. Jul 2011, 19:58
OS, Lazarus, FPC: Deepin 20.2; Lazarus 2.0.0 + dfsg-2
CPU-Target: 64Bit

Re: ExecuteProcess Ausgaben des neuen Prozesses fehlen

Beitrag von aro »

Hallo,
genau das ist mein Problem.

ich verwende :

AStringList := TStringList.Create;
AProcess.Options := AProcess.Options + [poWaitOnExit, poUsePipes];
AProcess.Execute;
AStringList.LoadFromStream(AProcess.Output);
AStringList.SaveToFile('/home/aro/xx.txt');

Das Programm wird richtig ausgeführt, aber es kommt offensichtlich nichts in AProcess.Output an und ich erhalte deshalb eine leere Datei.

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: ExecuteProcess Ausgaben des neuen Prozesses fehlen

Beitrag von theo »

Auch mit der Option " poStdErrToOutPut", wie ich oben geschrieben hatte?

aro
Beiträge: 130
Registriert: Di 26. Jul 2011, 19:58
OS, Lazarus, FPC: Deepin 20.2; Lazarus 2.0.0 + dfsg-2
CPU-Target: 64Bit

Re: ExecuteProcess Ausgaben des neuen Prozesses fehlen

Beitrag von aro »

Danke jetzt klappt es wie gewollt.

sstvmaster
Beiträge: 575
Registriert: Sa 22. Okt 2016, 23:12
OS, Lazarus, FPC: W10, L 2.2.6
CPU-Target: 32+64bit
Wohnort: Dresden

Re: [Gelöst] ExecuteProcess Ausgaben des neuen Prozesses fehlen

Beitrag von sstvmaster »

LG Maik

Windows 10,
- Lazarus 2.2.6 (stable) + fpc 3.2.2 (stable)
- Lazarus 2.2.7 (fixes) + fpc 3.3.1 (main/trunk)

Antworten