Indított prg output olvasása (C-ben)

Címkék
Indított prg output olvasása (C-ben)
2009-01-04T23:50:34+01:00
2009-01-05T10:44:06+01:00
2022-11-12T02:41:51+01:00
pdonor
Egy adott konzolos programcsomagnak szeretnék grafikus felületet csinálni linuxon GTK-ban. A grafikus részével nincs is gond csak nem tudom ellenőrizni mit írnak vissza a standard-re. Csak, hogy mindenkinek tiszta legyen több kisebb programról van szó amik egymástól függetlenek és mindegyik konzolos.

Egyenlőre különböző gombokhoz rendeltem ezeknek az indítását, de nem tudom hogyan tudnám ellenőrizni, azok mit írnak ki konzolra. Egyenlőre system("program"); indítok mindent. :/
Mutasd a teljes hozzászólást!
Szerintem az a legegyszerűbb, ha nyitsz egy új szövegfájlt, majd abba átirányítod a konzolos progik kimeneteit, és a progik lefutása után kiolvasod a fájlból, hogy mit produkáltak/üzentek. A te példáddal élve valahogy így:

// program futtatása, kimenete átirányítva system("program >> /tmp/program.out"); // aztán beolvasod a fájt fopen, fgets, fclose, stb... (nem részletezem)

Így a "/tmp/program.out" fájlba írják a programok a kimeneteket, amit be tudsz a futásuk után olvasni.

Ennél egyszerűbb most nem jutott az eszembe.
Mutasd a teljes hozzászólást!

Címkék
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd