예제 #1
0
파일: MainForm2.cs 프로젝트: qwdingyu/C-
        private void mainWebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            IHTMLDocument2 win = (IHTMLDocument2)this.mainWebBrowser.Document.DomDocument;
            // 流转控制
            string s = @"function confirm() {";

            s += @"return true;";
            s += @"}";
            s += @"function alert(str)";
            s += @"{";
            s += @"window.external.alertMessage(str);";
            s += @"}";
            win.parentWindow.execScript(s, "javascript");
            this.mainWebBrowser.ObjectForScripting = this;

            if (win.url.Equals(Constants.MAIN_MENU))
            {
                this.mainWebBrowser.Navigate(Constants.APPLY_TEMPORARY_SEQUENCE_NUMBER_PAGE);
            }
            else if (win.url.Equals(Constants.APPLY_TEMPORARY_SEQUENCE_NUMBER_PAGE))
            {
                // 调用填参方法
                FillConfigurationAction f = new FillConfigurationAction(this.mainWebBrowser);
                f.tryFillConfiguration();
            }
        }
예제 #2
0
        private void mainWebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            IHTMLDocument2 win = (IHTMLDocument2)this.mainWebBrowser.Document.DomDocument;



            // 流转控制
            if (win.url.Equals(Constants.LOGIN_PAGE))
            {
                LoginAction.tryLogin(this.mainWebBrowser);
            }
            else if (win.url.Equals(Constants.MAIN_MENU))
            {
                this.mainWebBrowser.Navigate(Constants.APPLY_TEMPORARY_SEQUENCE_NUMBER_PAGE);
            }
            else if (win.url.Equals(Constants.APPLY_TEMPORARY_SEQUENCE_NUMBER_PAGE))
            {
                // 重写js文件中的alert方法。将alert参数导出。

                /*
                 * win.parentWindow.execScript("var testparam='';function nalert(ss){testparam =ss;}", "javascript");
                 * win.parentWindow.execScript("window.alert=nalert;window.onerror=null;window.confirm=null;window.open=null;window.showModalDialog=null;", "javascript");
                 *
                 * try
                 * {
                 *
                 *  win.parentWindow.execScript("window.alert=nalert;");
                 *  win.parentWindow.execScript("alert(11);", "javascript");
                 * }
                 * catch
                 * { }
                 *
                 * // 启动timer
                 * this.timer1.Enabled = true;
                 * this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
                 */

                // 调用填参方法
                FillConfigurationAction f = new FillConfigurationAction(this.mainWebBrowser);
                f.tryFillConfiguration();
            }

            /*
             *
             * win.parentWindow.execScript("var testparam='';function nalert(ss){testparam =ss;}", "javascript");
             *  win.parentWindow.execScript("window.alert=nalert;window.onerror=null;window.confirm=null;window.open=null;window.showModalDialog=null;", "javascript");
             *  win.parentWindow.execScript("alert(11);", "javascript");
             *  try
             *  {
             *      win.parentWindow.execScript("document.getElementById('iframemenupage').contentWindow.alert=nalert;");
             *  }
             *  catch
             *  { }
             *  win = null;
             *
             *  // 调用填参方法
             *  FillConfigurationAction f = new FillConfigurationAction(this.mainWebBrowser);
             *  f.tryFillConfiguration();
             * */
        }