解決方案
Start-Process powershell -Verb runAs
Remove-Item msedge.VisualElementsManifest.xml -Force
Set-Clipboard -Value 'cd "C:\Program Files (x86)\Microsoft\Edge\Application"
Remove-Item msedge.VisualElementsManifest.xml -Force
Copy-Item "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" "C:\Program Files (x86)\Microsoft\Edge\Application\chrome.exe" -Force
.\chrome.exe --disable-features=RenderCodeIntegrity'
- 將以上代碼保存為 edge.ps1, 放在
e:\my_bin
目錄下,這個目錄是我用來存放可以直接在 cmd 中運行的命令的。 因此必須將e:\my_bin
添加到系統path
中。 - 隨意打開一個powershell。 比如 win+R 打開運行, 輸入powershell。 圖1
- 在 Powershell 窗口中輸入
edge
回車。這是會要管理員權限,點是。 圖2 - 此時會彈出一個新的powershell,但是是帶有管理員身份的。標題是:
管理員 Windows Powershell
- 在這個 新的 Powershell 窗口右擊。(因為此時你的剪貼已經被覆蓋為代碼了),然后回車。
- 可能(而且一定)會有錯誤的紅字,但是最后一句話一定是:
.\chrome.exe --disable-features=RenderCodeIntegrity
,見圖3 - 回車。edge就能用了。
圖1 :
圖2 :
圖3:
問題
下載個瀏覽器容易么。 https://www.microsoft.com/zh-cn/edge?form=MY01BV&OCID=MY01BV
一打開居然是這樣:
找了許多方法,試了很多次,終於解決了,以下各種方法基本都可用。但是注意在行動之前——————
- 一定要關閉所有基於chromium的瀏覽器!
- 一定要關閉所有基於chromium的瀏覽器!
- 一定要關閉所有基於chromium的瀏覽器!
- 一定要關閉所有基於chromium的瀏覽器!
- 一定要關閉所有基於chromium的瀏覽器!
- 一定要關閉所有基於chromium的瀏覽器!
- 一定要關閉所有基於chromium的瀏覽器!
- 一定要關閉所有基於chromium的瀏覽器!
包括edge, chrome, 或者國產套殼瀏覽器。
不僅僅是桌面應用,有時關閉了可見桌面應用也會有后台應用,此時打開任務管理器: ctrl+shift_esc
看到chrome, chromium, edge 把他們統統統統統統殺光光。
方法1:改注冊表
- Win+R打開運行對話框
- 輸入 regedit 打開注冊表並且導航到:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge
- 在右邊窗口中,右鍵單擊新建>DWORD(32位)值,雙擊創建的新值,然后將新值名稱改為 RendererCodeIntegrityEnabled 並將值數據輸入為 0(默認創建的也為0)
- 重啟Edge
方法2:修改可執行文件名
找到 Edge 的安裝位置,一般在 C:\Program Files (x86)\Microsoft\Edge\Application\
這個目錄,把 edge.exe
或 msedge.exe
修改為 chrome.exe
再啟動。
此時桌面上快捷方式可能不再可用,再發送到桌面一個快捷方式即可。
方法3:--disable-features=RendererCodeIntegrity
打開 powershell 或 cmd, 切到安裝目錄(一般是在 C:\Program Files (x86)\Microsoft\Edge\Application\
),輸入 .\msedge.exe --disable-features=RendererCodeIntegrity
啟動 edge
這樣啟動就可以正常運行啦。但每次這樣運行可能比較麻煩,可以 建立一個 edge.ps1
的腳本程序:
start-process -FilePath "C:\Program Files (x86)\Microsoft\Edge\Application\chrome" -ArgumentList "--disable-features=RenderCodeIntegrity"
這樣每次運行這個腳本就可以。可以將這個腳本所在的文件夾添加到Path,這樣每次用 powershell 運行很方便。
注意初次使用powershell運行腳本可能會有權限問題。使用
Get-ExecutionPolicy
查看策略。詳見: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_execution_policies?view=powershell-7
參考資料:
- https://answers.microsoft.com/zh-hans/microsoftedge/forum/all/想嘗試下edge下/265e4ad2-a03a-405f-b2b1-f9a24324af47
- https://textslashplain.com/2019/09/27/aw-snap-every-tab-crashes/
2020年6月19日更新
以下是我的最新實踐。
當前版本是 83.0.478.45 ,Win10企業版,直接打開,依然無法打開任何網頁(甚至是本地離線網頁)。
首先打開Edge的位置,在開始菜單右擊 -> 更多 -> 打開文件位置。
此時只是打開了快捷方式所在的位置,再次在圖標上右擊 -> 打開文件所在的位置
就到了這個文件夾: C:\Program Files (x86)\Microsoft\Edge\Application, edge就是 msedge.exe,此時我們就已經得到了所有想要拿到的東西了。
win+R
,輸入 cmd 打開命令行。 或者輸入 powershell, 打開 powershell- 輸入以下命令:
cd "C:\Program Files (x86)\Microsoft\Edge\Application"
,切到 msedge.exe 所在的文件夾 - 再輸入以下命令:
./msedge.exe --disable-features=RenderCodeIntegrity
,啟動 Edge
此時就可以正常打開edge了。部分情形下可能會有失效的情況,一般都是chrome瀏覽器或者chromium瀏覽器沒有關閉,或者有后台應用。
但是每次都輸入這兩個命令比較麻煩,可以打開一個記事本,輸入以上兩條命令,命名為 fake_edge.cmd,保存在桌面。