Console + FormApp v jednom – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Console + FormApp v jednom – .NET – Fórum – Programujte.comConsole + FormApp v jednom – .NET – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
Aigor0
Newbie
22. 10. 2012   #1
-
0
-

Ahoj,

řeším problém jak skloubit Form i konzolovou aplikaci v jednom. Jde o to, že při normální spuštěním by se měla chovat jako formulářová aplikace. Ale při spuštění s jiným parametrem by měla fungovat pouze přes konzolu kvůli použití ve scriptech.

Pokud vytvořím projekt jako konzolovou aplikaci, vždy se při spuštění otevře i konzolové okno.
Pokud naopak vytvořím formulářovou aplikaci, nemohu přijít na způsob, jak otevřít konzolu.

Mohl by mě někdo nasměrovat na správné řešení?

Nahlásit jako SPAM
IP: 91.214.156.–
ASM -> Pascal -> C -> C++ -> PHP/mySQL and now C# && .NET beginner..
RomanZ
~ Anonymní uživatel
272 příspěvků
22. 10. 2012   #2
-
0
-

Toto by mne taky zajimalo.

Ja jsem to zatim vzdycky resil tak, ze jsem napsal dve aplikace (jednu konzolovou a jednu forms), ktere sdilely spolecnou DLL knihovnu a v te byl vsechen vykonny kod. Aplikace pak pouze prevadely sve vstupy na volani DLL knihovny a vysledky prezentovaly dle svych moznosti.

Funguje to potom presne jak potrebujes, ale neni to tak elegantni jako mit jedno *.EXE - jestli to jde, taky bych chtel vedet jak. Osobne si myslim, ze to v .NETu nejak jednoduse nepujde a ze to jde dobre udelat jen u nativnich aplikaci (treba napsanych ve starych Delphi nebo C++).

Nahlásit jako SPAM
IP: 90.176.60.–
Řešení
Aigor0
Newbie
22. 10. 2012   #3
-
0
-
Vyřešeno Nejlepší odpověď

Hmm, tak se omlouvám za výkřik do tmy - právě jsem našel dost šílený popis stejného problému na stackoverflow...

http://stackoverflow.com/questions/472282/show-console-in-windows-application

Co mi moje stačí moje mizerná angličtina a google překladač, tak to opravdu nejde nijak rozumně.
Zdá se, že nejlepší způsob budou opravdu dvě verze aplikace + DLL jak píšeš 

Nahlásit jako SPAM
IP: 91.214.158.–
ASM -> Pascal -> C -> C++ -> PHP/mySQL and now C# && .NET beginner..
ingiraxo+15
Grafoman
22. 10. 2012   #4
-
0
-

a co je a tom težkýho? Main(string[] args) je v obou případech.. mužeš si zjišťovat jestli má nějaký parametry a pokud ano, tak budes pracovat s konzoli jinak v formem.. na tom stacku máš i ukázku

a pokud chces i konzoli společne s formem, tak jen nastavíš projekt jako konzole.. to je cely

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Aigor0
Newbie
24. 10. 2012   #5
-
0
-

Ano, to sem pochopil. Jen ten proces mi přijde prostě dost - "nestandardní"...

Nerad používám hacky, aby něco fungovalo za každou cenu tak jak chci. Někdy je lepší přehodnotit zadání.
Nicméně jako řešení to je, to nepopírám.

Nahlásit jako SPAM
IP: 91.214.156.–
ASM -> Pascal -> C -> C++ -> PHP/mySQL and now C# && .NET beginner..
ingiraxo+15
Grafoman
24. 10. 2012   #6
-
0
-

nestandardní? hacky?... tohle je běžnej způsob jak se to dělá (tím myslim bez použití winapi)... ono taky míchat konzoli s gui si dost protiřečí.. nějak nechápu proč by to někdo dělal :) bud chci okno nebo konzoli a pokud obojí, tak je to hlavně pro debug/log

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Aigor0
Newbie
24. 10. 2012   #7
-
0
-

#6 ingiraxo

"ono taky míchat konzoli s gui si dost protiřečí" - to je věc pohledu. Viz můj příklad a podobné dotazy na netu. Přijde mi to naopak jako úplně běžný požadavek z praxe.

Nahlásit jako SPAM
IP: 91.214.158.–
ASM -> Pascal -> C -> C++ -> PHP/mySQL and now C# && .NET beginner..
ingiraxo+15
Grafoman
24. 10. 2012   #8
-
0
-

#7 Aigor
v praxi se spíš používají 2 app, kde jedna je konzolová, obsahuje veškerou práci a druhá je gui, která využívá tu konzolovou app a přidává jen gui

Nahlásit jako SPAM
IP: 213.168.183.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
eximik0
Newbie
26. 10. 2012   #9
-
0
-

Já bych to řešil asi tak, že defaultně by byla konzole třeba a v případě příkazu bych otevřel nové vlákno s novým gui oknem a consoli bych zavřel...

Nahlásit jako SPAM
IP: 93.99.138.–
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, 13 hostů

Podobná vlákna

Console i Form — založil rybar73

Nastavení console — založil jisla

Console in java — založil sleepy

Console.WriteLine — založil funkce

Console v Eclipse — založil sikus

 

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