public void HidWebBrowserRun() { webBrowser.DocumentCompleted += webBrowser_DocumentCompleted; try { search = true; Share.SuppressWininetBehavior(); webBrowser.Navigate("http://om.tencent.com/attendances/check_out/"); wb = webBrowser.ActiveXInstance as SHDocVw.WebBrowser; wb.NavigateComplete2 += new DWebBrowserEvents2_NavigateComplete2EventHandler(wb_NavigateComplete2); //waitwebCompleted(); //SHDocVw.WebBrowser wb = this.webBrowser1.ActiveXInstance as SHDocVw.WebBrowser; //wb.NavigateComplete2 += new SHDocVw.DWebBrowserEvents2_NavigateComplete2EventHandler(wb_NavigateComplete2); } catch (Exception exception) { MessageBox.Show(exception.Message); } }
public void WeiboCheckIn(OAuth oauth, string type) { WeiboOauth = oauth; Type = type; UserName = CryptHelper.DecryptString(Share.wFiles.ReadString("WCO", "UserName", "")); PassWord = CryptHelper.DecryptString(Share.wFiles.ReadString("WCO", "PassWord", "")); webBrowserWb.ScriptErrorsSuppressed = true; webBrowserWb.DocumentCompleted += webBrowserAg_DocumentCompleted; try { Share.SuppressWininetBehavior(); webBrowserWb.Navigate("https://rd.tencent.com/outsourcing/attendances/add"); wb = webBrowserWb.ActiveXInstance as SHDocVw.WebBrowser; wb.NavigateComplete2 += new DWebBrowserEvents2_NavigateComplete2EventHandler(wb_NavigateComplete2); } catch (Exception) { } }
public void GetoAuthA(string url) { webBrowser.DocumentCompleted += webBrowser_DocumentCompleted; passport = FrmSet.WeiboUserName; password = FrmSet.WeiboPassword; try { //Share.SuppressWininetBehavior(); webBrowser.Navigate(url); wb = webBrowser.ActiveXInstance as SHDocVw.WebBrowser; wb.NavigateComplete2 += new DWebBrowserEvents2_NavigateComplete2EventHandler(wb_NavigateComplete2); //waitwebCompleted(); //SHDocVw.WebBrowser wb = this.webBrowser1.ActiveXInstance as SHDocVw.WebBrowser; //wb.NavigateComplete2 += new SHDocVw.DWebBrowserEvents2_NavigateComplete2EventHandler(wb_NavigateComplete2); } catch (Exception ex) { LogUtil.WriteError(ex); } }
/// <summary> /// 非密封类修饰用protected virtual /// 密封类修饰用private /// </summary> /// <param name="disposing"></param> protected virtual void Dispose(bool disposing) { if (disposed) { return; } if (disposing) { // 清理托管资源 if (webBrowserWb != null) { webBrowserWb = null; } } // 清理非托管资源 if (wb != null) { wb = null; } //让类型知道自己已经被释放 disposed = true; }
void LoadUrlsToComboBox() { // Load from urls.user.txt or urls.txt . string inipath_url1 = Path.Combine(s_exedir, fname_urls_user_txt); string inipath_url2 = Path.Combine(s_exedir, fname_urls_txt); string[] urls = null; foreach (string inipath in new string[] { inipath_url1, inipath_url2 }) { try { log($"Loading URLs from: {inipath}"); urls = File.ReadAllLines(inipath); if (urls.Length == 0) { throw new FileNotFoundException("Empty file."); } log("The ini file is loaded."); break; } catch (FileNotFoundException) { log($"The ini file cannot be opened or is empty. Skip it."); continue; } } if (urls == null || urls.Length == 0) { urls = new string[] { "http://*****:*****@"\\csWebBrowser\\.+$", @"\csWebBrowser\htmls\wbstart.html"); cbxURL.Items.Add(fp_wbstart_html); } void Detect_IESoftwareVersion_hardcore() { lblIESoftVer.Text = "IE software: " + wb1.Version.ToString(); log($"IE software version: {wb1.Version.Major} ({wb1.Version.ToString()})"); string fp_xua_edge_html = Path.Combine(s_exedir, html_xua_edge_file); log("Detecting real IE software version via " + html_xua_edge_file); wb_Navigate(fp_xua_edge_html); cbxURL.Text = fp_xua_edge_html; // PENDING... Async wait Navigating result } void wb_PrepareCallbacks() { wb1.Navigating -= wbevt_Navigating; if (ckbEvtNavigating.Checked) { wb1.Navigating += wbevt_Navigating; } wb1.Navigated -= wbevt_Navigated; if (ckbEvtNavigated.Checked) { wb1.Navigated += wbevt_Navigated; } wb1.DocumentCompleted -= wbevt_DocumentCompleted; if (ckbEvtDocumentCompleted.Checked) { wb1.DocumentCompleted += wbevt_DocumentCompleted; } wb1.ProgressChanged -= wbevt_ProgressChanged; if (ckbProgressChanged.Checked) { wb1.ProgressChanged += wbevt_ProgressChanged; } wb1.NewWindow -= wbevt_NewWindow; wb1.NewWindow += wbevt_NewWindow; wb1.StatusTextChanged -= wbevt_StatusTextChanged; if (ckbWBStatusTextChanged.Checked) { wb1.StatusTextChanged += wbevt_StatusTextChanged; } tmrPollReadyState.Enabled = false; if (ckbPollReadyState.Checked == true) { s_rsprev = wb1.ReadyState; int pollms = 10; int.TryParse(tboxPollReadyStateMs.Text, out pollms); if (pollms <= 0) { pollms = 10; } tboxPollReadyStateMs.Text = pollms.ToString(); log($"Will poll wb.ReadyState every {pollms} millisec. (now {s_rsprev.ToString()})"); tmrPollReadyState.Interval = pollms; tmrPollReadyState.Tick += tmrevt_PollWBReadyState; tmrPollReadyState.Enabled = true; tmrPollReadyState.Start(); } // Trying to capture NewWindow event from WebBrowser control. According to: // https://www.codeproject.com/Articles/71592/How-to-easily-capture-the-NewWindow3-event-and-det SHDocVw.WebBrowser axBrowser = (SHDocVw.WebBrowser)wb1.ActiveXInstance; axBrowser.NewWindow3 += new DWebBrowserEvents2_NewWindow3EventHandler(Browser_NewWindow3); axBrowser.NewWindow2 += new DWebBrowserEvents2_NewWindow2EventHandler(Browser_NewWindow2); }