C# Webseite öffnen lassen?

3 Antworten


Aceer20 
Beitragsersteller
 30.11.2019, 18:48

Erstmal Danke für die schnelle Antwort!

Aber leider kommt dir Fehlermeldung immernoch

0
Aceer20 
Beitragsersteller
 30.11.2019, 19:04
@TechnicGuru

musste erstmal nachschauen😅

ich benutze Konsolen-App(.NET Core)

0
System.Diagnostics.Process.Start(System.Environment.GetEnvironmentVariable("COMSPEC"), "/C " + "start " + URL)

Übrigens, kennst du schon "switch" und "case"?

Obwohl sich für so etwas ein Array oder eine List anbietet. (Hier ist zu berücksichtigen, dass die Indizes 0-basiert sind.)

Woher ich das weiß:Berufserfahrung – Software-Entwickler

Erstmal Danke , das Du ein Foto gepostet hast und keinen Code...

Es macht unheimlich Spaß Code von einer Fotografie abzutippen...

ConsoleApp1.cs

using System;
namespace ConsoleApp1
{
class Program
{
    static void Main(string[] args)
    {


        Console.Write("1,2 oder 3 eingeben : "); 
        double x=0; //wichtig einen definierten Wert eingeben, bei Eingabe einer NichtZahl geht die Zuweisung  an x  in die Hose...
        try {x=Convert.ToDouble(Console.ReadLine());} catch {}; //bei einem Fehler nichts unternemen, x ist bereits mit 0 in einem definierten Zustand.
        if (x == 1)
        {
            System.Diagnostics.Process.Start("https://www.gutefrage.net/frage/c-webseite-oeffnen-lassen");
        }
        if (x == 2)
        {
            System.Diagnostics.Process.Start("https://www.google.com/");
        }
        if (x == 3)
        {
            System.Diagnostics.Process.Start("https://gmx.net");
        }
        else
        {
            Console.WriteLine("ungültige Eingabe!");
        }
        Console.ReadKey ();
    }
}}

Keine Ahnung was für eine Fehlermeldung bei Dir kommt. Bei mir läuft über den KommandozeilenCompiler alles glatt...

Einen möglichen Fehler bei falscher Eingabe von NichtZahlen habe ich gleich mit gefixt.

Hier eine c#HybridBatch, welche den Code automatisch compiliert:

ConsoleApp1.cmd

/* 2>nul ||@cls und flink eine Zeile Prompt löschen
@echo off
mode con cols=80
for /f "tokens=* delims=" %%v in ('dir /b /s /a:-d /o:-n "%SystemRoot%\Microsoft.NET\Framework\*csc.exe"') do (
set "csc=%%v"
)
"%csc%" /out:"%~n0.exe" %0

echo Demo:
"%~n0.exe"
echo:
pause
exit /b %errorlevel%

rem Die nächste Zeile ist wichtig nicht ändern!
::::C#code */

using System;
namespace ConsoleApp1
{
class Program
{
  static void Main(string[] args)
  {

    Console.Write("1,2 oder 3 eingeben : "); 
    double x=0; //wichtig einen definierten Wert eingeben, bei Eingabe einer NichtZahl geht die Zuweisung an x in die Hose...
    try {x=Convert.ToDouble(Console.ReadLine());} catch {}; //bei einem Fehler nichts unternemen, x ist bereits mit 0 in einem definierten Zustand.
    if (x == 1)
    {
      System.Diagnostics.Process.Start("https://www.gutefrage.net/frage/c-webseite-oeffnen-lassen");

    }
    if (x == 2)
    {
      System.Diagnostics.Process.Start("https:
//www.google.com/");

    }
    if (x == 3)
    {
      System.Diagnostics.Process.Start("https:
//gmx.net");

    }
    else
    {
      Console.WriteLine("ungültige Eingabe!");
    }
    Console.ReadKey ();
  }
}}

Erzesel  30.11.2019, 20:30

PS hatte durch den Gnatz über die Abtipperei nicht darauf geachtet :

für die 2. und 3. Option muss es natürlich else if statt if heißen

else if (x == 2)
... 
else if (x == 3)
...
else
...
0