Konsolenanwendung ping problem

  • C#
  • .NET (FX) 4.5–4.8

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    Konsolenanwendung ping problem

    Liebe Community!

    ich möchte, dass die werte, die eingegeben werden, eingelesen werden, und dann zusammen mit dem ping befehl im gleichen Fenster ausgeführt werden. es ist eine Konsolenanwendung, die in C# programmiert wird und später als .exe ausgeführt wird.

    hier mein Code:

    C#-Quellcode

    1. string IP = System.String.Empty;
    2. string n = System.String.Empty;
    3. string w = System.String.Empty;
    4. string l = System.String.Empty;
    5. string t = System.String.Empty;
    6. Console.WriteLine("Please insert IP: ");
    7. Console.WriteLine(" ");
    8. IP = Console.ReadLine();
    9. Console.WriteLine("How many echo requests do you want to start (-n command) Please insert a number!: ");
    10. Console.WriteLine(" ");
    11. n = Console.ReadLine();
    12. Console.WriteLine("Please adjust the timeout between each request in milliseconds (-w command, default is 1000ms): ");
    13. Console.WriteLine(" ");
    14. w = Console.ReadLine();
    15. Console.WriteLine("Please insert the size of the ping packet (-l command). The default is 32 bytes.: ");
    16. Console.WriteLine(" ");
    17. l = Console.ReadLine();
    18. Console.ReadKey();


    Danke für eure hilfe!
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!
    Ich sage mal so, ansich funktioniert das. Das Problem ist nur, wenn das Programm bei diesem befehl ankommt. Mein Programm wird geschlossen w und ein neues CMD öffnet sich, aber ohne den vorher generierten befehl.
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!
    so, habe es jetzt hinbekommen, das problem ist nur, dass die parameter nach ping also -n -w -l in einer bestimmten reihenfolge angeordnet sein müssen, das komische ist jetzt, dass wenn ich das ganze in der falschen reihenfolge ausführen lasse kommt kein fehler, aber der befehl wird nur mit ping und der ip und ohne parameter gestartet. wenn ich es allerdings in die richtige reihenfolge bringe, bekomme ich diesen fehler:

    C#-Quellcode

    1. Ein Ausnahmefehler des Typs "System.FormatException" ist in mscorlib.dll aufgetreten.


    hier mein jetziger code:

    C#-Quellcode

    1. string IP = System.String.Empty;
    2. string n = System.String.Empty;
    3. string w = System.String.Empty;
    4. string l = System.String.Empty;
    5. string t = System.String.Empty;
    6. Console.WriteLine("Please insert IP: ");
    7. IP = Console.ReadLine();
    8. Console.WriteLine(" ");
    9. Console.WriteLine("How many echo requests do you want to start (-n command) Please insert a number!: ");
    10. n = Console.ReadLine();
    11. Console.WriteLine(" ");
    12. Console.WriteLine("Please insert the size of the ping packet (-l command). The default is 32 bytes.: ");
    13. l = Console.ReadLine();
    14. Console.WriteLine("");
    15. Console.WriteLine("Please adjust the timeout between each request in milliseconds (-w command, default is 1000ms): ");
    16. w = Console.ReadLine();
    17. Console.WriteLine(" ");
    18. Console.WriteLine(" ");
    19. string strCmdText = string.Format("ping {0} -n {1} -l {2} -w {3]", IP, n, l, w);
    20. System.Diagnostics.Process.Start("cmd.exe", "/k" + strCmdText);
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!
    Gib mal den String

    Mr. C-Sharp schrieb:

    strCmdText
    explizit in der Console aus und probiere außerdem die Syntax in einer Batch-Datei aus.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    wenn ich über

    C#-Quellcode

    1. Console.WriteLine(strCmdText);


    den eingegebenen befehl ausgeben will, kommt der gleiche fehler
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!

    Mr. C-Sharp schrieb:

    der gleiche fehler
    Welche Werte hast Du denn eingegeben?

    Mr. C-Sharp schrieb:

    C#-Quellcode

    1. string strCmdText = string.Format("ping {0} -n {1} -l {2} -w {3]", IP, n, l, w);
    -w {3] ;)


    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    für die ip 127.0.0.1 für -n 4 für -l 32 und für -w 1000
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Mr. C-Sharp“ ()

    @Mr. C-Sharp In Post #8 steht die Lösung.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ich bin so dumm :D . Sorry, dass ich dich aufgehalten habe. Hab es wahrscheinlich übersehen, weil ich heute die erste brille bekommen habe und es übersehen habe, weil ich mich erst dran gewöhnen muss. *TOPKEK*

    ein letzte frage habe ich allerdings noch. Wie kann ich das ganze so programmieren, dass der befehl im gleichen Fenster ausgeführt wird?
    Lg Mr. C-Sharp

    Ein Computer ist immer nur so intelligent, wie der, der vor Ihm sitzt!

    Mr. C-Sharp schrieb:

    im gleichen Fenster
    Guckst Du Ping-Klasse.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!