我已经创建了一个运行一些VBScript的批处理文件,该文件在Windows 7中可以正常运行,但在Windows 10中却不能正常运行。
批处理文件执行以下列出的6件事。在Windows 7上,所有6件事都会发生。在Windows 10上,除项目5之外的所有东西都将发生,并且窗口标题未更改。
这是批处理文件。
<!-- :
@echo off
cscript //nologo "%~f0?.wsf" %*
exit /b
-->
<job>
<script language="VBScript">
Set ie = WScript.CreateObject("InternetExplorer.Application")
'ie properties
ie.ToolBar = 0
ie.StatusBar = 0
ie.Width = 816
ie.Height = 519
ie.Visible = 1
ie.Resizable = 0
'bring window to foreground
CreateObject("WScript.Shell").AppActivate "Internet Explorer"
'navigate to Stony Mountain Lift Station's Multismart
ie.Navigate("http://192.168.0.11/")
'wait for page to load into browser
Wscript.Sleep 1500
'change window title
ie.document.title="Community MultiSmart"
</script>
</job>
答案 0 :(得分:1)
我会再次检查网页是否已完全加载。
更改此行:
Wscript.Sleep 1500
到
While IE.ReadyState < 4
Wscript.Sleep 250
Wend
目前尚不清楚npocmaka's comment是否为
“ ...添加元数据以强制Windows 10上的旧浏览器行为。”是否为您工作。 如果不是,请考虑以下替代方法:
在IE中检查您的安全设置。
警告::此答案提供了可能降低系统安全设置的建议。建议您在继续操作之前充分了解所涉及的风险,并主动采取替代性保护措施。 (或者,只需停止IE☺中的自动化)
IE > Internet Options > Security Tab
脚本显然对任何系统都有危险,这就是为什么保护模式可能会严重限制您可以使用自动化执行的操作。我相信IE直到Windows 8(.1)都不会在IE中默认启用保护模式,但是我没有怀疑的根源。如果是这种情况,这就是为什么它可以在Windows 7而不是Windows 10上运行的原因。
在启用保护模式的情况下,您仍然可以执行简单的操作,但是它受到严格限制。例如,您仍然可以导航到网页,但是IE的许多其他属性和方法均被禁用。
答案 1 :(得分:0)
我正在重新发布npocmaka的评论,以回答我的问题作为答案。
因为它取决于Internet Explorer版本
版本不同。在IE 11.0.966.18920上有效的功能在IE 11.461.16299.0上无效。