Laden...

Wie Console starten?

Erstellt von nOTapRO vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.778 Views
Thema geschlossen
N
nOTapRO Themenstarter:in
2 Beiträge seit 2010
vor 13 Jahren
Wie Console starten?

Hallo Leute, ich bin neu und komme gleich schon nicht klar mit einem Vorgang.

Also hier ist der Code:

namespace HalloWelt
{
using System;
public class HalloWelt1
{
public static int Main(string[] args)
{
Console.WriteLine("Hallo Welt");
return 0;
}
}
}

Ich kann das Programm über Visual Studio 10 Express mit Strg+F5 starten, wenn ich aber in das Verzeichnis mit dem Programm gehe und es von dort starten will, funktioniert das nicht. Die Dosbox startet und schließt gleich wieder. Das gleiche passiert, wenn ich im Visual Studio einfach auf F5 drücke statt auf Strg+F5. Kann mir jemand erzählen, wie ich es hinkriege, dass mein Programm auch ohne das Visual Studio startet? Ich habe Windows XP Home 32 bit.

Ich bedanke mich im Voraus für die Antworten!

297 Beiträge seit 2008
vor 13 Jahren

Mit einem Console.ReadLine oder Console.ReadKey vor dem return-Statement sollte es klappen.

There are 10 kind of people, those who understand binary and those who don't.

P
66 Beiträge seit 2009
vor 13 Jahren

Hallo nOTapRO,

Das "return 0" kannst du dir sparen.
Verwende stattdessen:

Console.ReadKey();

Damit bewirkst du, dass die Konsole offen bleibt, bis du eine Taste drückst, da die ReadKey-Methode auf einen Tastendruck wartet.

//EDIT:
Sorry, nicht gesehen, dass schon geantwortet wurde. ^^

...

916 Beiträge seit 2008
vor 13 Jahren

Das Programm startet immer. Das ist nicht dein Problem. Dein Problem ist der Programmablauf. Das Programm macht genau das was du programmiert hast, nämlich die Main Methode betreten, Hallo Welt auf die Console schreiben, und dann die Main Methode wieder verlassen. Das verlassen der Main Methode hat zur Folge das auch die Console geschlossen wird. Wie n0TabR0 bereits geschrieben hat hilft dir ReadKey weiter.

Aber das sind wirklich absolute Grundlagen die schon unter 1.1 Wie poste ich richtig fallen.

Again what learned...

916 Beiträge seit 2008
vor 13 Jahren

Das "return 0" kannst du dir sparen.

Nein kann er nicht, da die Mehtoden Signatur wie folgt lautet.

public static int Main(string[] args)

Again what learned...

175 Beiträge seit 2010
vor 13 Jahren

Hi,

ich würde mal unterstellen, Dein Programm tut auch...

Wenn Du ein Konsolenprogramm startest (ich nehme mal an, Du machst einfach im Windows Explorer einen Doppelklick), dann startet Dein Windows eine Konsole (das "DOS-Fenster", das Du siehst) und startet in dieser Konsole Dein Programm.

Wenn sich nun Dein Programm beendet, dann beendet sich auch die Konsole und schwupps... das Fenster ist weg...

Mach mal folgendes.... Starte eine Eingabeaufforderung (unter XP wäre das Start -> Proggramme -> Zubehör -> Eingabeaufforderung), navigiere in Das Verzeichnis mit der .EXE (mit dem Befehl "CD") und starte dann die .EXE.... dann wirst Du die Ausgabe Deines Programmes sehen....

Bye,
Michael

Debuggers don't remove Bugs, they only show them in Slow-Motion.

P
66 Beiträge seit 2009
vor 13 Jahren

Nein kann er nicht, da die Mehtoden Signatur wie folgt lautet.

Stimmt natürlich... Da war ich wohl ein wenig voreilig.

Bin schon so an "void Main" gewöhnt, dass ich da gar nicht weiter drauf geachtet habe.

...

N
nOTapRO Themenstarter:in
2 Beiträge seit 2010
vor 13 Jahren

Danke schon mal an alle,
Console.ReadKey(); funktioniert wirklich nicht, über die Dosbox bin ich jetzt im richtigen Verzeichnis, wie öffne ich aber das Programm selbst? Also die .exe-Datei. Entschuldigt die dämliche Frage.

49.485 Beiträge seit 2005
vor 13 Jahren

Hallo nOTapRO,

wie öffne ich aber das Programm selbst? Also die .exe-Datei.

Wenn Du im richtigen Verzeichnis stehst, musst Du nur noch den Namen der .exe eingeben und Enter drücken.

Entschuldigt die dämliche Frage.

Wenn du bei weiteren Fragen bitte unbedingt [Hinweis] Wie poste ich richtig? Punkt 1.1.1 beachtest, sei dir hier noch mal verziehen. 😃

herbivore

Thema geschlossen