예제 #1
0
        private void WebBrowser_LoadError(object sender, CefSharp.LoadErrorEventArgs e)
        {
            Uri uri = new Uri(e.FailedUrl);

            Debug.Print("WebBrowser_LoadError >> e.FailedUrl : " + e.FailedUrl);

            // get th host name from the full URL, e.g.:
            // https://myhost.com >> myhost.com
            string host = tbxCallbackUrl.Text.Split(new string[] { "//" }, StringSplitOptions.RemoveEmptyEntries)[1].ToLower();

            if (uri.Host.ToLower() == host)
            {
                // Get the code
                string code = HttpUtility.ParseQueryString(uri.Query).Get("code");

                // Navigate to something else to remove the
                // bad page
                webBrowser.Load(null);

                // Turn the code into access token
                var authApi  = new ThreeLeggedApi();
                var response = authApi.Gettoken(tbxClientId.Text, tbxClientSecret.Text, "authorization_code", code, tbxCallbackUrl.Text);
                logInInfo.accessToken  = response["access_token"];
                logInInfo.refreshToken = response["refresh_token"];
                logInInfo.expiresIn    = response["expires_in"];
                logInInfo.clientId     = tbxClientId.Text;
                logInInfo.clientSecret = tbxClientSecret.Text;

                //this.DialogResult = DialogResult.OK;
                //this.Close();
                closeDialog();
            }
        }
예제 #2
0
 private void loadHtml(CefSharp.WinForms.ChromiumWebBrowser browser, string html)
 {
     System.IO.MemoryStream memorystream = new System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes(html));
     browser.RegisterResourceHandler(resourcename, memorystream);
     browser.Load(resourcename);
     browser.UnRegisterResourceHandler(resourcename);
 }
예제 #3
0
        private void button_Viewer_Click(object sender, System.EventArgs e)
        {
            var env         = comboBox_Viewer_Environment.Text;
            var accessToken = twoLeggedRequests.GetBearerToken();
            var documentId  = textBox_Viewer_ObjectId.Text.ToUrlSafeBase64();

            cefBrowser.Load("file:///viewer.html?env=" + env + "&accessToken=" + accessToken + "&documentId=" + documentId);
        }
예제 #4
0
파일: Form1.cs 프로젝트: khiemnv/KinhNikaya
        public Form1()
        {
            InitializeComponent();

            browser      = new CefSharp.WinForms.ChromiumWebBrowser("");
            browser.Dock = DockStyle.Fill;
            this.Controls.Add(browser);

            var file = @"D:\tmp\github\utilities\KinhPhat\browser_javascript_binding\simple.html";

            browser.JavascriptObjectRepository.Register("jsHandler", jsHandler, true);
            browser.Load(file);
        }
예제 #5
0
        void ShowSearchRes(SrchResult res)
        {
            var    data     = convJsData(res);
            var    jsTxt    = genJsTxt(data);
            string htmlTxt  = genHtmlTxt(jsTxt);
            string filename = string.Format(@"{0}{1}", Path.GetTempPath(), "page.htm");

            File.WriteAllText(filename, htmlTxt);
#if use_chromium
            //create json data [title, texthtml]
            m_wb.Load(filename);
#elif use_gecko
            m_wb.Navigate(filename);
            m_wb.AddMessageEventListener("openTitle", OnOpenTitle);
#else
            var listView1 = m_lstV;
            listView1.Clear();
            listView1.Columns.Add("content");
            listView1.Columns.Add("title");
            listView1.Columns.Add("paragraph");
            listView1.Columns.Add("pos");
            listView1.Columns.Add("diff");
            listView1.Columns.Add("detail");
            listView1.GridLines = true;
            foreach (var rec in res.recs)
            {
                //var tempTxt = string.Format("{0} {1} {2} {3}",
                //    string.Join(" ", rec.path.Select((v)=>v.content).ToArray()),
                //    rec.d, rec.w.titleId, rec.w.parId);
                var li      = listView1.Items.Add(string.Join(" ", rec.detail.Select((v) => v.content)));
                var titleId = rec.detail[0].titleId;
                var sub     = li.SubItems.Add(res.titles.Find((t) => t.ID == titleId).zTitle);
                sub.Tag = rec.detail[0].titleId;
                li.SubItems.Add(string.Join(" ", rec.detail.Select(v => v.parId)));
                li.SubItems.Add(string.Join(" ", rec.detail.Select(v => v.pos)));
                li.SubItems.Add(rec.d.ToString());
                var w      = rec.detail[0];
                var parId  = w.parId;
                var parTxt = res.paragraphs.Find((t) => t.ID == parId).content;
                var txt    = parTxt.Substring(0, w.pos) + "[" + w.content + "]" + parTxt.Substring(w.pos + w.content.Length);
                li.SubItems.Add(parTxt);
            }
#endif
        }
