Как программно запустить обозреватель Интернет по умолчанию при помощи Microsoft Visual C# .NET

Переводы статьи Переводы статьи
Код статьи: 305703 - Vizualiza?i produsele pentru care se aplic? acest articol.
Данная статья была ранее опубликована под номером RU305703
Данная статья содержит информацию о бета-версии программного продукта Microsoft. Информация в данной статье не является официальной и может быть изменена без предварительного уведомления.

Бета-версия продукта не обслуживается через каналы технической поддержки Microsoft. За информацией о получении технической поддержки бета-версии программного обеспечения обратитесь к документации, содержащейся в поставке, или на веб-сайте, с которого был загружен продукт.
Развернуть все | Свернуть все

В этой статье

Аннотация

В данной статье показывается, каким образом можно запустить обозреватель Интернет, установленный в системе по умолчанию.

Требования

  • Microsoft Visual Studio .NET

Указание URL, FTP или имени файла для открытия

Вы можете указать URL, файл или FTP адрес. Все три из этих типов адресов разрешены:
   string target= ''http://www.microsoft.com'';
   string target = ''ftp://ftp.microsoft.com'';
                                                                                  string target = ''C:\Program Files\Microsoft Visual Studio\INSTALL.HTM'';

Использование метода "Start" класса "Process" для запуска обозревателя

Класс "Process" содержит статический метод "Start". Так как это статический метод, вы можете вызывать "Start" без создания объекта "Process".
                                         System.Diagnostics.Process.Start(target);

Предоставление обработчика исключений

Благодаря использованию свойства "UseShellExecute" по умолчанию при вызове метода "Start", нет необходимости обращаться к системному реестру для определения обозревателя установленного в системе по умолчанию. Однако исли используется компьютер, не имеющий установленного обозревателя, то возникает ситуация исключения. Это исключение должно быть перехвачено для выполнения соответствующих действий. В данном примере перехватывается ошибка, возникающая при отсутствии необходимых параметров в системном реестре, и выводится сообщение о том, что обозреватель не установлен. В дополнение, обработчик исключений обрабатывает другие возможные ошибки. Блок "try...catch" показан в полном примере кода.

Полный пример кода

    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);
                 }

Разрешение проблем

Работа данного примера кода сильно зависит от того, какое приложение сопоставлено с определенными типами файлов в разделе "HKEY_CLASSES_ROOT" системного реестра. Это может привести к неожиданным результатам в случае, если реестр поврежден. Также, типы файлов и расширения могут быть связаны с отличными от обозревателя приложениями. Например, HTM или HTML файлы могут быть связаны с приложениями для создания Web-приложений вместо обозревателя.

Ссылки

За дополнительной информацией о классе "Process" следует обращаться к документации ".NET Framework Class Library":
http://msdn.microsoft.com/library/en-us/cpref/html/frlrfSystemDiagnosticsProcessClassTopic.asp














Свойства

Код статьи: 305703 - Последний отзыв: 8 апреля 2003 г. - Revision: 1.0
Информация в данной статье применима к:
  • Microsoft Visual C# .NET 2002 Standard Edition
Ключевые слова: 
kbhowto kbhowtomaster kbprod2web KB305703

Отправить отзыв

 

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