Entwickler-Ecke
Basistechnologien - Programmliste ausführen - Wo ist der Fehler?
Goordon - Mi 28.01.09 23:44
Titel: Programmliste ausführen - Wo ist der Fehler?
Guten Abend
Ich habe ein problem mit folgender Methode:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| void ReadAndRun() { FileInfo file = new FileInfo("run.ini"); StreamReader stRead = file.OpenText(); while (!stRead.EndOfStream) { listBox1.Items.Add(stRead.ReadLine()); } for (int i = 0; i < listBox1.Items.Count; i++) { System.Diagnostics.Process.Start(listBox1.Items[i]); } } |
Folgendes problem ergibt sich: ( Ich möchte eine Liste von Programmen aus der "run.ini" ausführen )
Fehler 1 Die beste Übereinstimmung für die überladene System.Diagnostics.Process.Start(System.Diagnostics.ProcessStartInfo)-Methode hat einige ungültige Argumente.
Fehler 2 1-Argument: kann nicht von "object" in "System.Diagnostics.ProcessStartInfo" konvertiert werden.
Hat jemand eine idee?
Moderiert von
Christian S.: Topic aus WinForms verschoben am Mi 28.01.2009 um 22:47
Christian S. - Mi 28.01.09 23:48
Die Items einer ListBox sind vom Typ Object, es gibt aber keine Process.Start-Methode, welche einen solchen Parameter nimmt.
danielf - Do 29.01.09 10:45
Hallo,
was Christian meinst ist, dass du nicht listBox1.Items[i] der Start-Methode übergeben kannst, sondern einen String. In deinem Fall wäre das dann listBox1.Items[i].Text.
C#
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| List<Process> processList = new List<Process>();
foreach (ListViewItem lvi in this.listCommands.Items) { Process p = new Process(); p.StartInfo.UseShellExecute = false; p.StartInfo.FileName = lvi.Text;
try { p.Start(); processList.Add(p); } catch (Exception exception) { MessageBox.Show(exception.Message); } } |
Moderiert von
Kha: Code- durch C#-Tags ersetzt
Kha - Do 29.01.09 13:29
danielf hat folgendes geschrieben : |
| was Christian meinst ist, dass du nicht listBox1.Items[i] der Start-Methode übergeben kannst, sondern einen String. In deinem Fall wäre das dann listBox1.Items[i].Text. |
System.Object besitzt keine Text-Property; dein Beispiel benutzt eine ListView. Benötigt wird also ein Cast von Object auf String.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!