Если вы порождаете дочерний процесс, это довольно сложно, и вам, вероятно, придется использовать специфический API каждого браузера (например, FF и IE не будут одинаковыми).
Не помогает, что во многих случаях exe обнаруживает существующий экземпляр и перенаправляет запрос туда (поэтому вы не можете доверять коду выхода, так как страница даже не была запрошена в нужном exe) .
Лично я стараюсь избегать использования какого-либо конкретного браузера для этого сценария; просто запустите URL:
Process.Start("http://somesite.com");
Это будет использовать браузер пользователя по умолчанию. Однако вы должны надеяться, что оно появится - вы не можете (надежно и надежно) проверить это извне без особой работы.
Еще один вариант - прочитать данные самостоятельно (WebClient.Download*
) - но это может иметь проблемы со сложными файлами cookie, входом в систему, осведомленностью агента пользователя и т. Д.