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

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: 307382
Para obter uma Microsoft Visual translation from VPE for Csharp .NET versão deste artigo, consulte 305703.
Para uma versão deste artigo do Microsoft Visual Basic. NET, consulte 305705.

Este artigo se refere aos seguintes namespaces Microsoft .NET Framework Class Library:
  • System.Diagnostics.Process
  • System.Windows.Forms

NESTA TAREFA

Sumário
Este artigo demonstra como iniciar padrão da Internet navegador usando o gerenciado extensões para Visual C++.

back to the top

Requisitos

A lista a seguir descreve o hardware recomendado, software, infra-estrutura de rede e service packs são necessários:
  • Microsoft Visual Studio .NET ou Microsoft Visual Studio 2005
back to the top

Especificar o URL, FTP ou arquivo para abrir

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

Usar o método processo classe Iniciar para iniciar o navegador

A classe Process contém um estático método Start . Como esse é um método estático, você pode chamar Iniciar sem ter que uma instância de uma classe de processo .
   System::Diagnostics::Process::Start(target);				
back to the top

Fornecer tratamento de exceção

Porque você aproveita da propriedade UseShellExecute padrão quando você chama o método Start , não é 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 tem um navegador instalado, uma exceção ocorre. Essa exceção deve ser detectada para que a ação apropriada pode ser retirada. Este exemplo ajusta o registro explicitamente para um erro é gerado quando a chave do registro necessário não for 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 no exemplo de código completo.

back to the top

Exemplo de código concluída

 #using <mscorlib.dll>#using <system.dll>#using <System.Windows.Forms.dll>int main(){//Use no more than one assignment when you test this code.    //System::String * target= "http://www.microsoft.com";   //System::String * target = "ftp://ftp.microsoft.com";   System::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)         System::Windows::Forms::MessageBox::Show(noBrowser->Message);   }   catch (System::Exception * other)   {      System::Windows::Forms::MessageBox::Show(other->Message);   } return 0;} 				
back to the top

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, os tipos de arquivo e extensões podem ser 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.

back to the top
Referências
Para obter mais informações sobre a classe Process , consulte o seguinte a biblioteca de classe do .NET Framework documentação: Para obter informações mais gerais sobre o Visual C++. NET, visite o seguinte grupo de notícias Microsoft e o site da Microsoft: back to the top
Iniciar try-catch

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 307382 - Última Revisão: 03/29/2007 09:20:26 - Revisão: 2.3

Microsoft Visual C++ 2005 Express Edition, Microsoft Visual C++ .NET 2003 Standard Edition, Microsoft Visual C++ .NET 2002 Standard Edition

  • kbmt kbhowtomaster kbnewsgrouplink KB307382 KbMtpt
Comentários