Tetapkan Internet Explorer sebagai browser default dari baris perintah

10

Apakah mungkin untuk mengatur Internet Explorer sebagai browser default untuk diluncurkan dari baris perintah?

Saya memiliki aplikasi web yang hanya berjalan di bawah Internet Explorer, tetapi jika ternyata Firefox adalah browser default, itu tidak berfungsi. Pengguna berada dalam lingkungan domain dan meskipun saya mencoba meluncurkan aplikasi kami dari kumpulan dengan cara ini:

start "C:\Program Files\Internet Explorer\iexplore.exe" http://server_ip/home_page

aplikasi tidak memulai kecuali saya mengubah browser secara manual.

nick rulez
sumber
4
Saya kira "memperbaiki aplikasi sehingga benar-benar menghormati html yang tepat alih-alih melanggar di bawah setiap browser yang layak" bukan pilihan?
Shadur
1
@ Shadur Ada beberapa bidang di mana masalah dipandang sebagai fitur ..
Joseph Hansen
Mengandalkan perilaku yang rusak khusus untuk satu browser tidak, atau setidaknya tidak boleh, fitur.
Shadur
@ techie007 Saya tidak mengujinya sendiri tetapi Anda dapat memeriksa di sini dan di sini .
avirk
Membuat browser default IE adalah ide yang buruk.
Jet

Jawaban:

10

Perintah ini akan menetapkan IE sebagai browser default:

shmgrate.exe OcinstallreinstallIE

Kebijakan ini harus menghentikan orang menentukan browser default.

jenis slotishtype
sumber
Tidak masalah. Senang itu berhasil untuk Anda.
slotishtype
+1 untuk kebijakan juga.
MDT
Di Windows Vista skema registrasi dirombak. The shmgratealat ini hanya tersedia di Windows 2000 / XP dan Windows Server 2003. Juga, bahwa kebijakan hanya akan mencegah Internet Explorer dari memeriksa apakah set itu sebagai default browser.
and31415
3

Anda dapat mencoba ini, ini akan berhasil

start "" "C:\Program Files\Internet Explorer\iexplore.exe" http://server_ip/home_page

kesalahan dalam perintah Anda adalah bahwa startstring yang dikutip pertama kali akan menjadi judul aplikasi, yang dalam hal ini Anda dapat membiarkannya kosong.

untuk pengaturan iexplorer.exesebagai browser web default sistem, Anda dapat menggunakan assocdan ftypememerintahkan, yang mengaitkan ekstensi dengan tipe file, dan tipe file dengan file yang dapat dieksekusi, seperti:

assoc .html=htmlfile
ftype htmlfile="C:\Program Files\Internet Explorer\iexplore.exe" %1

%1 adalah argumennya di sini - yaitu URL atau file yang dapat Anda kirim ke program sebagai input

mudah
sumber
1
(Hanya) Mengaitkan tipe file HTML yang akan dibuka oleh IE tidak sama dengan mengaturnya menjadi browser default OS.
Ƭᴇcʜιᴇ007
iexplore.exe, bukan iexplorer.exe
InterLinked
1

Windows Vista dan yang lebih baru, IE 7+

Skrip kumpulan berikut mensimulasikan klik Tetapkan program ini sebagai default dari applet panel kontrol Program Default. Diuji dengan Vista / 7 dan IE 7 / IE 11.

@echo off
setlocal enabledelayedexpansion

REM -- check XHTML support (IE 9+)
set xhtml=0
for /f %%G in ('"reg query "HKCR\IE.AssocFile.XHT" /ve 2>&1 | findstr /c:".XHT" "') do set xhtml=1

REM -- reset file extensions
set exts=HTM,HTML
if %xhtml% == 1 (set exts=%exts%,XHT,XHTML)

for %%G in (%exts%) do (
set ext=%%G
set ext=!ext:~0,3!
reg add "HKCU\Software\Classes\.%%G" /ve /t REG_SZ /d "IE.AssocFile.!ext!" /f >nul
)

set exts=%exts%,MHT,MHTML,URL
set acl=%temp%\acl_%random%%random%.txt

for %%G in (%exts%) do (
set key=HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.%%G\UserChoice
echo !key! [1 7 17]>"%acl%"
regini "%acl%" >nul
set ext=%%G
set ext=!ext:~0,3!
reg add "!key!" /v "Progid" /t REG_SZ /d "IE.AssocFile.!ext!" /f >nul
)
del "%acl%" 2>nul

REM -- reset MIME associations
for %%G in (message/rfc822,text/html) do (
set key=HKCU\Software\Microsoft\Windows\Shell\Associations\MIMEAssociations\%%G\UserChoice
reg add "!key!" /v "Progid" /t REG_SZ /d "IE.%%G" /f >nul
)

REM -- reset URL protocols
for %%A in (FTP,HTTP,HTTPS) do (
set key=HKCU\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\%%A\UserChoice
reg add "!key!" /v "Progid" /t REG_SZ /d "IE.%%A" /f >nul
for %%B in (DefaultIcon,shell) do (
set key=HKCU\Software\Classes\%%A
reg delete "!key!\%%B" /f >nul 2>&1
reg copy "HKCR\IE.%%A\%%B" "!key!\%%B" /s /f >nul
reg add "!key!" /v "EditFlags" /t REG_DWORD /d 2 /f >nul
reg add "!key!" /v "URL Protocol" /t REG_SZ /d "" /f >nul
))

REM -- reset the start menu Internet link (Vista and earlier)
reg add "HKCU\Software\Clients\StartMenuInternet" /ve /t REG_SZ /d "IEXPLORE.EXE" /f

REM -- reset cached icons
if %xhtml% == 1 (
ie4uinit -cleariconcache
) else (
taskkill /im explorer.exe /f >nul
start explorer
)

pause
exit /b

Catatan

Aplikasi browser web apa pun dapat mendaftar untuk muncul sebagai klien Internet pada menu Mulai. Visibilitas ini, ditambah dengan registrasi yang tepat untuk file aplikasi dan tipe protokol , memberikan status browser default aplikasi. Browser web default digunakan untuk meluncurkan URL sewenang-wenang dari mana saja di sistem.

Catatan Pendaftaran [tautan menu mulai] yang ada diabaikan di Windows 7 dan yang lebih baru. Pendaftaran ini sudah tidak berlaku pada Windows 7.

Sumber: Cara Mendaftar Peramban Internet atau Klien Email dengan Menu Start Windows

­­

Struktur registri hierarkis untuk asosiasi file dan protokol memberikan prioritas pada standar per pengguna dibandingkan standar tingkat mesin.

Sumber: Program Default

and31415
sumber
Tidak mengatur ulang IE sebagai default untuk saya di Windows 8.1. :(
Ƭᴇcʜιᴇ007
@ techie007 Bagaimana dengan pengaturan Program Default di panel kontrol? Apakah ada yang berubah di sana? Apakah Anda mendapatkan kesalahan saat menjalankan skrip batch?
and31415
Tampaknya berfungsi di bawah Windows 7 (Pro, 64-bit), tetapi di bawah Windows 8 (Pro 32-bit) hanya menunjukkan output (sama / biasa) "Operasi selesai dengan sukses." -- "Tekan tombol apa saja untuk melanjutkan . . ." tetapi tidak benar-benar mengatur IE sebagai default.
Ƭᴇcʜιᴇ007
Di bawah mesin Windows 8 saya yang lain, itu bekerja sedikit lebih baik. Saya menjalankannya, dan lain kali saya membuka tautan http, ia menanyakan browser mana yang ingin saya gunakan. Ini cukup baik bagi saya, karena semua bagian lain (AFAICT) berpikir IE terdaftar sebagai default setelah melakukan itu. Jadi miliki karunia saya. :)
Ƭᴇcʜιᴇ007
@ techie007 Saya benar-benar lupa bahwa Microsoft telah mengubah aturan dan sekarang ada perlindungan anti-perusakan untuk sebagian besar kunci registri tersebut. Jika Anda mau mengujinya, saya dapat mengirimkan kepada Anda versi terbaru dari skrip yang hanya akan menghapus asosiasi di Windows 8 dan kemudian sehingga lain kali Anda membuka tautan atau file html, Windows akan membiarkan Anda memilih yang mana browser yang akan digunakan. Itu mungkin yang terbaik yang dapat Anda capai dengan cara otomatis karena (beberapa) interaksi pengguna tetap diperlukan.
and31415
1

Anda dapat menambahkan di bawah dua baris dalam file bat

reg add "HKCU\Software\Microsoft\Internet Explorer\Main" /f /v "Check_Associations" /d "yes" /t REG_SZ

reg add "HKCU\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice" /f /v "ProgId" /d "IE.HTTP" /t REG_SZ

Setelah menjalankan kelelawar, reboot / log off dan masuk kembali karena di atas dua baris perintah dimaksudkan untuk mengubah nilai registri ..

Detail aditinal dapat ditemukan di sini

(Tetap) -Tidak dapat mengatur Internet Explorer sebagai Browser Default! http://www.windowstechinfo.com/2016/03/fixed-cant-set-internet-explorer-as-the-default-browser.html

Aravinda
sumber
0

Jatuhkan saja startuntuk mendapatkan perintah atau file batch untuk bekerja.

"C:\Program Files\Internet Explorer\iexplore.exe" http://server_ip/home_page
Brian
sumber
1
Kami (yah saya tetap) mencari solusi untuk mengatur browser default dari command-line, tidak hanya untuk memecahkan contoh masalah / alasan dalam OP.
Ƭᴇcʜιᴇ007
-1

Untuk Windows 8 (IE 10+), skrip VBS mudah:

Dim URL 
Dim IE 
Set IE = CreateObject("internetexplorer.application")
URL = "res://ieframe.dll/defaultbrowser.htm" 
IE.Visible = True
IE.Navigate URL


 Do While IE.Busy
    WScript.Sleep 100
 Loop

IE.Document.getElementById("changeDefaultButton").Click

Ini akan memulai halaman IE untuk mengubah IE sebagai default dan mensimulasikan klik tombol untuk menerima.

Blaato
sumber