Ich muss die Konsole schließen, wenn der Benutzer eine Menüoption auswählt.
Ich habe versucht, close()
aber es hat nicht funktioniert ..
Wie kann ich das machen?
Antworten:
Environment.Exit
und Application.Exit
Environment.Exit(0)
ist sauberer.
http://geekswithblogs.net/mtreadwell/archive/2004/06/06/6123.aspx
Mit Schließen meinen Sie, dass die aktuelle Instanz der Konsolen-App geschlossen werden soll oder dass der Anwendungsprozess beendet werden soll? Verpasst, dass alle wichtigen Exit-Code:
Environment.Exit(0);
Oder um die aktuelle Instanz des Formulars zu schließen:
this.Close();
Nützlicher Link .
//How to start another application from the current application
Process runProg = new Process();
runProg.StartInfo.FileName = pathToFile; //the path of the application
runProg.StartInfo.Arguments = genArgs; //any arguments you want to pass
runProg.StartInfo.CreateNoWindow = true;
runProg.Start();
//How to end the same application from the current application
int IDstring = System.Convert.ToInt32(runProg.Id.ToString());
Process tempProc = Process.GetProcessById(IDstring);
tempProc.CloseMainWindow();
tempProc.WaitForExit();
return;
beendet eine Methode in C #.
Siehe Codefragment unten
using System;
namespace Exercise_strings
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Input string separated by -");
var stringInput = Console.ReadLine();
if (string.IsNullOrWhiteSpace(stringInput))
{
Console.WriteLine("Nothing entered");
return;
}
}
Wenn in diesem Fall ein Benutzer eine Nullzeichenfolge oder ein Leerzeichen eingibt, beendet die Verwendung der Rückgabemethode die Hauptmethode elegant.
Sie haben also nicht gesagt, dass die Anwendung abrupt beendet oder beendet werden soll. Als weitere Option können Sie die Antwortschleife möglicherweise elegant beenden. (Ich gehe davon aus, dass Sie eine while-Schleife haben, die auf Benutzeranweisungen wartet. Dies ist ein Code aus einem Projekt, das ich gerade heute geschrieben habe.
Console.WriteLine("College File Processor");
Console.WriteLine("*************************************");
Console.WriteLine("(H)elp");
Console.WriteLine("Process (W)orkouts");
Console.WriteLine("Process (I)nterviews");
Console.WriteLine("Process (P)ro Days");
Console.WriteLine("(S)tart Processing");
Console.WriteLine("E(x)it");
Console.WriteLine("*************************************");
string response = "";
string videotype = "";
bool starting = false;
bool exiting = false;
response = Console.ReadLine();
while ( response != "" )
{
switch ( response )
{
case "H":
case "h":
DisplayHelp();
break;
case "W":
case "w":
Console.WriteLine("Video Type set to Workout");
videotype = "W";
break;
case "I":
case "i":
Console.WriteLine("Video Type set to Interview");
videotype = "I";
break;
case "P":
case "p":
Console.WriteLine("Video Type set to Pro Day");
videotype = "P";
break;
case "S":
case "s":
if ( videotype == "" )
{
Console.WriteLine("Please Select Video Type Before Starting");
}
else
{
Console.WriteLine("Starting...");
starting = true;
}
break;
case "E":
case "e":
Console.WriteLine("Good Bye!");
System.Threading.Thread.Sleep(100);
exiting = true;
break;
}
if ( starting || exiting)
{
break;
}
else
{
response = Console.ReadLine();
}
}
if ( starting )
{
ProcessFiles();
}