Autor Wątek: Console.WriteLine w aplikacji windowsowej  (Przeczytany 4245 razy)

Offline MDW

  • Użytkownik
    • www.encore-games.com

# Lipiec 17, 2007, 19:34:40
Stawiam dopiero pierwsze kroki w Visual C# i mam w związku z tym bardzo podstawowe pytanie.

Pisząc aplikację pod Windows (nie konsolową) mogę w jakiś sposób widzieć to co jest drukowane przy pomocy Console.WriteLine()? Można otworzyć jakąś konsolę i widzieć to co w niej się pokazuje?

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Xion

  • Moderator
    • xion.log

# Lipiec 17, 2007, 20:41:55
Jeżeli klasa Console nie ma żadnych metod odpowiedzialnych za kontrolę widoczności okna konsoli i jeżeli użycie Write nie powoduje automatycznego pokazania tego okna, to zawsze można zaimportować prostą funkcję Windows API AllocConsole(). Jej wywołanie stworzy okno konsolki i przekieruje do niej strumienie wejścia i wyjścia.

Offline kacperz1

  • Użytkownik

# Lipiec 17, 2007, 21:05:11

Offline czoper

  • Użytkownik
    • czoper.devlog

# Lipiec 17, 2007, 21:06:24
w Visual Studio jeżeli zrobiłeś projekt Windowsowy w C# to i tak możesz dołączyć do niego konsolę.

Menu Project -> NazwaProjektu Properties -> w zakładce "Application" interesuje Cię pozycja "Output Type". Po prostu zmieniasz z "Windows Application" na "Console Application" i powinna wyskoczyć konsola dodatkowo oprócz Windowsianego okienka Twojej aplikacji.

Offline MDW

  • Użytkownik
    • www.encore-games.com

# Lipiec 17, 2007, 21:13:15
w Visual Studio jeżeli zrobiłeś projekt Windowsowy w C# to i tak możesz dołączyć do niego konsolę.

Menu Project -> NazwaProjektu Properties -> w zakładce "Application" interesuje Cię pozycja "Output Type". Po prostu zmieniasz z "Windows Application" na "Console Application" i powinna wyskoczyć konsola dodatkowo oprócz Windowsianego okienka Twojej aplikacji.

I o to mi właśnie chodziło. Wielkie dzięki czoper! Działa wyśmienicie! :)

Pozostałym też dziękuję bardzo za odpowiedzi. Jednak w tej chwili nie potrzebuję żadnej wypasionej konsoli. Po prostu chciałem widzieć jakieś debug-logi w windowsowej aplikacji.

MDW

Offline czoper

  • Użytkownik
    • czoper.devlog

# Lipiec 17, 2007, 21:29:19
nie za ma co  ;)
aż mi karma z wrażenia skoczyła :D

Offline counterClockWise

  • Użytkownik

# Lipiec 17, 2007, 22:27:05
Możesz też bez dołączania odpalać projekt w trybie "Debug". Wtedy w okienku 'Output' wypisywany jest tekst z Console.WriteLine().

Offline MDW

  • Użytkownik
    • www.encore-games.com

# Lipiec 18, 2007, 16:29:26
Możesz też bez dołączania odpalać projekt w trybie "Debug". Wtedy w okienku 'Output' wypisywany jest tekst z Console.WriteLine().

No niby tak ale okno "Output" widzę dopiero po tym jak zamknę tworzony program. Tekstów wypisywanych przez Console.WriteLine() nie widać w czasie działania programu. :(

RageX

  • Gość
# Lipiec 18, 2007, 16:38:24
Możesz też bez dołączania odpalać projekt w trybie "Debug". Wtedy w okienku 'Output' wypisywany jest tekst z Console.WriteLine().

No niby tak ale okno "Output" widzę dopiero po tym jak zamknę tworzony program. Tekstów wypisywanych przez Console.WriteLine() nie widać w czasie działania programu. :(

Możesz też użyć Console.SetOut(log_out); (http://www.java2s.com/Code/CSharp/Development-Class/RedirectConsoleOut.htm)

Cytuj
Console.WriteLine w aplikacji windowsowej

W C# się chyba nie da zrobić aplikacji niewindowsowej ?

Offline MDW

  • Użytkownik
    • www.encore-games.com

# Lipiec 18, 2007, 16:44:53
Możesz też użyć Console.SetOut(log_out); (http://www.java2s.com/Code/CSharp/Development-Class/RedirectConsoleOut.htm)

Też się może przydać. Dzięki! :)


W C# się chyba nie da zrobić aplikacji niewindowsowej ?

Jak tworzę nowy projekt to mogę wybrać między innymi: "Windows Application" i "Console Application" :)

Offline Hadrian W.

  • Użytkownik
    • Homepage

# Lipiec 18, 2007, 17:26:12
W C# się chyba nie da zrobić aplikacji niewindowsowej ?
A Mono i DotGNU?

Offline counterClockWise

  • Użytkownik

# Lipiec 19, 2007, 01:42:01
Możesz też bez dołączania odpalać projekt w trybie "Debug". Wtedy w okienku 'Output' wypisywany jest tekst z Console.WriteLine().

No niby tak ale okno "Output" widzę dopiero po tym jak zamknę tworzony program. Tekstów wypisywanych przez Console.WriteLine() nie widać w czasie działania programu. :(

Kwestia ustawienia IDE. Ja widzę real-time w trakcie działania.

Offline MDW

  • Użytkownik
    • www.encore-games.com

# Lipiec 19, 2007, 10:28:00
No niby tak ale okno "Output" widzę dopiero po tym jak zamknę tworzony program. Tekstów wypisywanych przez Console.WriteLine() nie widać w czasie działania programu. :(
Kwestia ustawienia IDE. Ja widzę real-time w trakcie działania.

Ja też chcę tak mieć. :)

Offline counterClockWise

  • Użytkownik

# Lipiec 20, 2007, 00:11:03
Ja też chcę tak mieć. :)

Ale to musi być jakiś banalny powód - może wystarczy kliknąć "Debug->Windows->Output" żeby się pojawiło ?

RageX

  • Gość
# Lipiec 20, 2007, 01:14:46
postaw w kodzie break'a i w trybie debug sobie zakładkę "output" przypnij.