예제 #6
0
        public void productweb(string url)
        {
            if (url.Contains("about:blank#blocked"))
            {
                return;
            }
            DevExpress.XtraTab.XtraTabPage _XtraTabPage = new DevExpress.XtraTab.XtraTabPage();
            _XtraTabPage.Size      = new System.Drawing.Size(200, 300);
            _XtraTabPage.Location  = new System.Drawing.Point(200, 300);
            _XtraTabPage.BackColor = Color.Red;
            _XtraTabPage.Anchor    = AnchorStyles.Left;
            _XtraTabPage.Anchor    = AnchorStyles.Right;
            _XtraTabPage.Anchor    = AnchorStyles.Top;
            _XtraTabPage.Anchor    = AnchorStyles.Bottom;
            _XtraTabPage.Size      = new System.Drawing.Size(Form1.xtraTabControl1.Width, Form1.xtraTabControl1.Height);
            _XtraTabPage.Width     = Form1.xtraTabControl1.Width;
            _XtraTabPage.Height    = Form1.xtraTabControl1.Height;

            _XtraTabPage.Name = "谷歌_New_Tab";
            _XtraTabPage.Text = url.Substring(0, 20);


            _XtraTabPage.Tag = url;
            CefSharp.WinForms.ChromiumWebBrowser newWebBrowser = new CefSharp.WinForms.ChromiumWebBrowser();
            //newWebBrowser.OnBeforePopup += Browser_StartNewWindow;
            newWebBrowser.Load(url);         //转到网站
            //newWebBrowser.DocumentCompleted += NewWebBrowser_DocumentCompleted;
            //newWebBrowser.ScriptErrorsSuppressed = true;
            newWebBrowser.Name            = "谷歌_New_Tab";
            newWebBrowser.Tag             = url;
            newWebBrowser.Dock            = DockStyle.Fill;
            newWebBrowser.LifeSpanHandler = new OpenPageSelf();
            newWebBrowser.FrameLoadEnd   += NewWebBrowser_FrameLoadEnd;
            //newWebBrowser.Navigated += new WebBrowserNavigatedEventHandler(webBrowser1_Navigated);
            //newWebBrowser.NewWindow += new CancelEventHandler(webBrowser1_NewWindow);
            _XtraTabPage.Controls.Add(newWebBrowser);//新WebBrowser添加到新选项卡
            //Form1.xtraTabControl1.TabPages.Add((_XtraTabPage)); // 新选项卡添加到TabControl
            //Form1.xtraTabControl1.SelectedTabPage = _XtraTabPage;//新选项卡位活动选项卡
            //Form1.txt_url.Text = url;//地址栏显示地址
            Form1.xtraTabControl1.Invoke(new Action <string>((str) => { Form1.xtraTabControl1.TabPages.Add((_XtraTabPage)); }), "");
            Form1.xtraTabControl1.Invoke(new Action <string>((str) => { Form1.xtraTabControl1.SelectedTabPage = _XtraTabPage; }), "");
        }
