private void GetButtonHandel(string title, string buttonTitle) { int loopNnb = 0; IntPtr mainHandle = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle; IntPtr controlBarHandle = IntPtr.Zero; IntPtr buttonHandle = IntPtr.Zero; try { //while (controlBarHandle == null || controlBarHandle == IntPtr.Zero) //{ // controlBarHandle = MethodForWin32.FindWindowEx(mainHandle, controlBarHandle, null, title); // loopNnb++; // if (loopNnb == 50) // break; //} int j = MethodForWin32.EnumChildWindows( mainHandle, (h, l) => { IntPtr f1 = MethodForWin32.FindWindowEx(h, IntPtr.Zero, null, title); if (f1 == IntPtr.Zero) { return(true); } else { controlBarHandle = f1; return(false); } }, 0); handle = MethodForWin32.FindWindowEx(controlBarHandle, IntPtr.Zero, null, buttonTitle); //if (controlBarHandle != null && controlBarHandle != IntPtr.Zero) //{ // int i = MethodForWin32.EnumChildWindows( // controlBarHandle, // (h, l) => // { // IntPtr lpString = Marshal.AllocHGlobal(200); // IntPtr f1 = MethodForWin32.GetWindowText(h, lpString,200); // if (f1 == IntPtr.Zero) // return true; // else // { // handle = f1; // return false; // } // }, // 0); //} } catch (Exception ex) { throw ex; } }
public void ButtonNClick() { if (handle != IntPtr.Zero && handle != null) { MethodForWin32.SendMessage(handle, 0xF5, (IntPtr)1, IntPtr.Zero); //MethodForWin32.SendMessage(handle, 0x201, (IntPtr)1, IntPtr.Zero); //MethodForWin32.SendMessage(handle, 0x202, (IntPtr)1, IntPtr.Zero); handle = IntPtr.Zero; } }