🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.tcl
6 messages
6 total messages Started by yig Fri, 28 Apr 2006 12:21
Odpalanie programow spod tk
#361
Author: yig
Date: Fri, 28 Apr 2006 12:21
15 lines
1521 bytes
Witam,

Mam pytanko, a raczej dwa,czy istnieje mozliwosc odpalania
aplikacji commandline'owych spod tk. Przykladowo mam napisany
programik w C, pod cmd, ktory generuje troszke wynikow
na stdout, czy jest sposob zeby go odpalic za pomoca buttona
w widgecie, i wyswietlic jego wyjscie w jakims polu tekstowym, etc.

Czytalem cos nie cos o expectk, ale jak zauwazylem nie jest on
standardowo dolaczony do ActiveState Active Tcl/Expect, ani nie mozna go
sciagnac pod cygwina. Stad drugie pytanie czy jest jakas mozliwosc
"oszukania" tk i skorystanie ze standardowego expecta w skryptach tk.

Z gory dziekuje za pomoc,
yig
Re: Odpalanie programow spod tk
#362
Author: Googie
Date: Fri, 28 Apr 2006 14:53
33 lines
1865 bytes
yig wrote:
> Witam,
> 
> Mam pytanko, a raczej dwa,czy istnieje mozliwosc odpalania
> aplikacji commandline'owych spod tk. Przykladowo mam napisany
> programik w C, pod cmd, ktory generuje troszke wynikow
> na stdout, czy jest sposob zeby go odpalic za pomoca buttona
> w widgecie, i wyswietlic jego wyjscie w jakims polu tekstowym, etc.
> 
> Czytalem cos nie cos o expectk, ale jak zauwazylem nie jest on
> standardowo dolaczony do ActiveState Active Tcl/Expect, ani nie mozna go
> sciagnac pod cygwina. Stad drugie pytanie czy jest jakas mozliwosc
> "oszukania" tk i skorystanie ze standardowego expecta w skryptach tk.
> 
> Z gory dziekuje za pomoc,
> yig
> 
> 

Jeśli nie jest to program (ten w C) interaktywny, tylko wykonuje się i 
wyświetla coś na stdout, to wystarczy:

set results [exec program]

a jeśli chcesz kontrolować ewentualne błędy z tego programu to:

if {[catch {exec program} results]} {
	puts "Wystąpił błąd! Szczegóły: $results"
}

-- 
Pozdrawiam! (Greetings!)
Googie
Re: Odpalanie programow spod tk
#363
Author: Mirosław Kosmala
Date: Mon, 01 May 2006 00:55
29 lines
1800 bytes
Googie wrote:
>> 
>> Mam pytanko, a raczej dwa,czy istnieje mozliwosc odpalania
>> aplikacji commandline'owych spod tk. 
>>
> 
> Jeśli nie jest to program (ten w C) interaktywny, tylko wykonuje się i
> wyświetla coś na stdout, to wystarczy:
> 
> set results [exec program]
> 
> a jeśli chcesz kontrolować ewentualne błędy z tego programu to:
> 
> if {[catch {exec program} results]} {
> puts "Wystąpił błąd! Szczegóły: $results"
> }
> 

   Right! :-)

   Przy okazji 'exec' warto (przynajmniej w Cygwinie) zainteresować się
poleceniem 'interp' - żeby przy bardziej zasobożerconowym 'exec-u' nie
zajmować w wirtualną nieskończoność bieżącego procesu :-)


-- 
Miroslaw Kosmala    mail-to:miroslaw.kosmala(|)trilowcy.org
Linux User:#197007  root:$1$ueQ1d75z$NlDhu6oQhfUpmBlnKTDpj0:
DNS-Private-Name:   syriusz.ath.cx -> Powered by SlackWare %-*
Re: Odpalanie programow spod tk
#364
Author: yig
Date: Thu, 04 May 2006 06:24
12 lines
1136 bytes
[ciach]
> Jeśli nie jest to program (ten w C) interaktywny, tylko wykonuje się i
> wyświetla coś na stdout, to wystarczy:
[ciach]

Witam,

Czyli w przypadku jakiejkolwiek interaktywnosci bez expectk niewiele
zwojuje?

Dzieki,
yig
Re: Odpalanie programow spod tk
#365
Author: Derek Kuliński / takeda
Date: Thu, 04 May 2006 06:49
16 lines
1682 bytes
On Thu, 4 May 2006 08:24:05 +0200, yig wrote:

> Witam,
> Czyli w przypadku jakiejkolwiek interaktywnosci bez expectk niewiele
> zwojuje?

*AFAIK* przy odpowiednim zaparciu, możesz użyć open i jako nazwę podać
"|<program>"

Pewnie trzeba też otwarty stumień skonfigurować aby był bez buforowania i
nonblocking...

-- 
ダレック
takeda@IRCnet.EFnet, ICQ# 15827691, YahooIM: takeda64
http://ircwiki.takeda.tk - strona wiki poświęcona IRC
Re: Odpalanie programow spod tk
#366
Author: yig
Date: Thu, 04 May 2006 12:34
6 lines
1002 bytes
Witam,

Dzieki wielkie.

Pozdrawiam
yig
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads