众所周知,国内访问微软的服务有时候快得很,有时候比蜗牛还慢。比如 Windows 商店有时候半天加载不出来,有时候安装个应用半天没反应。还有 OneNote、ToDo 这些微软官方出品的工具,数据同步也是相当的慢。
很多人想直接用梯子,但发现 Win10 应用(比如 Windows 商店)压根就不走系统代理。为什么呢?又怎么解决呢?
微软在 Windows 8 以后就引入了 UWP 应用,UWP 应用存在沙盒机制,正常情况下无法访问 localhost,即无法访问回环地址,这样相对来说确实是比较安全的。
但由于没法接触到系统,有些在系统里面的设置就没法沿用了,譬如网络。UWP 应用没法访问回环地址进而没法通过本机代理上网,比如科学上网。这时候你就需要想办法解除这个限制了。
解决方法主要有两种,手动修改系统配置或者通过工具修改。顾名思义,手动修改显然要比工具修改麻烦,如果你不是作为发软件开发者使用,请直接看“工具修改”。
手动修改手动修改需要使用到命令。操作方法是:输入 CheckNetIsolation 命令,然后输入 UWP 的 SID,就可以解除网络限制。SID 可查询注册表 HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Mappings 获取到。这个过程比较麻烦,而且如果要改回来也麻烦。如果你是 UWP 应用开发者,你的应用需要访问本机代理,可以使用此方法。
工具修改目前我在网找到的修改工具有两个,它们可以可视化地解除对应 Windows UWP 应用的本地访问限制。
一个是 Windows Loopback Exemption Manager,它是开源的,GitHub 地址为:
https://github.com/tiagonmas/Windows-Loopback-Exemption-Manager
这个没有提供发布的 exe 文件,需要自己 Clone 下来编译运行。不建议使用这个。
另一个工具是 Fiddler 的一个插件,叫 EnableLoopback Utility。如果你已经安装了 Fiddler 工具,可以在 Tools 菜单找到:
也可以单独下载这个插件,只有不到 100k 的大小,下载后直接运行(不需要安装 Fiddler)。下载地址:
https://545c.com/f/15677019-488891864-06a9ef
EnableLoopback Utility 的使用方法很简单,找到需要联网的 UWP 应用,勾选前面的框框,再点击 Save Changes 就行了。
解除限制以后,UWP 应用的网络请求会被发送到代理软件上,这样就可以畅快的上网了。