Defining a UI thread in another process

Is it possible in C # to determine which thread in another application that was opened by my process is the UI thread?

+4
source share
1 answer

@HansPassant already answered on the MSDN forum :

using System.Diagnostics; ... public static ProcessThread GetUIThread(Process proc) { if (proc.MainWindowHandle == null) return null; int id = GetWindowThreadProcessId(proc.MainWindowHandle, IntPtr.Zero); foreach (ProcessThread pt in proc.Threads) if (pt.Id == id) return pt; return null; } [System.Runtime.InteropServices.DllImport("user32.dll")] private static extern int GetWindowThreadProcessId(IntPtr hWnd, IntPtr procid); 
+8
source

All Articles