【问题标题】:Internet Explorer automation not working in Windows 8 [closed]Internet Explorer 自动化在 Windows 8 中不起作用 [关闭]
【发布时间】:2014-06-14 19:42:25
【问题描述】:
#include <IE.au3>
Local $oIE = _IECreate("http://google.com")
_IELoadWait($oIE)
While 1
_IENavigate($oIE, "http://mywebsite")
_IELoadWait($oIE)
_IELinkClickByText($oIE, "1oZMQ2E")
sleep(600)
WEnd

此脚本在 Windows XP 和 7 中进行无限循环,没有任何问题。

但在 Windows 8.1 和 8 中它不起作用。仅打开页面并保留在那里。没有循环。我尝试了其他脚本,但同样的事情发生了。我很困惑。

【问题讨论】:

    标签: windows internet-explorer autoit


    【解决方案1】:

    使用 _IECreateEmbedded 将使 IE 在兼容模式 (IE8) 下工作。

    如果这就是您现在需要的,您可以运行此代码一次,然后所有 IE 实例将在兼容模式下运行。

    #RequireAdmin
        $64Bit = ""
        If @OSArch = "X64" Then
            $64Bit = "64"
        EndIf
    If StringLeft(RegRead("HKLM" & $64Bit & "\SOFTWARE\Microsoft\Internet Explorer\Version Vector", "IE"), 1) > 8 Then ;Check for version 9 or later
    
    
      $wshNetwork = ObjCreate("WScript.Network")
      $struser = $wshNetwork.Username
      $objWMIService = ObjGet("winmgmts:\\.\root\cimv2")
      $objAccount = $objWMIService.Get('Win32_UserAccount.Name="' & $struser & '",Domain="' & @ComputerName & '"')
      RegWrite("HKU" & $64Bit & "\" & $objAccount.SID & "\Software\Microsoft\Internet Explorer\BrowserEmulation\", "AllSitesCompatibilityMode", "REG_DWORD", 1)
      RegWrite("HKU\" & $objAccount.SID & "\Software\Microsoft\Internet Explorer\BrowserEmulation\", "AllSitesCompatibilityMode", "REG_DWORD", 1)
    EndIf
    

    【讨论】:

      猜你喜欢
      • 2012-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-19
      • 2014-05-21
      • 2014-08-15
      • 2012-07-24
      相关资源
      最近更新 更多