Italian community of Lazarus and Free Pascal
Programmazione => Generale => Topic aperto da: maxt - Maggio 17, 2013, 07:41:50 pm
-
ho trovato questo esempio e ho provato a riprodurlo tale e quale
http://freepascalanswers.wordpress.com/tag/commands/
ma quando provo ad eseguirlo ottengo questo errore:
Project project1 raised exception class 'External: SIGSEGV'.
non capisco perche', sapreste aiutarmi?
-
Hai impostato a true la proprietà Options.poUsePipes del componente TProcess?
-
Tra l'altro, se non mi sbaglio, la proprietà CommandLine è deprecata. Dovresti usare le proprietà Executable (per il percorso dell'eseguibile) e Parameters (per gli eventuali parametri da passare).
-
Hai impostato a true la proprietà Options.poUsePipes del componente TProcess?
ok, impostando questa opzione leggo i risultati
non capisco una cosa: come mai se lancio qualche comando che genera molto output, nella memobox non vedo l'intero output, ma solo qualche decina/centinaia di righe? sara' qualche limitazione della memobox?
-
Semplicemente il buffer si riempie. Prova a vedere questo esempio presente nel wiki di lazarus http://wiki.freepascal.org/Executing_External_Programs#Reading_large_output