public static bool EnumProc(IntPtr hWnd, ref SearchData searchData) { var sbClassName = new StringBuilder(1024); GetClassName(hWnd, sbClassName, sbClassName.Capacity); if (searchData.ClassName == null || Regex.IsMatch(sbClassName.ToString(), searchData.ClassName)) { var sbWindowText = new StringBuilder(1024); GetWindowText(hWnd, sbWindowText, sbWindowText.Capacity); if (searchData.Title == null || Regex.IsMatch(sbWindowText.ToString(), searchData.Title)) { searchData.Result.Add(hWnd); } } return true; }
public static bool EnumProc(IntPtr hWnd, ref SearchData searchData) { var sbClassName = new StringBuilder(1024); GetClassName(hWnd, sbClassName, sbClassName.Capacity); if (searchData.ClassName == null || Regex.IsMatch(sbClassName.ToString(), searchData.ClassName)) { var sbWindowText = new StringBuilder(1024); GetWindowText(hWnd, sbWindowText, sbWindowText.Capacity); if (searchData.Title == null || Regex.IsMatch(sbWindowText.ToString(), searchData.Title)) { searchData.Result.Add(hWnd); } } return(true); }
public static IntPtr findPointer(String strClassName, String strTitle, IntPtr Parent) { var searchData = new SearchData { ClassName = strClassName, Title = strTitle }; EnumChildWindows(Parent, EnumProc, ref searchData); if (searchData.Result.Count > 0) { return(searchData.Result[0]); } else { return(IntPtr.Zero); } }
public static IntPtr findPointer(String strClassName, String strTitle, IntPtr Parent) { var searchData = new SearchData { ClassName = strClassName, Title = strTitle }; EnumChildWindows(Parent, EnumProc, ref searchData); if (searchData.Result.Count > 0) { return searchData.Result[0]; } else { return IntPtr.Zero; } }
public static extern bool EnumThreadWindows(int dwThreadId, EnumWindowsProc lpEnumFunc, ref SearchData data);
static extern bool EnumChildWindows(IntPtr hwndParent, EnumWindowsProc lpEnumFunc, ref SearchData data);
private static extern bool EnumWindows(EnumWindowsProc lpEnumFunc, ref SearchData data);