Criando um navegador avançado usando Gecko - Parte 2

Aqui vamos importar as referências, adicionar arquivos à pasta e adicionar o Browser no Formulário.

Publicado em

Dando continuidade na matéria anterior, quando configuramos nosso formulário. Aqui vamos adicionar o motor em nosso formulário, para isto será necessário adicionar referências e copiar alguns arquivos a pasta do projeto.

Abra o projeto do navegador, caso não esteja com o mesmo aberto, no Solution Explorer, clique com o botão direito do Mouse em cima de References, em seguida clique em Add Reference.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Na janela seguinte deverá abrir o Reference Manager, clique no botão Browser, nos arquivos que você fez o Download, contém uma pasta chamada Skybound, dentro dela Bin e por fim, dentro de Bin temos Skybound.Gecko.dll, selecione este arquivo e clique em ADD e por último em OK.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Esta é a DLL que precisamos para utilizar o motor, mas suas funcionalidades estão na pasta xulrunner, que será configurado posteriormente.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Um alerta deve aparecer no Error List, isto acontece por que o computador na qual está sendo desenvolvido, usa arquitetura X64 e a DLL foi compilada em X86.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Para solucionar este problema, vamos alterar o Build do nosso projeto para X86, para isto clique com o botão direito do Mouse sobre o nome do nosso projeto no Solution Explorer, em seguida em Properties, ou pressione ALT+ENTER.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Clique na Opção Build no menu à esquerda, em frente ao texto Plataform target, há um campo de seleção, selecione X86, com isto o alerta irá sumir do Error List e você já pode fechar a respectiva aba.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Devemos copiar a pasta xulrunner que está junto ao arquivo que você fez o Download para dentro da pasta Bin/Debug do nosso projeto.

Por padrão o projeto fica dentro de Meus Documentos, Visual Studio 2013, Projects, agora você deve procurar pelo nome do nosso projeto, que foi definido Bluefox_Browser, dentro dela temos Bin/Debug.

Você pode clicar com o botão direito do Mouse sobre o nome do nosso projeto no Solution Explorer em seguida clicar em Open Folder in File Explorer, que será aberto a pasta na qual nosso projeto se encontra.

Copie a pasta xulrunner para dentro de Debug.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Como já cliquei no botão Start para rodar a aplicação, a DLL foi inserida a pasta principal do nosso projeto, caso o seu modelo não tenha inserido a DLL, não há problemas, basta clicar em Start em seguida fechar a Janela, não vamos precisar dela por hora.

Vamos criar uma classe, para isto clique com o botão direito do Mouse em cima do nome do nosso projeto em Solution Explorer, Add em seguida Class.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Em Name, insta GeckoBrowser.cs e clique no botão Add.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

A partir de agora começamos a trabalhar com programação, devemos fazer referência ao Gecko em nossa classe, para isto adicione using Skybound.Gecko;, logo à frente do nome da nossa classe, insira, : GeckoWebBrowser, com isto vamos entender a classe GeckoWebBrower.

Código 01:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Skybound.Gecko;

namespace Bluefox_Browser
{
    class GeckoBrowser : GeckoWebBrowser
    {
    }
}

Agora devemos compilar nosso projeto, para isto clique no menu BUILD em seguida Build Solution.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Se você efetuou corretamente todos os procedimentos acima, um componente chamado GeckoBrowser  está visível no Toolbox.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Clique no componente e arraste para o Formulário, para adicionarmos o componente ao nosso formulário.

Criando um navegador avançado usando Gecko - Parte 2
Criando um navegador avançado usando Gecko - Parte 2

Se tentarmos executar nosso projeto, vamos receber uma mensagem de erro, isto devido aos arquivos necessários para o funcionamento do motor, não estarem inicializado. Para resolver este problema, de um duplo clique no formulário, localize o método construtor, deverá se chamar frmBluefox, logo abaixo de InitializeComponent (), insira o código abaixo, e para finalizar adicione a using Skybound.Gecko;.

Código 02:

public frmBluefox()
{
            InitializeComponent();
            Xpcom.Initialize(Environment.CurrentDirectory + "/xulrunner");
 }

Método frmBluefox_Load(), vamos adicionar uma página para ser carregada quando o projeto for executado, este código deverá ser deletado posteriormente, só será utilizado para verificar se está tudo certo.

Código 03:

private void frmBluefox_Load(object sender, EventArgs e)
{
	geckoBrowser1.Navigate("http://www.google.com");
}

Agora o código completo da nossa Classe, a sua deve seguir o mesmo padrão, se você seguiu os mesmos nomes atribuídos aqui.

Código 04:

using Skybound.Gecko;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Bluefox_Browser
{
    public partial class frmBluefox : Form
    {
        public frmBluefox()
        {
            InitializeComponent();
            Xpcom.Initialize(Environment.CurrentDirectory + "/xulrunner");
        }

        private void frmBluefox_Load(object sender, EventArgs e)
        {
            geckoBrowser1.Navigate("http://www.google.com");
        }
    }
}

Clique no botão Start para rodar seu projeto, caso a página do Google seja carregada, tudo funcionou corretamente, mas é claro que para isto necessita estar conectado à internet, caso contrário a página do Google não será carregada.

Imagem sem descrição.
Imagem sem descrição.

 

No próximo artigo, vamos preparar os componentes no formulário.

Gunnar Correa
Gunnar Correa

Autodidata, Graduado em Desenvolvimento Web, Especialista em Tecnologias na Educação e Pós-graduando em Segurança da Informação. Começou seus estudos na área de programação quando era criança, e atualmente, está estudando desenvolvimento de jogos. Fundador da SatellaSoft, criado em 2009 com o intuito de compartilhar conhecimento de forma gratuita e inédita.

Todos os nossos cursos em promoção
Todos os nossos cursos em promoção

Webstories

Todos os nossos cursos em promoção


Deixe um comentário
Aguarde...
Todos os nossos cursos em promoção