c# - Watin & IE9 - Cant click ok buttons -


i'm using watin navigate through large number of different websites, , i'm using great solution here automatically click ok on javascript , ie boxes popup.

the problem is, solution works great ie6-ie8, no longer works ie9.

does have suggestions on how ie9 auto click/close prompts?

(i'm using latest watin release, , code below)

public class {  public something() { ie browser = new ie("about:blank"); addhandlers(browser); .. stuff browser  }    //just click ok         private void addhandlers(browser browser)         {                     browser.adddialoghandler(new watin.core.dialoghandlers.alertandconfirmdialoghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.alertdialoghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.certificatewarninghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.closeiedialoghandler(false));                 browser.adddialoghandler(new watin.core.dialoghandlers.confirmdialoghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.dialoghandlerhelper());                 browser.adddialoghandler(new watin.core.dialoghandlers.filedownloadhandler("me.htm"));                 browser.adddialoghandler(new watin.core.dialoghandlers.fileuploaddialoghandler("me.htm"));                              browser.adddialoghandler(new watin.core.dialoghandlers.printdialoghandler(watin.core.dialoghandlers.printdialoghandler.buttonsenum.cancel));                 browser.adddialoghandler(new watin.core.dialoghandlers.promptdialoghandler(false));                 browser.adddialoghandler(new watin.core.dialoghandlers.refreshwarningdialoghandler(false));                 browser.adddialoghandler(new watin.core.dialoghandlers.returndialoghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.securityalertdialoghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.simplejavadialoghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.securityalertdialoghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.alertdialoghandler());                 browser.adddialoghandler(new watin.core.dialoghandlers.simplejavadialoghandler());                 browser.adddialoghandler(new okdialoghandler());             }  }       public class okdialoghandler : watin.core.dialoghandlers.basedialoghandler     {         public override bool handledialog(window window)         {             var button = getokbutton(window);             button.click();                return false;         }          public override bool canhandledialog(window window)         {             return getokbutton(window) != null;         }          private winbutton getokbutton(window window)         {             var windowbutton = new windowsenumerator().getchildwindows(window.hwnd, w => w.classname == "button" && new winbutton(w.hwnd).title == "ok").firstordefault();             if (windowbutton == null)                 return null;             else                 return new winbutton(windowbutton.hwnd);         }     } 

watin 2.1 has been released addresses number of ie9 issues. can download http://watin.org/ or update using nuget:

pm> update-package watin


Comments

Popular posts from this blog

php - What is the difference between $_SERVER['PATH_INFO'] and $_SERVER['ORIG_PATH_INFO']? -

fortran - Function return type mismatch -

queue - mq_receive: message too long -