tutorials.de Buch-Aktion 05/2012
Like Tree2Danke
  • 1 Beitrag von Muepe32
  • 1 Beitrag von Muepe32
ERLEDIGT
NEIN
ANTWORTEN
9
ZUGRIFFE
1116
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    elbdom elbdom ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Beiträge
    52
    Hallo Tutorials User,

    Ich versuche alle Prozesse die Lokal laufen in einer Listbox auf zu Listen mit hilfe der Process Klasse leider wird nur Process <Array> aufgelistet und das nur einmal.

    Jemand ne idee wie das funktioniert mit der klasse?

    gruß
     

  2. #2
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    354
    Hallo elbdom,

    Du musst einfach über die Elemente iterieren und jedes einzeln hinzufügen oder als Array via AddRange.
    Code cpp:
    1
    2
    3
    4
    5
    
    cli::array<Process^>^ localProcs = Process::GetProcesses();
    listBox1->Items->AddRange(localProcs);
    // oder:
    for each (Process^ p in localProcs)
       listBox1->Items->Add(p);

    Gruss
    Muepe
    elbdom bedankt sich. 
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

  3. #3
    elbdom elbdom ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Beiträge
    52
    ok jetzt sind mehrere sachen aufgelistet aber alle ohne beschriftung
     

  4. #4
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    354
    Ein bisschen mehr an Fehlerbeschreibung wäre schön. Ausserdem ist es von Vorteil, wenn du dir kurz die Netiquette ansiehst. Gross- und Kleinschreibung sind hier Pflicht.
     
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

  5. #5
    elbdom elbdom ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Beiträge
    52
    Ok Also das Genaue Problem ist das in der ListBox1 Elemente enthalten sind die ich anklicken kann die aber keine Beschriftung haben sonder einfach nur ausgewählt werden können somit fehlt da noch der Name des Prozesses.

    Edit: Habe mal ein Bild angehängt damit man sieht was ich genau meine.
    Angehängte Grafiken Angehängte Grafiken  
    Geändert von elbdom (19.05.11 um 17:46 Uhr)
     

  6. #6
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    354
    Achso, alles klar, wie sieht denn jetzt dein momentaner Code aus?
     
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

  7. #7
    elbdom elbdom ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Beiträge
    52
    Zitat Zitat von Muepe32 Beitrag anzeigen
    Achso, alles klar, wie sieht denn jetzt dein momentaner Code aus?
    Ich mach es ganz simpel mit:
    listBox1->Items->AddRange(process1->GetProcesses());
     

  8. #8
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    354
    Dann musst du über alle Prozesse iterieren und den String, der angezeigt werden soll jeweils selber erstellen (bsp. proc->ProcessName oder proc->ToString()), ich dachte AddRange ruft für alle Elemente ToString auf, ist aber offensichtlich nicht so.
     
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

  9. #9
    elbdom elbdom ist offline Mitglied Silber
    Registriert seit
    Jun 2007
    Beiträge
    52
    Zitat Zitat von Muepe32 Beitrag anzeigen
    Dann musst du über alle Prozesse iterieren und den String, der angezeigt werden soll jeweils selber erstellen (bsp. proc->ProcessName oder proc->ToString()), ich dachte AddRange ruft für alle Elemente ToString auf, ist aber offensichtlich nicht so.
    Ich habe es jetzt so gelöst:
    for(int i=0;i<99999;i++)
    {
    try
    {
    listBox1->Items->Add(process1->GetProcessById(i)->ProcessName->ToString());
    }
    catch(ArgumentException^)
    {
    //
    }
    }
    Es ist zwar nicht die schönste Methode aber wenigstens etwas.
    Nun ist mein problem aber das ich von den eingetragenen Elementen keine Methoden oder Eigenschaften aufrufen kann um mit ihn weiter zu Arbeiten.
     

  10. #10
    Avatar von Muepe32
    Muepe32 Muepe32 ist offline Mitglied Brokat
    Registriert seit
    Mar 2011
    Beiträge
    354
    Hallo elbdom,

    Warum so kompliziert?
    Code cpp:
    1
    2
    3
    4
    
    for each(Process^ p in Process::GetProcesses())
    {
       listBox1->Items->Add(p->ProcessName);
    }

    Damit du weiterarbeiten kannst machst du dir am einfachsten eine eigene Klasse deren ToString du so überlädst, dass dabei der gewünschte Text rauskommt. Darin speicherst du dann aber auch noch die dazugehörige Process-Instanz und fügst dann die Instanzen deiner neuen Klasse in der Listbox hinzu. Dann hast du später die Process-Instanz noch zur Verfügung.

    Gruss
    Muepe
    elbdom bedankt sich. 
    Viele Tutorials und Artikel zur Programmierung unter Windows mit C++ und C#. Tägliche Updates und Antworten auf eure Fragen:
    Win32Easy - Blog
    Es würde mich freuen, wenn ihr einen Kommentar postet!

Ähnliche Themen

  1. Prozesse überwachen
    Von Freaky_09 im Forum .NET Application und Service Design
    Antworten: 7
    Letzter Beitrag: 02.12.09, 12:17
  2. Laufende Prozesse OK ?
    Von angelikamorgan im Forum Linux & Unix
    Antworten: 4
    Letzter Beitrag: 17.08.09, 21:33
  3. Zu viele Prozesse
    Von Zwackmix im Forum Microsoft Windows
    Antworten: 4
    Letzter Beitrag: 02.11.06, 11:13
  4. Prozesse verstecken
    Von Neptoos im Forum Microsoft Windows
    Antworten: 9
    Letzter Beitrag: 27.10.04, 11:50
  5. Prozesse in ListBox!
    Von napstermania im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 28.07.04, 19:09