none
Win App recebe dados via webbrowser - Receber dados da pagina via webbrowser RRS feed

  • Pergunta

  • Olá a todos,

    Estou com o seguinte problema.
    Preciso criar um pequeno browser web (Windows Applization) para a minha empresa, onde esse browser identifique algumas informações que a pagina web deverá eviar e execute algumas funções.

    Seria mais ou menos assim.

    O usuário abre o browser e uma pagina de login é aberta para ele.
    Na pagina de login o usuário devera informar o usuário e senha.
    Caso o login falhe, a pagina web devera enviar uma informação (Ex.: A mensagem de erro de login) para o programa (Browser em Windows App) para que ele exiba essa mensagem em um TextBox criado especialmente para exibir mensagens de erro.

    Ou seja, eu preciso passar informassões de uma pagina we para uma win app atravez do web browser.

    Isso seria possivél???Alguém sabe como fazer isso??

    Desde já, obrigado.
    sexta-feira, 8 de abril de 2011 19:25

Respostas

  • Bom, não é legal fazer desta forma, mas já que sua necessidade é esta, a solução para você seria o que eu sugeri como resposta no item acima.

    Segue um snnipet para você ver como deverá ser feito:

    private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
    
          /*
           * http://msdn.microsoft.com/pt-br/ms348103
           * ENDERECO TESTE DO WEBBROWSER
           * 
           */
    
          HtmlDocument objDocument = webBrowser1.Document;
          string PegarIdiomaDoSite = objDocument.GetElementById("LinkCountryLanguage").InnerHtml;
        }
    

    Veja que facilmente você pode pegar qualquer valor do HTML, se você precisar fazer desta forma mesmo, o único jeito será este!

    Se a resposta foi útil pra você, colabore com o fórum marcando como resposta esta sugestão, obrigado!

    Júlio Cesar Cosmo, MCP, MCTS - Influenciador Sharepoint, Influenciador Microsoft

    http://juliocosmo.wordpress.com/

    terça-feira, 12 de abril de 2011 12:36

Todas as Respostas

  • Como vai tommazoni,

    Basta você extrair o html do webbrowser e procurar pela informação desejada, e tratar como de acordo com a sua necessidade!

    private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
     {
     HtmlDocument objDocument = webBrowser1.Document;
     string htmlExtracted = objDocument.Body.OuterHtml;
     }

    Espero ter ajudado,

    Se a resposta foi útil pra você, colabore com o fórum marcando como resposta esta sugestão, obrigado!

    Júlio Cesar Cosmo, MCP, MCTS - Influenciador Sharepoint, Influenciador Microsoft

    http://juliocosmo.wordpress.com/

    domingo, 10 de abril de 2011 04:06
  • Júlio, Mas dessa forma a minha informação deverá estár dentro do html. Existe alguma maneira de não precisar colocar a informação direto no html, por exemplo, se eu precisar exportar uma classe do aspx para o programa ou alguns codigos pré-definidos para que o programa windows identificasse. JavaScript seria uma saída?? Obrigado.
    terça-feira, 12 de abril de 2011 00:26
  • Tommazoni,

    Defina melhor o que você quis dizer com exportar uma classe do aspx para o programa ou alguns códigos pré-definidos. Detalhe melhor para podermos ajudá-lo, no aguardo!

    Se a resposta foi útil pra você, colabore com o fórum marcando como resposta esta sugestão, obrigado!

    Júlio Cesar Cosmo, MCP, MCTS - Influenciador Sharepoint, Influenciador Microsoft

    http://juliocosmo.wordpress.com/

    terça-feira, 12 de abril de 2011 03:46
  • Júlio,

    É o seguinte.
    Na minha pagina aspx eu tenho uma classe com todas as informações do usuário (Nome, Usuário, Data/Hora do Login, Categoria de menus, pagina pessoal, e etc). Quando minha aplicação windows acessar essa pagina atraves do webbrowser, eu gostaria de exportar essa classe da pagina e importar na aplicação windows para adequar a aplicação conform os dados da classe, pois uma das tratativas que eu faço é porque dentro da minha Win App eu tenho um botão que direciona diretamente para a pagina pessoal do usuário e o endereço dessa pagina pessoal está dentro desta classe.

    Não sei se é possivel fazer esse tipo de interação entre Win App e Web App utilizando classes como parametro ou se é possível passar algum tipo de informação para a Win App sem que seja necessário exibi-la no HTML.

    Espero ter esclarecido.

    Desde já, obrigado.

    terça-feira, 12 de abril de 2011 11:28
  • Bom, não é legal fazer desta forma, mas já que sua necessidade é esta, a solução para você seria o que eu sugeri como resposta no item acima.

    Segue um snnipet para você ver como deverá ser feito:

    private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
    
          /*
           * http://msdn.microsoft.com/pt-br/ms348103
           * ENDERECO TESTE DO WEBBROWSER
           * 
           */
    
          HtmlDocument objDocument = webBrowser1.Document;
          string PegarIdiomaDoSite = objDocument.GetElementById("LinkCountryLanguage").InnerHtml;
        }
    

    Veja que facilmente você pode pegar qualquer valor do HTML, se você precisar fazer desta forma mesmo, o único jeito será este!

    Se a resposta foi útil pra você, colabore com o fórum marcando como resposta esta sugestão, obrigado!

    Júlio Cesar Cosmo, MCP, MCTS - Influenciador Sharepoint, Influenciador Microsoft

    http://juliocosmo.wordpress.com/

    terça-feira, 12 de abril de 2011 12:36