Como iniciar o navegador da Internet padrão programaticamente usando o Visual C#

Traduções deste artigo Traduções deste artigo
ID do artigo: 305703 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi publicado anteriormente em BR305703
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo passo a passo mostra como iniciar o navegador de Internet padrão.

Requisitos

  • Microsoft Visual Studio.NET

Especificar a URL, FTP ou arquivo aberto

Você pode especificar um URL, um arquivo ou um endereço FTP. Todos os três essas atribuições são válidos:
   string target= "http://www.microsoft.com";
   string target = "ftp://ftp.microsoft.com";
   string target = "C:\\Program Files\\Microsoft Visual Studio\\INSTALL.HTM";  
				

Use o método Start da classe Process para iniciar o navegador

A classe Process contém um estático método Start . Porque este é um método estático, você pode chamar Iniciar sem ter uma instância de uma classe de processo .
System.Diagnostics.Process.Start(target);
				

Fornecer tratamento de exceção

Porque você se beneficiar da propriedade UseShellExecute padrão quando você chamar o método Start , é necessário consultar explicitamente o registro para determinar qual navegador é o padrão. No entanto, se você usar essa abordagem em um computador que não tenha um navegador instalado, ocorre uma exceção. Essa exceção deve ser detectada para que a ação apropriada possa ser executada.

Este exemplo ajusta o registro explicitamente para um erro é gerado quando a chave do registro necessária não foi encontrada e indica que o navegador não está instalado. Além disso, um manipulador de exceção geral é fornecido para outros erros que podem ocorrer. O bloco try... catch é demonstrado na listagem de código completo.

Exemplo de código completo

    string target= "http://www.microsoft.com";
    //Use no more than one assignment when you test this code. 
    //string target = "ftp://ftp.microsoft.com";
    //string target = "C:\\Program Files\\Microsoft Visual Studio\\INSTALL.HTM"; 

    try
        {
         System.Diagnostics.Process.Start(target);
        }
    catch
        ( 
         System.ComponentModel.Win32Exception noBrowser) 
        {
         if (noBrowser.ErrorCode==-2147467259)
          MessageBox.Show(noBrowser.Message);
        }
    catch (System.Exception other)
        {
          MessageBox.Show(other.Message);
        }
				

Solução de problemas

Esse código é altamente dependente as associações de tipo de arquivo do aplicativo na seção HKEY_CLASSES_ROOT do registro. Isso pode levar a resultados inesperados e exceções se o registro está danificado. Além disso, as extensões e tipos de arquivo podem estar associadas a aplicativos que não seja o navegador. Por exemplo, arquivos HTM ou HTML podem ser associados com software de desenvolvimento da Web em vez do navegador.

REFERÊNCIAS

Para obter mais informações sobre a classe Process , visite o seguinte site da Microsoft:
Classe de processo

Propriedades

ID do artigo: 305703 - Última revisão: terça-feira, 19 de junho de 2012 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# 2005
Palavras-chave: 
kbhowtomaster kbprod2web kbmt KB305703 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 305703

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com