ClearMyTracksByProcess,不带对话框| WinHttp.WinHttpRequest.5.1 | MSXML2.XMLHTTP

问题描述 投票:1回答:1

我有一个运行CreateObject("MSXML2.XMLHTTP").Open "GET"的VBS,但是,我需要先删除IE11缓存,因为它会不断提取网站的缓存版本,该版本在初始获取后1分钟内不会过期。如果我使用RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8,则会显示一个对话框,该对话框会分散注意力并吸引焦点。

myURL = "https://localhost/"

Set ohtmlFile = CreateObject("htmlfile")

Set oXMLHttp = CreateObject("MSXML2.XMLHTTP")
oXMLHttp.Open "GET", myURL , False
oXMLHttp.setRequestHeader "Cache-Control", "no-cache"
oXMLHttp.send

If oXMLHttp.Status = 200 Then

    ohtmlFile.Write oXMLHttp.responseText
    ohtmlFile.Close

不更改文件缓存,仍然在初始拉动后一分钟到期。

++++++++++++++++++++++++++++++++++++++++ >>

myURL = "https://localhost/"

Set ohtmlFile = CreateObject("htmlfile")

Set oXMLHttp = CreateObject("WinHttp.WinHttpRequest.5.1")
oXMLHttp.Open "GET", myURL , False
oXMLHttp.setRequestHeader "Cache-Control", "no-cache"
oXMLHttp.send

If oXMLHttp.Status = 200 Then

    ohtmlFile.Write oXMLHttp.responseText
    ohtmlFile.Close

oXMLHttp.responseText不返回任何内容

++++++++++++++++++++++++++++++++++++++++

CreateObject("WScript.Shell").Run "scripts\exe\PsExec64.exe -accepteula -nobanner -realtime -d RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8", 0, True

CreateObject("WScript.Shell").Run "scripts\exe\PsExec64.exe -accepteula -nobanner -realtime -d RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 264", 0, True

两者仍然随机显示一个弹出对话框。

我有一个运行CreateObject(“ MSXML2.XMLHTTP”)的VBS。打开“ GET”,但是,我需要先删除IE11缓存,因为它会不断提取不会过期的网站的缓存版本...

vbscript internet-explorer-11 winhttp winhttprequest ie11-developer-tools
1个回答
0
投票

为了避免获得缓存的响应,可以改用ServerXmlHttpRequest对象并设置Cache-Control标头:

© www.soinside.com 2019 - 2024. All rights reserved.