.net google-chrome process windows-8 process.start

.net - Process.Start(url) roto en Windows 8/Chrome-¿hay alternativas?



google-chrome windows-8 (5)

Para abrir una URL desde una aplicación .NET, muchos sitios ( incluido en StackOverflow ) citan este ejemplo:

Process.Start("http://www.google.com/");

En Windows 8, esto funciona si Internet Explorer es el navegador predeterminado. Sin embargo, si Google Chrome es el predeterminado, falla con:

Unhandled Exception: System.ComponentModel.Win32Exception: Class not registered

¿Esto sugiere que este método ya no es la forma correcta de abrir URL en Windows? ¿Qué alternativas existen? ¿Es más seguro simplemente lanzar Internet Explorer directamente?


He probado muchas soluciones pero, como estoy en un proyecto de IU (wpf o winform), terminé usando un control de navegador integrado. Al llamar a navegar, al establecer la URL y luego al destino "_blank" se inicia una ventana del navegador externo.

_webBrowser.Navigate(uri, "_blank");

Espero que esto ayude. corriente continua



La respuesta de Armin es la que terminé usando y funcionó bien.

Solo quiero agregar que solo obtengo la excepción ''Clase no registrada'' cuando comienzo el proceso desde un programa que se ejecuta con permisos elevados. Esto parece ser un nuevo comportamiento con Windows 8.



Usa el objeto Launcher para abrir URLs.

Ejemplo:

await Launcher.LaunchUriAsync(new Uri("www.google.com"));