Je souhaite que mon application WPF ouvre le navigateur par défaut et accède à une certaine page Web. Comment je fais ça?
126
System.Diagnostics.Process.Start("http://www.webpage.com");
Une des nombreuses façons.
J'utilise cette ligne pour lancer le navigateur par défaut:
la source
La réponse acceptée ne fonctionne plus sur .NET Core 3 . Pour le faire fonctionner, utilisez la méthode suivante:
la source
Bien qu'une bonne réponse ait été donnée (en utilisant
Process.Start
), il est plus sûr de l'encapsuler dans une fonction qui vérifie que la chaîne passée est bien un URI, pour éviter de démarrer accidentellement des processus aléatoires sur la machine.la source
Microsoft l'explique dans l' article KB305703 sur la façon de démarrer le navigateur Internet par défaut par programme à l'aide de Visual C # .
N'oubliez pas de consulter la section Dépannage.
la source
Vous ne pouvez pas lancer une page Web à partir d'une application élevée. Cela déclenchera une exception 0x800004005, probablement parce qu'explorer.exe et le navigateur s'exécutent sans élévation de privilèges.
Pour lancer une page Web à partir d'une application élevée dans un navigateur Web non élevé, utilisez le code créé par Mike Feng . J'ai essayé de transmettre l'URL à lpApplicationName mais cela n'a pas fonctionné. Pas non plus lorsque j'utilise CreateProcessWithTokenW avec lpApplicationName = "explorer.exe" (ou iexplore.exe) et lpCommandLine = url.
La solution de contournement suivante fonctionne: Créez un petit projet EXE qui a une tâche: Process.Start (url), utilisez CreateProcessWithTokenW pour exécuter ce .EXE. Sur mon Windows 8 RC, cela fonctionne bien et ouvre la page Web dans Google Chrome.
la source
Explorer.exe
pour désélever n'est pas prise en charge: "Malheureusement, l'équipe Windows Shell a répondu que le comportement actuel de" Explorer.exe AppName.exe "était un bogue et pourrait ne pas fonctionner dans les futures mises à jour / versions de Windows. Applications ne devrait pas s’y fier. "Voici mon code complet comment ouvrir.
il y a 2 options:
ouvrir en utilisant le navigateur par défaut (le comportement est comme ouvert dans la fenêtre du navigateur)
ouvrir via les options de commande par défaut (le comportement est comme vous utilisez la commande "RUN.EXE")
ouvrir via 'explorer' (le comportement est comme vous avez écrit l'URL dans l'url de la fenêtre de votre dossier)
[suggestion facultative] 4. utilisez l'emplacement du processus iexplore pour ouvrir l'url requise
CODE:
et la fonction Helper:
J'espère que j'ai aidé.
la source
GetWindowsPath
?La vieille école;)
Utilisation:
openit("www.google.com");
la source
J'ai la solution pour cela car j'ai un problème similaire aujourd'hui.
Supposons que vous souhaitiez ouvrir http://google.com à partir d'une application exécutée avec des privilèges d'administrateur:
la source