standartbrowser bestimmen?

  • hallo


    kann mir jemand sagen wie ich mit autoit den standartbrowser bestimmen/setzten kann?

    mir fehlt der ansatz dafür total...


    mfg

  • Reg benutzen :)

    HKEY_CLASSES_ROOT\HTTP\shell\open\command

    damit solltest du den ändern können.


    kleines Edit:

    Firefox:

    Code
    Windows Registry Editor Version 5.00
    
    
    [HKEY_CLASSES_ROOT\HTTP\shell\open\command]
    @="C:\\PROGRA~1\\MOZILL~1\\FIREFOX.EXE -requestPending -osint -url \"%1\""


    IE:

    Code
    Windows Registry Editor Version 5.00
    
    
    [HKEY_CLASSES_ROOT\HTTP\shell\open\command]
    @="\"C:\\Programme\\Internet Explorer\\iexplore.exe\" -nohome"

    2 Mal editiert, zuletzt von Kevinch (31. Juli 2007 um 16:42)

  • [autoit]


    _GetStandartBrowser()

    [/autoit][autoit][/autoit][autoit]

    Func _GetStandartBrowser()
    Global $StandartBrowser
    $i = RegRead("HKEY_CLASSES_ROOT\http\shell\open\command","")
    $i = StringLeft($i, StringInStr($i, "exe")+3)
    $x = StringSplit($i,Chr(34),0)
    $Index = _ArraySearch($x, "exe", 0, 0, 0, 1)
    $StandartBrowser = $x[$Index]
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    MsgBox(0,"Standartbrowser",$StandartBrowser)

    [/autoit]


    mfg

    AutoIT rockt! :rock:

    • Offizieller Beitrag

    Oh, mann! Hast aber 'ne Leiche ausgebuddelt. :D

    Nimm lieber "HKEY_CURRENT_USER\Software\Classes\http\shell\open\command", dann bekommst Du den Pfad vom gerade angemeldeten User.

    Das geht übrigens auch als Einzeiler:

    [autoit]


    MsgBox(0,0,_GetStandardBrowser())

    [/autoit][autoit][/autoit][autoit]

    Func _GetStandardBrowser()
    Return StringRegExpReplace(RegRead('HKEY_CURRENT_USER\Software\Classes\http\shell\open\command', ''), '.+\\(.+)\.exe.+', '$1')
    EndFunc

    [/autoit]

    Und vor allem: Standard bitte!

  • Ich hab auch noch eine Variante die ohne Array auskommt:

    Spoiler anzeigen
    [autoit]

    MsgBox(0, "Standardbrowser", "des Systems : "& @TAB & _Get_Standardbrowser(False) & @CRLF & @CRLF & "des Users : " & @TAB & _Get_Standardbrowser(True))

    [/autoit] [autoit][/autoit] [autoit]

    Func _Get_Standardbrowser($user = True)
    If $user Then
    $key = RegRead("HKEY_CURRENT_USER\Software\Classes\http\shell\open\command","")
    Else
    $key = RegRead("HKEY_CLASSES_ROOT\http\shell\open\command","")
    EndIf
    If StringLeft($key, 1) = '"' Then
    $key = StringMid($key, 2, StringInStr($key, '"', 0, 2) - 2)
    Else
    If StringInStr($key, " ") > 0 Then $key = StringLeft($key, StringInStr($key, " ") - 1)
    EndIf
    If StringLen($key) > 0 Then Return $key
    Return 0
    EndFunc

    [/autoit]

    Edit: Nach Einwand von Oscar jetzt auch "des Users".
    Edit2: Fehler korrigiert. Danke SEuBo.

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"

    4 Mal editiert, zuletzt von Micha_he (20. Januar 2010 um 19:06)

  • Mist, "Copy And Paste"-Fehler !

    Zur Nutzung dieses Forum's, ist ein Übersetzer für folgende Begriffe unerlässlich:

    "On-Bort, weier, verscheiden, schädliges, Butten steyling, näckstet, Parr, Porblem, scripe, Kompletenz, harken, manuel zu extramieren, geckukt, würglich, excell, acces oder Compilevorgeng"