2014-09-05 11 views
5

Używam biblioteki testStack/White do automatyzacji aplikacji. Teraz działa poprawnie, ale zgłasza wyjątek, jeśli aplikacja jest już uruchomiona. Czy istnieje sposób na sprawdzenie, np. Czy aplikacja jest już uruchomiona, nie wywołuj jej. to znaczy, możemy pominąć ten wiersz kodu:W jaki sposób biały działa na już uruchomionej aplikacji?

Application application = Application.Launch(@"someapplication.exe"); 

Nie mogłem znaleźć żadnej dobrej dokumentacji White. Każda pomoc zostanie doceniona.

Odpowiedz

9

można zrobić:

Application application; 
Process[] processes = Process.GetProcessesByName(@"someapplication"); 
if (processes.Length == 0) 
    application = Application.Launch(@"someapplication"); 
else 
    application = Application.Attach(@"someapplication"); 

szczęśliwy kodowania

+0

Musiał usunąć część '.exe'. –

+0

To jest dokładny kod/logika, którego szukałem. Dzięki! – Chris

+0

usunął. Exe – Alas

2

Albo łatwiej

Application application = Application.AttachOrLaunch(@"someapplication.exe"); 
1

piggy z powrotem na poprzednią odpowiedź, aby znaleźć nazwę aplikacji, którą chcesz ...

1) Otwórz menedżera zadań, 2) znajdź proces, który chcesz t do użycia z białym 3) kliknij prawym przyciskiem myszy proces, który chcesz i wybierz właściwości 4) Nazwa do użycia znajduje się w polu tekstowym. Zwykle nie ma .exe.

Powiązane problemy