Win8及Win10应用代理访问网络(不使用第三方工具)

在使用Win8及Win10应用会发现,如果设置了网络代理,比如pac或者localhost代理服务器,这时候App就会无法访问网络

原因是这些App都是在沙箱虚拟环境中运行,无法访问localhost。所以无法使用代理。

而事实上系统有为这些App提供设置选项,可以使用CheckNetIsolation.exe来修改。

用法如下:

CheckNetIsolation.exe LoopbackExempt -a -n=microsoft.windowscommunicationsapps_xxxxxxxx
Win8及Win10应用代理访问网络(不使用第三方工具)_第1张图片
-n 是包名,在"%USERPROFILE%\AppData\Local\Packages"文件夹中获取

如果批量设置的话有些麻烦,所以写了个vbs脚本,代码如下:

a = msgbox("点击 '是' 使所有WindowsApp可以代理访问网络,"& vbcrlf & vbcrlf &"点击 '否' 清除所有WindowsApp代理访问网络权限!",51,"使WindowsApp获取代理权限")
if a = 2 then wscript.quit
Set ws=WScript.CreateObject("wscript.shell")
if a = 6 then
	w=ws.ExpandEnvironmentStrings("%USERPROFILE%\AppData\Local\Packages")
	Set fso=WScript.CreateObject("scripting.filesystemobject")
	Set fs=fso.GetFolder(w)
	Set f=fs.SubFolders
	Set ff = fso.createtextfile(ws.ExpandEnvironmentStrings("%TEMP%\WindowsAppProxyAccess.bat"))
	For Each uu In f
		ff.WriteLine("CheckNetIsolation.exe LoopbackExempt -a -n=" & uu.name)
	Next
	ff.WriteLine("del %0")
	CreateObject("Shell.Application").ShellExecute ws.ExpandEnvironmentStrings("%TEMP%\WindowsAppProxyAccess.bat"),"","","runas",1
elseif a = 7 then
	CreateObject("Shell.Application").ShellExecute "CheckNetIsolation.exe","LoopbackExempt -c","","runas",1
end if
保存为.vbs文件运行即可,过程中CheckNetIsolation.exe会索取管理员权限。


你可能感兴趣的:(win8,代理,APP,win10)