PureBoard
https://www.purebasic.fr/german/

Wie findet man den bevorzugten Webbrowser?
https://www.purebasic.fr/german/viewtopic.php?f=16&t=31446
Seite 1 von 1

Autor:  bin_neu_hier [ 05.05.2019 08:38 ]
Betreff des Beitrags:  Wie findet man den bevorzugten Webbrowser?

Hallo!

Wie kann man herausfinden, welchen Webbrowser ein User als den "Haupt"-Browser hinterlegt hat und wie würde ich den dann per runprogramm mit einer bestimmten URL als Vorgabe starten?

Autor:  Nino [ 05.05.2019 08:44 ]
Betreff des Beitrags:  Re: Wie findet man den bevorzugten Webbrowser?

bin_neu_hier hat geschrieben:
Wie kann man herausfinden, welchen Webbrowser ein User als den "Haupt"-Browser hinterlegt hat
Das hängt wohl vom verwendeten Betriebssystem ab.

bin_neu_hier hat geschrieben:
und wie würde ich den dann per runprogramm mit einer bestimmten URL als Vorgabe starten?

Es reicht, wenn man einfach die URL aufruft. Diese wird dann automatisch in dem Standard-Browser geöffnet:
Code:
RunProgram("https://www.google.de/")

Autor:  Shardik [ 05.05.2019 11:17 ]
Betreff des Beitrags:  Re: Wie findet man den bevorzugten Webbrowser?

Nino hat geschrieben:
Es reicht, wenn man einfach die URL aufruft. Diese wird dann automatisch in dem Standard-Browser geöffnet:
Code:
RunProgram("https://www.google.de)"

Das funktioniert so aber nur unter Windows! Damit es auch unter MacOS und Linux funktioniert, müsste es so angepasst werden:
Code:
Procedure OpenWebsiteInDefaultBrowser(Website.S)
  CompilerSelect #PB_Compiler_OS
    CompilerCase #PB_OS_Linux
      RunProgram("xdg-open", Website, "")
    CompilerCase #PB_OS_MacOS
      RunProgram("Open", Website, "")
    CompilerCase #PB_OS_Windows
      RunProgram(Website)
  CompilerEndSelect
EndProcedure

OpenWebsiteInDefaultBrowser("https://www.google.de")

Autor:  bin_neu_hier [ 05.05.2019 14:07 ]
Betreff des Beitrags:  Re: Wie findet man den bevorzugten Webbrowser?

Super, vielen Dank Euch beiden!

Die Windowslösung per Runprogram tut's für mich. Bei meinen Versuchen mit Runprogram habe ich mich bei den Parametern vertan, dass der Aufruf so einfach sein kann, wäre mir gar nicht in den Sinn gekommen. Nochmals besten Dank!

Autor:  Nino [ 05.05.2019 14:55 ]
Betreff des Beitrags:  Re: Wie findet man den bevorzugten Webbrowser?

Shardik hat geschrieben:
Das funktioniert so aber nur unter Windows!

Ja, natürlich. Daran hatte ich in dem Moment als ich das schrieb nicht gedacht. Danke!

Autor:  Mijikai [ 05.05.2019 15:22 ]
Betreff des Beitrags:  Re: Wie findet man den bevorzugten Webbrowser?

Optional über die Registry (nur Windows) :)

Code:
Code:
Procedure.s GetDefaultBrowser()
  Protected key.i
  Protected size.i
  Protected browser.s
  If RegOpenKeyEx_(#HKEY_CURRENT_USER,"Software\Clients\StartMenuInternet",#Null,#KEY_READ,@key) = #ERROR_SUCCESS
    If RegQueryValueEx_(key,#Null,#Null,#Null,#Null,@size) = #ERROR_SUCCESS
      browser = Space(size)
      If RegQueryValueEx_(key,#Null,#Null,#Null,@browser,@size) = #ERROR_SUCCESS
        RegCloseKey_(key)
        ProcedureReturn browser
      EndIf
    EndIf
    RegCloseKey_(key)
  EndIf
  ProcedureReturn #Null$
EndProcedure

Debug GetDefaultBrowser()

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/