Entwickler-Ecke

WinForms - WinForm über Konsole mit Parameterübergabe starten


Delete - Mo 13.10.08 14:02
Titel: WinForm über Konsole mit Parameterübergabe starten
Hi,

weiss einer ob ich eine bestehende WinForm Anwendung über die Konsole mit verschiednen Parametern starten kann die dann an das Programm übergeben werden?

Hab ne Anwendung geschrieben die ich jetzt umbauen soll und von der Konsole starten lassen soll, kann mir da einer Tipps geben?

Greetz


JüTho - Mo 13.10.08 14:13

Hallo,

es kommt mir zwar vor wie "durch die Brust ins Auge geschossen", aber Process.Start() müsste auch dies ermöglichen.

Jürgen


jaenicke - Mo 13.10.08 14:22

An der Stelle, an der nach der Erstellung einer neuen Anwendung steht

C#-Quelltext
1:
static void Main()                    
kannst du das auch ersetzen durch

C#-Quelltext
1:
static void Main(string[] args)                    
und schon hast du das Array mit den an der Kommandozeile übergebenen Parametern.


Delete - Mo 13.10.08 15:34

@jaenicke:
Genau das hab ich gesucht, super danke....


@JüTho

ich weiss das es ein bisschen umständlich ist aber das Problem war das ich das Programm aufgrund einer Anforderung geschrieben habe und das mit der Konsole kam jetzt erst dazu ;-) Normal wenn man was programmieren muss


Kha - Mo 13.10.08 16:11

user profile iconhauke1981 hat folgendes geschrieben Zum zitierten Posting springen:
ich weiss das es ein bisschen umständlich ist aber das Problem war das ich das Programm aufgrund einer Anforderung geschrieben habe und das mit der Konsole kam jetzt erst dazu ;-)
Dann binde das Winforms- in das Konsolenprojekt ein und du kannst deine Form direkt von dort öffnen ;) . Bzw. lässt sich der Projekttyp in den Projekteigenschaften auch noch nachträglich ändern.


Delete - Di 14.10.08 08:22

@Kha:

Wie kann ich das dann machen?

So wie ich das verstanden habe, soll es dann auch eine Ausgabe auf der Konsole geben. Das würde ja bedeuten, dass ich das komplette programm umschreiben darf. Muss mal nochmal nachfragen.


jaenicke - Di 14.10.08 09:30

Dann hast du die Daten und die Verarbeitung nicht von der Oberfläche getrennt. Solche Fehler rächen sich in so einem Fall.


Delete - Di 14.10.08 11:01

Eigentlich hab ich das schon zumindest bin ich davon ausgegangen.

Bis auf ein paar kleine Dinge die ich aber schnell abändern kann hab ich die Oberfläche getrennt von der Datenstruktur entworfen.


jaenicke - Di 14.10.08 13:49

Dann sollte es ja je nach Komplexität der Oberfläche einigermaßen schnell gehen. Ich habe auch ein Projekt, bei dem beide Oberflächen möglich sind. Mit 2 Codezeilen lassen sich dort die Oberflächen gegeneinander austauschen, da die Schnittstellen gleich sind.

Heißt: Ich muss nur eine andere Klasse für das Benutzerinterface angeben, aber ansonsten bleibt alles gleich.