Anzeige:
Ergebnis 1 bis 9 von 9

Thema: Parameterübergabe beim Aufruf eines C#-Progs

  1. #1
    Registrierter Benutzer
    Registriert seit
    25.10.2005
    Ort
    Hamminkeln
    Beiträge
    302

    Parameterübergabe beim Aufruf eines C#-Progs

    Hallo *,

    ich möchte meiner Anwendung beim Aufruf (Start des eigentlichen Programms) einen Parameter ( oder besser eine Stringliste) über geben, ich benutze C# und habe auch einen entsprechenden Konstruktor zusätzlich erstellt. Aber dieser wird irgend wie nicht beachtet. Man könnte sich auch ein "Hallo World"-Prog vorstellen, das ich z. B. mit "C:\HalloWorld.exe Willi" aufrufe, und es dann auch "Hallo Willi" anzeigt, ohne Parameter zeigt es "Hallo World" an.
    Kann mir einer sagen was ich falsch mache, oder wie ich das besser machen kann?
    Danke.
    Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

  2. #2
    Registrierter Benutzer
    Registriert seit
    27.07.2000
    Beiträge
    123
    na ja, vielleicht postest du mal das codefragment wo du das ganze umsetzt ....

    gruesse ...

  3. #3
    Registrierter Benutzer
    Registriert seit
    25.10.2005
    Ort
    Hamminkeln
    Beiträge
    302
    hi pucki,

    anbei den Konstruktor, den ich zum Standard-Konstruktor hinzugefügt habe.
    public Base( String Wert )
    {
    //
    // Erforderlich für Windows Form-Designerunterstützung
    //
    InitializeComponent();

    //
    // TODO: Konstruktorcode hinter dem InitializeComponent-Aufruf hinzufügen
    //
    übergabe = Wert;
    }
    Die Variable (übergabe) habe ich global als String erzeugt.
    Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

  4. #4
    Registrierter Benutzer
    Registriert seit
    17.04.2002
    Beiträge
    185
    Hallo,
    du weißt aber schon, dass die Komandozeilenparamenter an Main() übergeben werden...
    Der Entscheidende Code muß also so aussehen:
    Code:
    class Hello
    {
        static void Main(string[] args) {
            System.Console.WriteLine("Hello " + args[0]);
        }
    }

    For a world where freedom and knowledge survives the compiler! (https://www.fsfe.org)

    If art interprets our dreams, the computer executes them in the guise of programs!

  5. #5
    Registrierter Benutzer
    Registriert seit
    25.10.2005
    Ort
    Hamminkeln
    Beiträge
    302
    @BeS,
    vielen Dank, werde dieses sofort ausprobieren!
    Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

  6. #6
    Registrierter Benutzer
    Registriert seit
    25.10.2005
    Ort
    Hamminkeln
    Beiträge
    302
    hallo nochmal,

    die parameterübergabe funzt in dem fall aber nur in einer konsolenanwendung,
    ich möchte aber, wie unten beschrieben, eine windowsanwendung erstellen.
    Also bin ich noch keinen schritt weiter. Auch wäre prima, wenn mir jemand schreibt, wie ich meine anwednung mit parameter im debugermodus starten kann.
    Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

  7. #7
    Registrierter Benutzer
    Registriert seit
    17.04.2002
    Beiträge
    185
    Hallo,
    ich habe keine Ahnung von window.forms. Aber die Parameterübergabe sollte nichts damit zu tun haben was du in deinem Programm später alles machst, als z.B. ob du eine GUI zeichnest oder nicht.

    Mit Gtk# könnte das Beispiel so aussehen:
    Code:
    class HelloGUI {
        static void Main (string[] args) {
            new HelloGUI(((args.Length > 0) ? args[0] : "fremder"));
        }
    
        public HelloGUI(string name) {
            Gtk.Application.Init();
            Gtk.Window win = new Gtk.Window("HelloGUI");
            Gtk.Label label = new Gtk.Label("Hallo " + name);
            win.Add(label);
            win.ShowAll();
            Gtk.Application.Run();
        }
    }
    mit windows.forms sollte es vom Prinzip ähnlich gehen.

    PS: Es wäre nicht schlecht, wenn du auch lauffähigen code posten könntest. Damit kann man leicher nachvollziehen was du vielleicht falsch machst.
    Geändert von BeS (28-11-2005 um 15:15 Uhr)

    For a world where freedom and knowledge survives the compiler! (https://www.fsfe.org)

    If art interprets our dreams, the computer executes them in the guise of programs!

  8. #8
    Registrierter Benutzer
    Registriert seit
    25.10.2005
    Ort
    Hamminkeln
    Beiträge
    302
    Aha, ich vermute ich weis wo ich den Fehler gemacht habe, dein Script lässt mich dieses jedenfalls vermuten. Wenn ich schaffe, probiere ich es gleich aus, wenn nicht, schreibe ich dir morgen früh ob ich weiter gekommen bin. Auf jeden Fall vielen Dank!
    Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

  9. #9
    Registrierter Benutzer
    Registriert seit
    25.10.2005
    Ort
    Hamminkeln
    Beiträge
    302

    Ich habe dein Script von der Struktur her übernommen, es funzt!!!
    Danke!
    Vereinfacht die Dinge, und ihr erleichtert euch das Leben. (Henry David Thoreau)

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •