2009-12-23 12 views
20

nasıl işlem verilmiş .. C# süreç adını veya pencere başlık vererek pencere yürütebilirim Sen Process sınıfını kullanabilirsiniz çalışan zatenPencere tanıtıcısını, çalışan işlem adını vererek nasıl edinebilirim?

+2

bu çocuk pencereleri almak için bakınız: http://stackoverflow.com/questions/79111/net-c-getting-child-windows-when-you-only-have-a-process-handle-or -pid/79205 # 79205 –

+0

Bir işlemin yalnızca bir penceresi olduğunu varsayalım. Geçerli bir varsayım değil. –

cevap

35

içindedir.

Process[] processes = Process.GetProcessesByName("someName"); 

foreach (Process p in processes) 
{ 
    IntPtr windowHandle = p.MainWindowHandle; 

    // do something with windowHandle 
} 
+1

+1. İyi cevap. Bu, gerekli olan ana pencere tanıtıcısıysa çalışır. – David

+8

Ana pencere gizlenmişse MainWindowHandle 0 döndürdüğünü unutmayın ... –

+0

Java'da bunu yapmanın bir yolu var mı? –

İlgili konular