IHTMLDocument2_write 导致 Internet Explorer 安全弹出 - Powershell

问题描述

我有一个 Powershell 脚本,可以打开本地保存的 html 文件并解析该文件。当它从创建它的服务器运行时,它工作正常。但是,当我从它需要驻留的服务器运行它时,我不断弹出 IE 安全性。代码是:

$Source = Get-Content -Path $SrcFilePath -raw
$HTML = New-Object -Com "HTMLFile"
$HTML.IHTMLDocument2_write($Source) 
$results = $HTML.all.tags('table') | % OuterHtml

变量 $SrcFilePath 是本地存储 HTML 文件的路径。当它到达线

$HTML.IHTMLDocument2_write($Source) 

出现弹出窗口。

IE Security Pop up

一旦我点击“关闭”,脚本就会恢复。问题是,这个脚本将被自动化,所以当它出现时,没有人会亲自点击“关闭”按钮。

我已尝试在 html 文件的保存位置创建共享并将其添加到 IE 中的受信任站点。我已经更改了安全级别,并且还在 IE 中将 about:security_scriptdriver64.exe 添加到本地 Intranet,但这些都不起作用。有什么想法吗?

详情更新 我运行的服务器是 Windows 2016,IE 版本是 11。

我正在解析的 html 文件保存在本地服务器上,即 E:\temp\webpage.html

当我创建共享并将其添加到受信任的站点时(我尝试使用 NetBIOS 和 FQDN),未选中“需要服务器验证”选项。

我还尝试将 about:security_scriptdriver64.exe 添加到受信任站点

我还通过服务器管理器为管理员用户关闭了“IE 增强安全配置”,但这不起作用。

更新 2 我在上次评论中提到我已将 about:security_scriptdriver64.exe 放入受信任站点,经过测试,但没有奏效。我开始研究使用 Invoke-WebRequest 并尝试使用它。有问题,所以我想我会回到 IHTMLDocument2_write 解决方案。我想我会使用一个简单的 html 文件来开始,因为我有一张表格,一行和一列。我的计划是慢慢开始将原始 html 文件中的标签添加到准系统中。当我想我会再试一次时,我就更新了标题标签。成功了。

我从可信站点删除了 about:security_scriptdriver64.exe 并再次尝试。它仍然有效。我离开了它,一切正常,所以回到绘图板。

我再次开始,将 about 行添加到 Trusted Sites。没有工作,所以再次开始使用准系统 HTML。文件中有一段 JavaScript。当我将它添加到准系统文件时,它不起作用。当我删除它时,它起作用了。所以,它是 JavaScript。我仍然不明白为什么它上周开始工作。 HTML 文件总是用那个 JavaScript 块生成。 SMH。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)