2010-06-23 11 views
9

Obwohl der Thementitel die meisten Fragen erklärt, möchte ich das Szenario skizzieren, damit Sie verstehen, in welchem ​​Kontext diese Frage gestellt wird.Verwenden Sie GetProcessesByName die beste Möglichkeit, um zu überprüfen, ob ein Prozess ausgeführt wird?

Ich habe eine Anwendung, die wie eine Outlook-Kontaktliste ist. Es erhält alle Kontakte aus Outlook und das Ergebnis ist, dass sie in einer Datenrasteransicht angezeigt werden. Anstatt Outlook jetzt jedes Mal zu starten und zu starten, wenn die Anwendung geöffnet und heruntergefahren wird, möchte ich, dass es nicht geöffnet wird, wenn es bereits geöffnet ist und geöffnet bleibt, wenn meine Anwendung heruntergefahren wird und der Benutzer Outlook bereits ausgeführt hat. Hier ist meine Nutzung:

Process[] pName = Process.GetProcessesByName("OUTLOOK"); 
if (pName.Length == 0) 
{ 
    MessageBox.Show("Outlook is not running."); // Open Outlook anew. 
} 
else 
{ 
    MessageBox.Show("Outlook is running."); // Do not re-open Outlook. 
} 

Ist dies der beste und sicherste Weg, es zu tun? Vielen Dank im Voraus.

Antwort

5

Ja. Ich kann mir keinen besseren Weg vorstellen.

Verwandte Themen