Ovládat konzoli přes jinou konzoli – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Ovládat konzoli přes jinou konzoli – C / C++ – Fórum – Programujte.comOvládat konzoli přes jinou konzoli – C / C++ – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
kkk
~ Anonymní uživatel
8 příspěvků
16. 2. 2011   #1
-
0
-

Ahoj,šlo by nějak ovládat 2 konzole tak že do první bych napsal slovo a to slovo by se ukazalo v druhé konzoli?

Nahlásit jako SPAM
IP: 213.19.38.–
Reklama
Reklama
crAzY^
~ Moderátor
+10
Grafoman
16. 2. 2011   #2
-
0
-

client-server aplikace?

Nahlásit jako SPAM
IP: 89.190.90.–
All you need is vision and time.
Lokutus7323
~ Anonymní uživatel
11 příspěvků
16. 2. 2011   #3
-
0
-

Spis myslim, ze mu jde o to, aby mel dva oddelene EXacE a ty si za chodu mohli posilat informace. Na urovni program > program, bez zapojeni site.

Nahlásit jako SPAM
IP: 94.112.250.–
Grungy0
Super člen
17. 2. 2011   #4
-
0
-

Na linuxe by sa to dalo implementovať pomocou správ, alebo zdielanej pamäte. Na Windows by mohlo tiež niečo také byť vo WINAPI, ale ešte som to nenašiel.

Nahlásit jako SPAM
IP: 158.193.84.–
Prvý náznak hlúposti, je pocit geniality.
crAzY^
~ Moderátor
+10
Grafoman
17. 2. 2011   #5
-
0
-

možná to bude zbytečný, ale co ty dvě aplikace normálně spojit (jako sockety)?

Nahlásit jako SPAM
IP: 89.190.90.–
All you need is vision and time.
nervak0
Věrný člen
17. 2. 2011   #6
-
0
-

Nejlepší by bylo, kdyby tazatel napsal, na co to chce, jak si to představuje. Takhle se dá odpovědět jen tolik, že by to šlo :)

Nahlásit jako SPAM
IP: 213.211.51.–
kkk
~ Anonymní uživatel
8 příspěvků
17. 2. 2011   #7
-
0
-

chcu dvě konzole které budou se sebou "komunikovat" např. zapnu 1 konzolu a 2 konzolu na počitači ,ta 1 konzole bude třeba hra, a ta druhá konzola bude vypisovat informace ze hry,kdybych třeba napsal do 1 konzole hello world tak by mi druhá konzola napsala: "napsal jsi hello world"apod.Je mi jedno v jestli to bude c nebo c++.

Nahlásit jako SPAM
IP: 213.19.38.–
nervak0
Věrný člen
17. 2. 2011   #8
-
0
-

Jestli hodláš "zapnout konzolu", tak se na to vykašli.

Potřebuješ dva procesy, které spolu budou komunikovat. Říká se tomu meziprocesová komunikace, ukázek je na netu spousta. To, že budou něco vypisovat do konzole, je vedlejší.

Nahlásit jako SPAM
IP: 213.211.51.–
Larry0
Newbie
18. 2. 2011   #9
-
0
-

no tipujem ze sa to da, ale neviem ako na to v C-cku, nikdy som to neskusal... Ale napriklad v bash-i ci inom shell-y by si to mohol spravit tym ze "presmerujes" vystup...
napr.: pustis 2 konzoly, zistis si ich ID alebo co to je a v jednej napises napr.: "echo 'blabla' > /dev/ttys000 " , teda len to ttys000 nahradis ID-ckom tej konzoly na ktoru sa to ma vypisat

Nahlásit jako SPAM
IP: 83.168.149.–
kkk
~ Anonymní uživatel
8 příspěvků
18. 2. 2011   #10
-
0
-

myslím že v c++ by se to dalo použít jako : system("echo blabla >ttys000"); ale nevím jak zjistit ID

Nahlásit jako SPAM
IP: 213.19.38.–
kkk
~ Anonymní uživatel
8 příspěvků
18. 2. 2011   #11
-
0
-

skusil sem tohle: system("echo blabla > test.exe"); ale napsalo mi to že to nemá přístup protože tu druhou konzolu využívá jiný process

Nahlásit jako SPAM
IP: 213.19.38.–
nervak0
Věrný člen
18. 2. 2011   #12
-
0
-

To, že v unixových systémech je skoro ke všemu, včetně (pseudo)terminálu, přístupový bod v rámci souborového systému, je ve Windows jaksi k ničemu ;) Ve Win je podobný soubor 'con', ale to je konzole procesu, který k němu přistupuje, takže do jiné než vlastní přes něj nezapíšeš.

Příkaz, co jsi napsal, je přesměrování výstupu příkazu echo do souboru test.exe, který patří právě spuštěnému procesu. A proto ti to zařve, neplácej blbosti o konzoli.

Ve Windows každý proces může mít jen jednu konzoli, pro další konzoli pořebuješ další proces a ... a jsme zpátky u meziprocesové komunikace.

Nahlásit jako SPAM
IP: 213.211.51.–
nervak0
Věrný člen
18. 2. 2011   #13
-
0
-

...

Nahlásit jako SPAM
IP: 213.211.51.–
kkk
~ Anonymní uživatel
8 příspěvků
19. 2. 2011   #14
-
0
-

Dík,našel sem tam pár chyb jako sleep místo Sleep a někde bylo = místo == jak sem to opravil tak to už funguje,pustily se mi 2 konzole ale zapisovalo se jen do 1 a do 2 nic ,jedině když sem tu 2 vypl napsalo se ^C,jinak nic jinýho se do 2 nevypsalo.

Nahlásit jako SPAM
IP: 213.19.38.–
nervak0
Věrný člen
19. 2. 2011   #15
-
0
-

Žádná chyba tam není! Ten sleep je _sleep z msvcrt a je lepší použít Sleep, ale nic jiného neměň.

Nahlásit jako SPAM
IP: 213.211.51.–
kkk
~ Anonymní uživatel
8 příspěvků
20. 2. 2011   #16
-
0
-

nejde píše to chybu ve visual c++ - uvedený soubor nelze najít jedině kdybych změnil to : if (!conStdinW || !(p = malloc(1000))) na
if (!conStdinW || !(p == malloc(1000)))

Nahlásit jako SPAM
IP: 88.101.102.–
nervak0
Věrný člen
20. 2. 2011   #17
-
0
-

Snad ta funkce není tak složitá, abys nepoznal, že == tam nedává smysl :) Ten kód je v C, pro C++ je potřeba to přetypovat.

if (!conStdinW || !(p = (char*)malloc(1000)))

Nahlásit jako SPAM
IP: 213.211.51.–
kkk
~ Anonymní uživatel
8 příspěvků
23. 2. 2011   #18
-
0
-

Dík,už sem myslím přišel jak s tím pracovat,

Nahlásit jako SPAM
IP: 213.19.38.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 52 hostů

Podobná vlákna

Barva v konzoli. — založil DeathHumanCZ

Obrazce v konzoli — založil Lukas

VB Sudoku v konzoli — založil Vili

Znaky v konzoli — založil code

Kolize v konzoli — založil :D

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý