Ответ 1
Эта статья проведет вас через нее.
Короткий ответ:
ProcessStartInfo sInfo = new ProcessStartInfo("http://mysite.com/");
Process.Start(sInfo);
Я пытаюсь предоставить ссылку на мой веб-сайт компании из формы Windows. Я хочу хорошо себя вести и запускать с использованием предпочтительного браузера пользователя.
Каков наилучший способ открыть URL-адрес в браузере пользователя по умолчанию из приложения Windows Forms?
Эта статья проведет вас через нее.
Короткий ответ:
ProcessStartInfo sInfo = new ProcessStartInfo("http://mysite.com/");
Process.Start(sInfo);
using System.Diagnostics;
Process.Start("http://www.google.com/");
Этот подход сработал у меня, но я мог упустить что-то важное.
Вот лучшее из обоих миров:
Dim sInfo As New ProcessStartInfo("http://www.mysite.com")
Try
Process.Start(sInfo)
Catch ex As Exception
Process.Start("iexplore.exe", sInfo.FileName)
End Try
Я обнаружил, что ответ, предоставленный Blorgbeard, не удастся, если настольное приложение будет запущено на устройстве Windows 8. Для точки Камилло вы должны попытаться открыть это с помощью приложения браузера по умолчанию, но если приложение browswer не назначено, будет отправлено необработанное исключение.
Я отправляю это как ответ, так как он обрабатывает исключение, все еще пытаясь открыть ссылку в браузере по умолчанию.
Мне нравится подход, описанный здесь. Он учитывает возможные исключения и задержки при запуске браузера.
Для лучшей практики убедитесь, что вы не просто игнорируете это исключение, но поймаете его и выполните соответствующее действие (например, уведомите пользователя о том, что открытие браузера для перехода на него с ошибкой).
Я знаю это поздно, но также взгляну на это
Если вы хотите открывать несколько ссылок одновременно с каждым новым окном, см. Здесь
Вышеупомянутый подход идеален, я хотел бы рекомендовать этот подход, где вы можете передать свои параметры.
Process mypr;
mypr = Process.Start("iexplore.exe", "pass the name of website");