Windows 10 Powershell Invoke-WebRequest“Windows安全警告”

好吧,这是我认为微软需要立即解决一个大问题.重现这一步的步骤:

的powershell> Invoke-WebRequest“anywebsitewithcookies.com”(让我们以microsoft.com为例)

会发生什么是您收到以下警告:
http://i.stack.imgur.com/TR023.jpg

在这太可怕了.为什么微软认为这是可以接受的超出我,但在Windows 8.1中有一个解决方法.如果你进入:

控制面板>互联网选项>隐私
http://i.stack.imgur.com/OSLS3.jpg

您可以设置cookie以便始终被接受.这是摆脱此消息并仍保留DOM解析功能的唯一方法. -UseBasicParsing对我来说不是一个解决方案,因为我想使用Invoke-WebRequest返回的功能而无需基本的解析.

但是现在在Windows 10中Microsoft出于某种原因决定摆脱这个滑块:
i.stack.imgur.com/jeNm3.jpg

可以在每台Windows 10计算机上重现此问题,并完全破坏在静脚本环境中如何使用Invoke-WebRequest,因为脚本挂起并等待对话框得到应答.有没有办法让像所有人一样在8.1中设置Cookies?我尝试了Windows 10中的Internet选项中的每个设置,但没有任何关键.我相信他们已停止使用它,或许可能将其转移到别处,但我找不到它. Microsoft Edge也没有很多设置,因此它们都没有帮助.

这只是令人气愤.任何帮助都将受到高度赞赏,因为这将在许多环境中造成相当大的混乱.

解决方法

两个小的补充:Invoke-Webrequest似乎不会重新读取PoSH会话中的注册表设置,因此在更改注册表设置后,关闭PowerShell命令会话并在运行IWR之前重新打开它.

第二个只是两个命令,它们将添加注册表值(第一个)并在之后删除它(第二个),以便您可以将它们放在脚本中.这样,您无需在“接受所有cookie”模式下不断运行IE.

reg add "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /t REG_DWORD /v 1A10 /f /d 0

reg delete "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3" /v 1A10 /f

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...