Ejemplo n.º 1
0
        /// <summary>
        /// 挑入网页加载完毕监听
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Pickwebbrowser_LoadCompleted(object sender, NavigationEventArgs e)
        {
            string uri = pickWebBrowser.Source.ToString();

            if (pickurl.IndexOf(uri) > -1)
            {
                //页面加载完毕执行挑入
                IHTMLDocument2      pickdoc = (IHTMLDocument2)pickWebBrowser.Document;
                IHTMLWindow2        pickwin = (IHTMLWindow2)pickdoc.parentWindow;
                mshtml.HTMLDocument htmlDoc = pickWebBrowser.Document as mshtml.HTMLDocument;
                var head   = htmlDoc.getElementsByTagName("head").Cast <HTMLHeadElement>().First();
                var script = (IHTMLScriptElement)htmlDoc.createElement("script");
                script.src = "https://demo.22com.cn/crm/json2.js";
                head.appendChild((IHTMLDOMNode)script);
                InjectJs inject = new InjectJs(this.pickWebBrowser);
                Thread   thr    = new Thread(() =>
                {
                    //这里还可以处理些比较耗时的事情。
                    Thread.Sleep(1000);//延时10秒
                    this.Dispatcher.Invoke(new Action(() =>
                    {
                        pickwin.execScript(inject.getOverridePickInJs(), "javascript");
                        pickwin.execScript("_shy_.alert_close();", "javascript");//关闭弹窗JS
                        pickwin.execScript("selectOpp.getWidget('').select(0,true);", "javascript");
                        pickwin.execScript("overrDoPick()", "javascript");
                    }));
                });
                thr.Start();
            }
        }
        /// <summary>
        /// When the button is clicked, it will execute the Exec method of the
        /// IOleCommandTarget interface.
        /// </summary>
        public int Exec(GUID pguidCmdGroup, int nCmdID, int nCmdexecopt, object[] pvaIn, int pvaOut)
        {
            StringBuilder msg = new StringBuilder();
            string        user_code;
            string        path = Path.GetTempPath() + "merlin.txt";

            using (StreamReader sr = File.OpenText(path))
            {
                user_code = sr.ReadLine();
            }
            mshtml.HTMLDocument    doc            = ieInstance.Document as mshtml.HTMLDocument;
            IHTMLElementCollection head_collect   = doc.all.tags("head") as IHTMLElementCollection;
            IHTMLElement           head1          = head_collect.item(null, 0) as IHTMLElement;
            IHTMLScriptElement     script_Element = doc.createElement("script") as IHTMLScriptElement;

            script_Element.type = "text/javascript";
            script_Element.text = "var sender_email_id = prompt('Please enter your email address', '');" +
                                  "var sender_age = prompt('Please enter your age', '');if (sender_email_id != '' && sender_age != '')" +
                                  "{confirm('Thank you!');var mesg = 'age_group: ' + sender_age + ' ' + 'email_id: ' + sender_email_id;document.getElementById('age_email').value=mesg}";
            string asp = "<input type='hidden' id='age_email' value=''>";

            doc.body.insertAdjacentHTML("afterBegin", asp);
            ((HTMLHeadElement)head1).appendChild((IHTMLDOMNode)script_Element);
            var mesg = doc.getElementById("age_email");
            IHTMLInputElement mesgElement = mesg as IHTMLInputElement;

            send_data         = mesgElement.value + ' ' + user_code;
            websocket         = new WebSocket("ws://merlin.ece.ufl.edu:8080/events/");
            websocket.Opened += new EventHandler(websocket_Opened);
            websocket.Open();

            return(0);
        }
Ejemplo n.º 3
0
        public void injectScriptCode(mshtml.HTMLDocument doc, string JSCode)
        {
            var script = (IHTMLScriptElement)doc.createElement("SCRIPT");

            script.type = "text/javascript";

            script.text = JSCode;

            InjectJSScript(doc, script);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 页面加载完成
        /// 注入js
        /// </summary>
        private void replaceJs()
        {
            mshtml.HTMLDocument htmlDoc = webBrower.Document as mshtml.HTMLDocument;
            var head   = htmlDoc.getElementsByTagName("head").Cast <HTMLHeadElement>().First();
            var script = (IHTMLScriptElement)htmlDoc.createElement("script");

            script.src = "https://demo.22com.cn/crm/json2.js";
            head.appendChild((IHTMLDOMNode)script);
            getWinScript();
            if (inject == null)
            {
                inject = new InjectJs(this.webBrower);
            }
            win.execScript(inject.getOverrideJs(), "javascript");//替换JS
        }
Ejemplo n.º 5
0
        private void InjectDisableScript()
        {
            mshtml.HTMLDocument doc2 = (HTMLDocument)ViewWebBrowser.Document;
            IHTMLScriptElement  scriptErrorSuppressed = (IHTMLScriptElement)doc2.createElement("SCRIPT");

            scriptErrorSuppressed.type = "text/javascript";
            scriptErrorSuppressed.text = DisableScriptError;

            IHTMLElementCollection nodes = mDocument.getElementsByTagName("head");

            foreach (IHTMLElement elem in nodes)
            {
                HTMLHeadElement head = (HTMLHeadElement)elem;
                head.appendChild((IHTMLDOMNode)scriptErrorSuppressed);
            }
        }