Standardbrowser ändern
Hallo Forenteilnehmer,
ich suche Unterstützung für die Umsetzung von folgendem Anliegen.
- per Powershell den Standardbrowser von Edge auf Internet Explorer ändern
- Betriebssystem Windows 10 Pro
Ich habe im Internet zwar einiges gefunden, aber eben nicht das was ich wollte.
Ich weiss das es den Parameter Start-Process in Powershell gibt, aber ich weiss nicht wie ich es umsetzen könnte.
Über eutre Unterstützunbg wäre ich echt dankbar.
Danke und Grüße
ich suche Unterstützung für die Umsetzung von folgendem Anliegen.
- per Powershell den Standardbrowser von Edge auf Internet Explorer ändern
- Betriebssystem Windows 10 Pro
Ich habe im Internet zwar einiges gefunden, aber eben nicht das was ich wollte.
Ich weiss das es den Parameter Start-Process in Powershell gibt, aber ich weiss nicht wie ich es umsetzen könnte.
Über eutre Unterstützunbg wäre ich echt dankbar.
Danke und Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 466084
Url: https://administrator.de/contentid/466084
Ausgedruckt am: 05.11.2024 um 17:11 Uhr
21 Kommentare
Neuester Kommentar
Zitat von @aqui:
Internet Explorer...?? Nicht dein Ernst oder ? Das wäre heutzutage tödlich mit dem Angriffspotential auf diesen alten und unsupporteten Browser.
Der ist leider aber immer noch weitverbreitet und auch bei Windows 10 dabei.Internet Explorer...?? Nicht dein Ernst oder ? Das wäre heutzutage tödlich mit dem Angriffspotential auf diesen alten und unsupporteten Browser.
Wenn, nimmt man keinen der MS Browser sondern FF oder Chrome.
Nun ja, wenn man Chrome in Unternehmen als Standardbrowser einsetzt, sollte einem schon klar sein, wer oder was Google ist.Meine Empfehlung geht zu Mozillas Firefox. Es gab hierzu in der c't mehrere Artikel dazu, speziell in Bezug EU-DSGVO.
Nur mal nebenbei....
...nur mal so meine Meinung.Gruss Penny.
Moin,
guck mal hier:
https://stackoverflow.com/questions/17536405/cant-set-chrome-as-default- ...
Ansonsten kann ich @aqui nur zustimmen. Wenn MS-Browser, dann eher Edge als IE. Besser FF oder Opera. Chrome würde ich auch nicht unbedingt nehmen.
hth
Erik
guck mal hier:
https://stackoverflow.com/questions/17536405/cant-set-chrome-as-default- ...
Ansonsten kann ich @aqui nur zustimmen. Wenn MS-Browser, dann eher Edge als IE. Besser FF oder Opera. Chrome würde ich auch nicht unbedingt nehmen.
hth
Erik
Moin,
Schauen wir uns mal den Quellcode des Skripts an:
Hier steht {0} in der Zuweisung der Variablen. Das ist eine der genialen Funktionen der PS. Stehen in einer Variablen solche Ausdrücke in geschweiften Klammern, dann kann ich sie mit Hilfe des f-Operators mit den Werten eines Arrays ersetzen. Hier gibt es nur die 0, so dass auch das Array nur ein Element hat.
Und hier wird der Platzhalter {0} mit verschiedenen Werten gefüllt. In der Variablen $regKeyFtp steht also nicht mehr der Pfad mit der {0}, sondern da steht jetzt:
Und das ist der Key, in dem die Zuweisung des Protokolls zur Anwendung steht.
Mehr dazu findest Du hier:
https://ss64.com/ps/syntax-f-operator.html
hth
Erik
Zitat von @newbie1:
Folgender Pfad wurde angegeben: HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\{0}\UserChoice
Was bedeutet: {0}
Folgender Pfad wurde angegeben: HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\{0}\UserChoice
Was bedeutet: {0}
Schauen wir uns mal den Quellcode des Skripts an:
$regKey = "HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\{0}\UserChoice"
Hier steht {0} in der Zuweisung der Variablen. Das ist eine der genialen Funktionen der PS. Stehen in einer Variablen solche Ausdrücke in geschweiften Klammern, dann kann ich sie mit Hilfe des f-Operators mit den Werten eines Arrays ersetzen. Hier gibt es nur die 0, so dass auch das Array nur ein Element hat.
$regKeyFtp = $regKey -f 'ftp'
$regKeyHttp = $regKey -f 'http'
$regKeyHttps = $regKey -f 'https'
Und hier wird der Platzhalter {0} mit verschiedenen Werten gefüllt. In der Variablen $regKeyFtp steht also nicht mehr der Pfad mit der {0}, sondern da steht jetzt:
HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\ftp\UserChoice
Und das ist der Key, in dem die Zuweisung des Protokolls zur Anwendung steht.
Mehr dazu findest Du hier:
https://ss64.com/ps/syntax-f-operator.html
hth
Erik
Zitat von @erikro:
Moin,
guck mal hier:
https://stackoverflow.com/questions/17536405/cant-set-chrome-as-default- ...
Ansonsten kann ich @aqui nur zustimmen. Wenn MS-Browser, dann eher Edge als IE. Besser FF oder Opera. Chrome würde ich auch nicht unbedingt nehmen.
Opera fällt auch flach, weil der basiert auf Chromium. Also auch nicht besser als Chrome. Bleibt somit Firefox übrig.Moin,
guck mal hier:
https://stackoverflow.com/questions/17536405/cant-set-chrome-as-default- ...
Ansonsten kann ich @aqui nur zustimmen. Wenn MS-Browser, dann eher Edge als IE. Besser FF oder Opera. Chrome würde ich auch nicht unbedingt nehmen.
hth
Erik
Gerne
Was ich nicht verstehe, warum er mir die Einträge für http und https nicht in die Registry schreibt.
Poste mal Dein Skript. Antwort gibt es von mir allerdings erst morgen wieder. Ich muss jetzt los.
Moin,
Ich schreibe das mal als Kommentar in Deinen von mir zitierten Code. Damit Du es besser findest, sind die Kommentare in ########## eingeschlossen.
Guck Dir das nochmal an, damit Du switch richtig verstehst:
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell. ...
Liebe Grüße
Erik
Ich schreibe das mal als Kommentar in Deinen von mir zitierten Code. Damit Du es besser findest, sind die Kommentare in ########## eingeschlossen.
Zitat von @newbie1:
> Function ChangeTheDefaultBrowser {
> param($defaultBrowser)
>
> $regKey = "HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\{0}\UserChoice"
> $regKeyHttp = $regKey -f 'http'
> $regKeyHttps = $regKey -f 'https'
>
> switch -Regex ($defaultBrowser.ToLower()) {
>
> # Mozilla Firefox
> # https://www.mozilla.org/
> 'ff|firefox' {
> Write-Output "`nChanging to Firefox as the default browser..."
> Set-ItemProperty -Force -PassThru -Verbose $regKeyHttp -name ProgId FirefoxURL-308046B0AF4A39CB
> Set-ItemProperty -Force -PassThru -Verbose $regKeyHttp -name Hash yWnRoYQTfbs=
> Set-ItemProperty -Force -PassThru -Verbose $regKeyHttps -name ProgId FirefoxURL-308046B0AF4A39CB
> Set-ItemProperty -Force -PassThru -Verbose $regKeyHttps -name Hash IhKJ36zo2D8=
> break
> }
>
> } ########## Hier machst Du die Klammer von switch zu früh zu. ##########
>
> } ########## Hier machst Du die Klammer der Funktion zu früh zu. Damit ist die Funktion ChangeTheDefaultBrowser beendet. ##########
> param($defaultBrowser) ########## Der Param-Block darf nur einmal vorkommen und nur am Anfang des Skripts bzw. der Funktion stehen. Gibt das keine Fehlermeldung? ##########
>
> $regKey = "HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\{0}\UserChoice"
> #$HKLMregKey = "Computador\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Shell\Associations\UrlAssociations\{0}\"
> ########## No se usa idiomas diferentes a ingles en la programación. ;-) ##########
> $regKeyHttp = $regKey -f 'http'
> $regKeyHttps = $regKey -f 'https'
>
> switch -Regex ($defaultBrowser.ToLower()) { ########## Das weg und dafür die Klammer vom ersten Switch erst nach dem letzten Anweisungsblock schließen. ##########
> # Why, Mister Anderson?! Why?! ########## Good question. ;-) ##########
> # Microsoft Edge
> # https://www.microsoft.com/pt-br/windows/microsoft-edge
> ########## Aja, brasileros. ;-) ##########
> 'me|edge' {
> Write-Output "`nChanging back to Edge..."
> Set-ItemProperty -Force -PassThru -Verbose $regKeyHttp -name ProgId AppX90nv6nhay5n6a98fnetv7tpk64pp35es
> Set-ItemProperty -Force -PassThru -Verbose $regKeyHttp -name Hash 1cwyZ2KB040=
> Set-ItemProperty -Force -PassThru -Verbose $regKeyHttps -name ProgId AppX90nv6nhay5n6a98fnetv7tpk64pp35es
> Set-ItemProperty -Force -PassThru -Verbose $regKeyHttps -name Hash kQz/gLoO7oo=
> break
> }
> }
> }
>
> # Uncomment one of the lines below
> ChangeTheDefaultBrowser ff
>
> Write-Host "`n Changes made for the current user"
> # Wait for keypress
> Write-Host "`n Is necessary to restart your computer"
> WaitForKey
> # Restart computer
> Restart
Guck Dir das nochmal an, damit Du switch richtig verstehst:
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell. ...
Liebe Grüße
Erik