Guest User

Untitled

a guest
Jun 19th, 2018
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. [DllImport("user32.dll", SetLastError = true)]
  2. static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
  3.  
  4. IntPtr hWnd = (IntPtr)FindWindow(windowName, null);
  5.  
  6. [DllImport("user32.dll")]
  7. [return: MarshalAs(UnmanagedType.Bool)]
  8. static extern bool EnumChildWindows(IntPtr hwndParent, EnumWindowsProc lpEnumFunc, IntPtr lParam);
  9.  
  10. private List<IntPtr> GetChildWindows(IntPtr parent)
  11. {
  12. List<IntPtr> result = new List<IntPtr>();
  13. GCHandle listHandle = GCHandle.Alloc(result);
  14. try
  15. {
  16. EnumWindowProc childProc = new EnumWindowProc(EnumWindow);
  17. EnumChildWindows(parent, childProc, GCHandle.ToIntPtr(listHandle));
  18. }
  19. finally
  20. {
  21. if (listHandle.IsAllocated)
  22. listHandle.Free();
  23. }
  24. return result;
  25. }
Add Comment
Please, Sign In to add comment