允许微软应用商店使用本地代理

UWP 应用默认不允许访问本地 localhost 地址。微软应用商店也属于 UWP 应用,如果 Windows 开启了系统代理,且代理服务器是地址是 localhost 的话,微软应用商店就无法联网。而每次启动微软应用商店就要关闭系统代理会非常麻烦。

通过下面的命令可以允许微软应用商店访问本地代理:

powershellCheckNetIsolation LoopbackExempt -a -n="microsoft.windowsstore_8wekyb3d8bbwe"

命令 CheckNetIsolation LoopbackExempt 的完整使用方法如下:

用法:
   CheckNetIsolation LoopbackExempt [operation] [-n=] [-p=]
      操作列表:
          -a  -  向环回免除列表中添加 AppContainer 或程序包系列。
          -d  -  从环回免除列表中删除 AppContainer 或程序包系列。
          -c  -  清除环回免除的 AppContainer 和程序包系列的列表。
          -s  -  显示环回免除的 AppContainer 和程序包系列的列表。

      参数列表:
          -n= - AppContainer 名称或程序包系列名称。
          -p= - AppContainer 或程序包系列安全标识符(SID)。
          -?  - 显示 LoopbackExempt 模块的此帮助消息。

同样的方法,也可以让其他 UMP 应用访问 localhost 地址。可以在注册表分支 HKEY_CURRENT_USER\SOFTWARE\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Mappings 下找到 UWP 应用的 SID 和包名称。比如,微软应用商店的 SID 是 S-1-15-2-1609473798-1231923017-684268153-4268514328-882773646-2760585773-1760938157,而它的包名称则是分支下,名为 Moniker 键的值,即 microsoft.windowsstore_8wekyb3d8bbwe

前文的命令等于等价于:

powershellCheckNetIsolation LoopbackExempt -a -p=S-1-15-2-1609473798-1231923017-684268153-4268514328-882773646-2760585773-1760938157