예제 #7
0
        private void show_map_btn_Click(object sender, EventArgs e)
        {
            save_img_btn.Enabled = false;
            //TextReader tr = new StreamReader(mult1path);
            //string fileContents = string.Empty;// = tr.ReadToEnd();
            if (checkBox1.Checked)
            {
                if (!string.IsNullOrEmpty(selectedimg_path))
                {
                    if (!File.Exists(selectedimg_path))
                    {
                        MessageBox.Show("Файл изображения не найден", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
            }
            //tr.Close();
            WI_HI_cssSetter(ActSize);
            TextWriter tw = new StreamWriter(mult1path, false);

            fileContents = fileContents.Replace("SWLAT", sw_lat_txt.Text);
            fileContents = fileContents.Replace("SWLON", sw_lon_txt.Text);
            fileContents = fileContents.Replace("NELAT", ne_lat_txt.Text);
            fileContents = fileContents.Replace("NELON", ne_lon_txt.Text);
            fileContents = fileContents.Replace("ZOOM", numericUpDown1.Value.ToString());
            if (icon_check.Checked)
            {
                if (icon_color_cmb.SelectedIndex == 0)
                {
                    fileContents = fileContents.Replace("_ICON_", "myIconRED");
                }
                else
                {
                    fileContents = fileContents.Replace("_ICON_", "myIconBLUE");
                }
            }
            else
            {
                fileContents = fileContents.Replace("_ICON_", "myIconRED");
            }
            if (square_check.Checked)
            {
                if (square_color_cmb.SelectedIndex == 1)
                {
                    fileContents = fileContents.Replace("_COLOR_", "#ff120a80");
                }
                else
                {
                    fileContents = fileContents.Replace("_COLOR_", "#150cff80");
                }
            }
            else
            {
                fileContents = fileContents.Replace("_COLOR_", "#ff120a80");
            }
            if (!string.IsNullOrEmpty(selectedimg_path))
            {
                fileContents = fileContents.Replace("_IMG_PATH_", "true");
            }
            else
            {
                fileContents = fileContents.Replace("_IMG_PATH_", "false");
            }
            fileContents     = fileContents.Replace("_DRAG_ZONE_", zone_moving_chk.Checked.ToString().ToLower());
            fileContents     = fileContents.Replace("_DRAG_IMG_", img_moving_chk.Checked.ToString().ToLower());
            fileContents     = fileContents.Replace("_MARKER_", icon_check.Checked.ToString().ToLower());
            fileContents     = fileContents.Replace("_SQUARE_", square_check.Checked.ToString().ToLower());
            selectedimg_path = selectedimg_path.Replace("\\", "/");
            string _path_ = "http://localhost:8080\\resources\\" + img_help_file;

            _path_ = _path_.Replace("\\", "/");
            string web_path;

            if (string.IsNullOrEmpty(img_help_file))
            {
                web_path = _path_ + "MapBuild.html";
            }
            else
            {
                web_path = _path_.Replace(img_help_file, "MapBuild.html");
            }
            fileContents = fileContents.Replace("_PATH_", _path_); //selectedimg_path);
            set_size_by_rect();
            tw.Write(fileContents);
            tw.Close();
            chromeBrowser.Load(web_path);//mult1path);
            fl_isloaded          = false;
            save_img_btn.Enabled = false;
        }
예제 #8
0
        private async void BrowserLoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
        {
            try
            {
                // Check to see if loading is complete - this event is called twice, one when loading starts
                // second time when it's finished
                // (rather than an iframe within the main frame).
                if (!e.IsLoading)
                {
                    WriteToLogs("Redirected to: " + browser.Address.ToString());

                    if (browser.Address.ToString() == loginURL)
                    {
                        this.Invoke((MethodInvoker) delegate
                        {
                            this.emailTextbox.Enabled     = true;
                            this.passwordTextbox.Enabled  = true;
                            this.loginButton.Enabled      = true;
                            this.fetchBooksButton.Enabled = false;
                            this.loadingIcon.Visible      = false;
                        });

                        WriteToLogs("Ready to login.");
                    }
                    else if (browser.Address.ToString() == "https://ereader.chegg.com/#/")
                    {
                        this.Invoke((MethodInvoker) delegate
                        {
                            this.emailTextbox.Enabled     = false;
                            this.passwordTextbox.Enabled  = false;
                            this.loginButton.Enabled      = false;
                            this.fetchBooksButton.Enabled = true;
                            this.loadingIcon.Visible      = false;
                        });

                        WriteToLogs("Successfully logged in.");
                        WriteToLogs("Attempting to retrieve books...");

                        await Task.Delay(delay[1]);

                        GetBooks();
                    }
                    else if (browser.Address.ToString().Contains("https://ereader.chegg.com/#/books/") && browser.Address.ToString().Contains("cfi/" + jobCurrBookPage + "!"))
                    {
                        browser.LoadingStateChanged -= BrowserLoadingStateChanged;
                        if (jobCurrBookPage == int.Parse(userStartPageTextBox.Text))
                        {
                            WriteToLogs("Successfully loaded book.");
                            WriteToLogs("Preparing book for printing...");
                        }

                        await Task.Delay(delay[0]);

                        browser.LoadingStateChanged += BrowserLoadingStateChanged;
                        if (jobCurrBookPage == int.Parse(userStartPageTextBox.Text) + 1)
                        {
                            await Task.Delay(delay[1]);

                            //Calculates the last page of book
                            FindLastPage();
                        }
                        //We need to access the origin of the page to get the source of the page image.
                        //Conveniently, we just need to replace ereader with jigsaw and We should have access.
                        browser.Load(browser.Address.ToString().Replace("https://ereader.chegg.com/#/books/", "https://jigsaw.chegg.com/books/"));
                    }
                    else if (browser.Address.ToString().Contains("https://jigsaw.chegg.com/books/") && browser.Address.ToString().Contains("cfi=/" + jobCurrBookPage + "!"))
                    {
                        browser.LoadingStateChanged -= BrowserLoadingStateChanged;
                        WriteToLogs("Awaiting image download...");

                        await Task.Delay(delay[0]);

                        browser.LoadingStateChanged += BrowserLoadingStateChanged;
                        DownloadPage();
                    }
                    else if (browser.Address.ToString().Contains("chegg.com/signout") || browser.Address.ToString().Contains("jigsaw.chegg.com/login"))
                    {
                        WriteToLogs("Error: Signed out of Chegg");
                        MessageBox.Show("You've logged in from another browser! The program will close out now.", "Error: Signed out of Chegg", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        Cef.Shutdown();
                        Environment.Exit(0);
                    }
                }
                else
                {
                    if (jobCurrBookPage != -1)
                    {
                        jobAliveCheck = 1;
                    }
                    this.Invoke((MethodInvoker) delegate
                    {
                        this.loadingIcon.Visible = true;
                    });
                    WriteToLogs("You are being redirected...");
                }
            }
            catch (Exception err)
            {
                WriteToLogs("Error: Something went terribly wrong.");
                WriteToLogs("Error: " + err);

                MessageBox.Show("Error: " + err, "Error: Something went terribly wrong.", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
예제 #9
0
 private void WebChat_Load(object sender, EventArgs e)
 {
     chromiumWebBrowser.Load(chaturl);
     this.Controls.Add(chromiumWebBrowser);
 }
예제 #10
0
파일: Form2.cs 프로젝트: jayandjolin88/btc
 private void button1_Click(object sender, EventArgs e)
 {
     _WebKit_WEB.Load(textBox1.Text);
 }
예제 #11
0
        public Form1()
        {
            InitializeComponent();

            cpuCounter = new PerformanceCounter();

            cpuCounter.CategoryName = "Processor";
            cpuCounter.CounterName  = "% Processor Time";
            cpuCounter.InstanceName = "_Total";

            ramCounter = new PerformanceCounter("Memory", "Available MBytes");

            toolStripStatusLabel2.Text = "CPU: " + getCurrentCpuUsage();
            toolStripStatusLabel1.Text = "MEM: " + getAvailableRAM();
            toolStripStatusLabel3.Text = "";
            toolStripStatusLabel4.Text = "";

            statusStrip1.Refresh();

            path = Directory.GetCurrentDirectory();
            demangle();



            Process[] pname = Process.GetProcessesByName("Jazmined");

            if (pname.Length > 0)
            {
                Console.WriteLine("Jazmined process already running");
                AlreadyRunning ar = new AlreadyRunning();
                ar.ShowDialog();
                if (ar.docancel)
                {
                    Close();
                }
            }

            wallet_port = FreeTcpPort();
            Console.WriteLine("Wallet port: " + wallet_port);



            if (!File.Exists(path + "\\jazmine.bin.wallet"))
            {
                NewWallet nw = new NewWallet();
                nw.ShowDialog();
                wallet_pwd = nw.GetPassword();
                CreateWallet();
                wallet_pwd = "";
            }
            launchJazmined();

            LoadWallet lw = new LoadWallet();

            lw.ShowDialog();
            wallet_pwd = lw.GetPassword();

            launchWallet();

            Cef.EnableHighDPISupport();

            var settings = new CefSettings()
            {
            };

            Cef.Initialize(settings, performDependencyCheck: true, browserProcessHandler: null);
            browser = new CefSharp.WinForms.ChromiumWebBrowser("about:blank")
            {
                Dock = DockStyle.Fill,
            };
            panel1.Controls.Add(browser);
            LoadPhp();

            if (php_port > 0)
            {
                string version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString();
                browser.Load("http://127.0.0.1:" + php_port + "/home.php?version=" + version + "&sp=" + jazmined_port + "&wp=" + wallet_port);
            }

            timer1.Enabled = true;
        }
예제 #12
0
 public static void WaitForLoad(this CefSharp.WinForms.ChromiumWebBrowser Browser, string Url)
 {
     Browser.WaitInitialize();
     Browser.Load(Url);
     Browser.GetBrowser().WaitForLoad();
 }