Registry Key für Standardbrowser

  • Hi,
    man kann ja den Standardbrowser fest einstellen, aber wo wird das in der Registry gespeichert? Ich will nämlich einen Link öffnen lassen und IE ist ja nicht so dolle^^ Und jetzt jeden Fall bei den zich Webbrowsern zu scripten hab ich auch nicht lust...
    Ich hoffe ihr wisst weiter ;)
    Aquaplant
    EDIT: Glaub ich habs; einfach nur shellexecute($Link) nimmt automatisch dann den Standardbrowser?

    Einmal editiert, zuletzt von Aquaplant (2. Januar 2010 um 11:14)

  • Sry, grab den Thread nochmal aus, da ich das selbe Problem habe. ShellExecute funtioniert unter Win7 Ultimate problemlos, aber unter WinXp Prof nicht.

    [autoit]

    ShellExecute(GUICtrlRead($Button5_links))

    [/autoit]


    geht nicht unter WinXP

    Würde gerne irgendwie so aufrufen:

    [autoit]

    ShellExecute("firefox.exe -new-window " & GUICtrlRead($Button5_links))

    [/autoit]

    Firefox wird natürlich nicht gefunden. Hat dazu einer eine Idee. Mir fällt nix ein.

  • ShellExecute("firefox.exe") müsste gehen... Dann könntest du über ControlSend die URL eingeben :)

  • Kannste mir auch noch einen Tip geben wie und wo. Hab mich mit der Registrierung noch nie beschäftigt.

    Zitat

    ShellExecute("firefox.exe")

    Funktioniert bei mir auf XP definitiv nicht. Grad nochmal getestet

  • Hier findest du den Pfad in einem Registry Key:


    Ausführen--> regedit
    HKEY_LOCAL_MACHINE
    SOFTWARE
    Mozilla
    Mozilla Firefox
    3.6.3 (de) ;Neuste version... müsste man anderweits umschreiben
    Main

    Dann siehst du eine registry names PathToExe. Dahinter steht was du brauchst (bei mir C:\Program Files\Mozilla Firefox\firefox.exe)
    Wie man die ausliest, weiß ich nicht genaures, aber mit RegRead müsste es gehen. Wenn du RegRead mit einer variable deklarierst, und dann Run($variable) machst müsste es gehen..

    mfg
    buraksz

    edit://

    das funktioniert einwandfrei (bei einer deutschen version 3.6.3 versteht sich...)

    [autoit]

    $firefox = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Mozilla\Mozilla Firefox\3.6.3 (de)\Main","PathToExe")
    Run($firefox)

    [/autoit]

    5 Mal editiert, zuletzt von BurakSZ (15. Mai 2010 um 12:29)

  • Ich versteh nicht, warum

    [autoit]

    ShellExecute("firefox.exe")

    [/autoit]

    nicht funktionieren soll ?(
    Hab selber Win XP Prof., und da klappts...

    Spoiler anzeigen

    Grundkenntnisse in: C++, JavaScript
    Sehr gute Kenntnisse: PHP, JAVA, C und näturlich AutoIt


    Klaviatur, Anhang UDF, GDI+ Mühle

    Zitat

    "Wenn einen um 20h der Pizzadienst anruft und fragt, ob man's nur vergessen hat und ob man das gleiche
    möchte wie immer -- dann sollte man sein Bestellverhalten evtl überdenken"

  • Cartan12

    Geb ich dir recht. Mitlerweile auf 4 Systemen getestet. 2 funktionieren und 2 nicht. Keinen blassen Schimmer warum!.

    Das lustigste ist, das ich im Moment verzweifelt den RegKey suche und absolut nichts passendes finde. Den RegKey von BurakSZ existiert bei mir nicht und ich finde einfach nichts anderes. Nur falsch rum, also Name = Pfad und Key = firefox.exe. Funktioniert ja leider so rum nicht

    P.S.: Hab´s jetzt so gelöst :

    [autoit]

    For $i= 1 to 100
    $var = RegEnumVal("HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\Shell\MuiCache", $i)
    If @error <> 0 then ExitLoop
    If StringInStr($var,"firefox.exe") Then
    MsgBox(4096, "Unterschlüssel #" & $i & " unter HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\Shell\MuiCache: ", $var)
    EndIf
    Next

    [/autoit]

    Wenn mir jetzt noch einer sagen kann, wie der Befel lautet um Firefox mit den folgenden Parametern zu starten : -new-window http://www.autoit.de/www.google.de Firefox in neuem Fenster mit der Website google starten) . Krieg die richtige schreibweise nicht hin.

    Hab´s im Moment so :

    [autoit]

    For $i= 1 to 100
    $var = RegEnumVal("HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\Shell\MuiCache", $i)
    If @error <> 0 then ExitLoop
    If StringInStr($var,"firefox.exe") Then
    $path = $var
    ExitLoop
    EndIf
    Next
    ShellExecute($path & " -new -window " & GUICtrlRead($Button6_links))

    [/autoit]

    Pfad ist richtig nur die schreibweise mit den Parametern halt nicht

    Man sollte sich auch alles durchlesen:

    [autoit]

    ShellExecute($path," -new -window " & GUICtrlRead($Button6_links))

    [/autoit]

    So funktioniert es und ich weis wofür Parameter da ist. :cursing: :D

    2 Mal editiert, zuletzt von MrB (15. Mai 2010 um 19:43)