Autor Beitrag
daniel62
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Mo 28.04.08 12:13 
Hallo

wir programmieren seit einem Halben jahr in der Schule in C#
und wollen nun die erste WInForms Application erstellen.

Ich benutze VisualStudio 2008
ich möchte wissen, wie ich mit einem Button in C-Sharp
eine externe exe-Datei ausführen kann.


Hab schon überall gesucht, aber nichts gefunden.


Vielen Dank
Daniel


Moderiert von user profile iconChristian S.: Topic aus WinForms / WPF / Silverlight verschoben am Mo 28.04.2008 um 12:14
Moderiert von user profile iconChristian S.: Ein paar Leerzeilen entfernt
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mo 28.04.08 12:15 
Hallo und :welcome:!

Du kannst eine andere exe-Datei mittels Process.Start("foo.exe"); starten, die Process-Klasse liegt dabei im Namespace System.Diagnostics.

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
daniel62 Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Mo 28.04.08 12:24 
user profile iconChristian S. hat folgendes geschrieben:
Hallo und :welcome:!

Process.Start("foo.exe");

Grüße
Christian


Kann ich denn dort auch einen Pfad wie z.B. Process.Start("C:\data\test.exe") angeben,
wenn ja, wie mache ich es wenn meine WinFormApplikation fertig ist, und mit den Programmen die
ich ausführen will auf CD gebrannt ist.

Z.B. ich habe eine Benutzeroberfläche die ich von CD starte und auf der cd befinden sich irgendwelche tools
als exe-Datei
Wie sieht der Code wegen dem Pfad der CD aus?


Vielen Dank


Gruß


Daniel
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Mo 28.04.08 12:35 
Hallo Daniel,

allgemeine Empfehlung: Wenn Dir Klassen und Eigenschaften, Methoden, Ereignisse genannt werden, dann kannst Du immer in der SDK-Doku nachlesen: Dort erhältst Du viele Erläuterungen und Beispiele.

Konkret: Process.Start() startet eine Anwendung im Windows-System; auch Parameter können übergeben werden. Windows muss also in der Lage sein, die Exe zu finden. Dazu dienen verschiedene Standardpfade; aber eine CD dürfte dort nicht vorkommen. Also musst Du zunächst das CD-Laufwerk wissen und außerdem die Pfadstruktur der CD.

Wenn Du die CD selbst brennst, kannst Du sie natürlich festlegen und gleich in das Programm aufnehmen. Eher zu empfehlen ist aber, dass eine eigene Informationsdatei auf der CD angelegt wird und diese Datei eingelesen wird.

Nachtrag: bakachans Vorschlag im nächsten Beitrag ist eine sinnvolle Ergänzung zu meinen o.g. Vorschlägen.

Alternativ kannst Du mit einem OpenFileDialog die zu startende Datei auswählen lassen und dann übergeben.

Dass eine Button-Aktion durch eine Button_Click-Methode aufgerufen wird, ist doch klar, oder? Sonst schlage ich vor, einen Button zur Dateiauswahl (nämlich zum Öffnen des Dialogs), eine TextBox oder ein Label zur Anzeige der ausgewählten Datei und einen Button zum Ausführen des Programms zu verwenden.

Gruß Jürgen


Zuletzt bearbeitet von JüTho am Mo 28.04.08 13:46, insgesamt 1-mal bearbeitet
bakachan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 503
Erhaltene Danke: 34

W7 (x64) Ultimate
C# / VB.NET (VS2010 Ultimate)
BeitragVerfasst: Mo 28.04.08 13:18 
Wenn du weisst wo sich die exe-Dateien befinden(also relativ zu deinem Programm) kannst du mittels Application.StartupPath (im System.Windows.Forms namespace) den Pfad abrufen aus dem deine Anwendung gestartet wurde und den erhaltenen string entsprechend bearbeiten oder den Laufwerkspfad auslesen.
daniel62 Threadstarter
Hält's aus hier
Beiträge: 3



BeitragVerfasst: Mo 28.04.08 14:11 
Vielen Dank!!

Das hat funktioniert mit der CD




Gruß



Daniel