private CustomIe(IEBrowser browser) : base(browser) { var internetExplorer = (InternetExplorer)browser.WebBrowser; internetExplorer.BeforeNavigate2 += BeforeNavigate2; internetExplorer.NavigateError += NavigateError; }
private void DisposeAndCloseIE(bool closeIE) { if (isDisposed) return; Logger.LogDebug(Resources.IE_Dispose); if (closeIE && IsInternetExplorerStillAvailable()) { // Close all open HTMLDialogs HtmlDialogs.CloseAll(); } base.Dispose(true); if (closeIE && IsInternetExplorerStillAvailable()) { // Ask IE to close _ieBrowser.Quit(); } _ieBrowser = null; if (closeIE) { // Wait for IE to close to prevent RPC errors when creating // a new WatiN.Core.IE instance. Thread.Sleep(1000); } isDisposed = true; }
private void CreateNewIEAndGoToUri(Uri uri, IDialogHandler logonDialogHandler, bool createInNewProcess) { CheckThreadApartmentStateIsSTA(); UtilityClass.MoveMousePoinerToTopLeft(Settings.AutoMoveMousePointerToTopLeft); if (createInNewProcess) { Logger.LogAction("Creating IE instance in a new process"); _ieBrowser = CreateIEPartiallyInitializedInNewProcess(); } else { Logger.LogAction("Creating IE instance"); _ieBrowser = CreateIEBrowser(new InternetExplorerClass()); } StartDialogWatcher(); if (logonDialogHandler != null) { // remove other logon dialog handlers since only one handler // can effectively handle the logon dialog. DialogWatcher.RemoveAll(new LogonDialogHandler("a", "b")); // Add the (new) logonHandler DialogWatcher.Add(logonDialogHandler); } FinishInitialization(uri); // WaitForComplete(); }
protected internal IE(object iwebBrowser2, bool finishInitialization) { CheckThreadApartmentStateIsSTA(); var internetExplorer = iwebBrowser2 as IWebBrowser2; if (internetExplorer == null) { throw new ArgumentException("iwebBrowser2 needs to implement shdocvw.IWebBrowser2"); } _ieBrowser = CreateIEBrowser(internetExplorer); StartDialogWatcher(); if (finishInitialization) FinishInitialization(null); }
/// <summary> /// (Re)Use existing <see cref="IEBrowser"/> object. /// </summary> /// <param name="ieBrowser">An object implementing <see cref="IEBrowser"/>.</param> public IE(IEBrowser ieBrowser) { _ieBrowser = ieBrowser; }
protected virtual IE CreateBrowserInstance(IEBrowser browser) { return(new IE(browser.WebBrowser, false)); }
protected override IE CreateBrowserInstance(IEBrowser browser) { return new MyIE(browser); }
public virtual IE CreateBrowserInstance(IEBrowser browser) { return new IE(browser.WebBrowser, false); }
public IEWaitForComplete(IEBrowser ieBrowser, int waitForCompleteTimeout) : base(waitForCompleteTimeout) { this.ieBrowser = ieBrowser; }
public IEWaitForComplete(IEBrowser ieBrowser) : this(ieBrowser, Settings.WaitForCompleteTimeOut) { }
public IEWaitForCompleteWithDialogs(IEBrowser ieBrowser, int waitForCompleteTimeOut, Func<bool> hasDialog) : base(ieBrowser, waitForCompleteTimeOut) { this.ieBrowser = ieBrowser; this.hasDialog = hasDialog; }
public MyIE(IEBrowser browser) : base(browser) { }
protected override IE CreateBrowserInstance(IEBrowser browser) { return new CustomIe(browser); }
public IEWithDialogWaiter(IEBrowser browser) : base(browser) { }