為Windows 10 UWP 應用設定代理

zmxyzmxy1234 發表於 2021-03-21

UWP 是微軟在 Windows 10 中引入的新概念,由於所有 UWP 應用均執行在被稱為 App Container 的虛擬沙箱環境中,其安全性及純淨度遠勝於傳統的 EXE 應用。但 App Container 機制同時也阻止了網路流量傳送到本機(即 loopback), 使大部分網路抓包除錯工具無法對 UWP 應用進行流量分析。同樣的,該機制也阻止了 UWP 應用訪問 localhost,即使你在系統設定中啟用了代理,也無法令 UWP 應用訪問本地代理伺服器,十分惱人。

其實 Windows 10 自帶了一款名為 CheckNetIsolation.exe 的命令列工具可以幫助我們將 UWP 及 Windows 8 Metro 應用新增到排除列表,具體步驟如下:

1.通過登錄檔獲取應用的 SID

首先通過 Win + R 快捷鍵開啟「執行」視窗,輸入「Regedit」開啟登錄檔編輯器,然後定位到 HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Mappings,接著在左邊的登錄檔項中找到你想解除網路隔離的應用,右邊的 DisplayName 就是應用名稱,而左邊那一大串字元就是應用的 SID 值了。
為Windows 10 UWP 應用設定代理

2.開啟 CMD 皮膚

在終端中輸入 CheckNetIsolation.exe loopbackexempt -a -p=SID,出現「完成」後就大功告成了。

為Windows 10 UWP 應用設定代理

這時再開啟 UWP 應用視窗,你應該就能愉快的上網了。

為Windows 10 UWP 應用設定代理

3.使用Fiddler配置

如果你覺得這種方法太麻煩,可以在 這裡 下載免費網路除錯工具 Fiddler,然後從頂部選單中選擇「WinConfig」,在接下來開啟的視窗中勾選你想排除網路隔離的應用就可以了。

為Windows 10 UWP 應用設定代理

本作品採用《CC 協議》,轉載必須註明作者和本文連結