问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

VB获取IE缓存内指定的URL

发布网友 发布时间:2023-09-23 22:16

我来回答

2个回答

热心网友 时间:2024-11-01 17:36

新建一个项目、添加一个模块。将以下代码写到模块里:

Private Const ERROR_INSUFFICIENT_BUFFER = 122
Private Const eeErrorBase = 26720

Private Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type

Private Type INTERNET_CACHE_ENTRY_INFO
dwStructSize As Long
lpszSourceUrlName As String
lpszLocalFileName As String
CacheEntryType As String
dwUseCount As Long
dwHitRate As Long
dwSizeLow As Long
dwSizeHigh As Long
LastModifiedTime As FILETIME
ExpireTIme As FILETIME
LastAccessTime As FILETIME
LastSyncTime As FILETIME
lpHeaderInfo As Long
dwHeaderInfoSize As Long
lpszFileExtension As String
dwReserved As Long
End Type

Private Declare Function GetUrlCacheEntryInfo Lib "wininet.dll" _
Alias "GetUrlCacheEntryInfoA" (ByVal sUrlName As String, _
lpCacheEntryInfo As Any, lpdwCacheEntryInfoBufferSize _
As Long) As Long

'用来报告API产生的错误:
Private Const FORMAT_MESSAGE_ALLOCATE_BUFFER = &H100
Private Const FORMAT_MESSAGE_ARGUMENT_ARRAY = &H2000
Private Const FORMAT_MESSAGE_FROM_HMODULE = &H800
Private Const FORMAT_MESSAGE_FROM_STRING = &H400
Private Const FORMAT_MESSAGE_FROM_SYSTEM = &H1000
Private Const FORMAT_MESSAGE_IGNORE_INSERTS = &H200
Private Const FORMAT_MESSAGE_MAX_WIDTH_MASK = &HFF
Private Declare Function FormatMessage Lib "kernel32" Alias _
"FormatMessageA" (ByVal dwFlags As Long, lpSource As Any, _
ByVal dwMessageId As Long, ByVal dwLanguageId As Long, _
ByVal lpBuffer As String, ByVal nSize As Long, Arguments _
As Long) As Long

Public Function WinAPIError(ByVal lLastDLLError As Long) As String
Dim sBuff As String
Dim lCount As Long

'返回与LastDLLError相关的出错信息:
sBuff = String$(256, 0)
lCount = FormatMessage( _
FORMAT_MESSAGE_FROM_SYSTEM Or FORMAT_MESSAGE_IGNORE_INSERTS, _
0, lLastDLLError, 0&, sBuff, Len(sBuff), ByVal 0)
If lCount Then
WinAPIError = Left$(sBuff, lCount)
End If

End Function

Public Function GetCacheEntryInfo(ByVal hWnd As Long, _
ByVal lpszUrl As String) As Boolean

Dim dwEntrySize As Long
Dim lpCacheEntry As INTERNET_CACHE_ENTRY_INFO
Dim dwTemp As Long
Dim lErr As Long

If (GetUrlCacheEntryInfo(lpszUrl, ByVal 0&, dwEntrySize)) = 0 Then
lErr = Err.LastDllError
If (lErr <> ERROR_INSUFFICIENT_BUFFER) Then
'预料外的错误。须要显示出错原因:
Err.Raise eeErrorBase + 1, _
App.EXEName & ".mCacheEntry", WinAPIError(lErr)

GetCacheEntryInfo = False
Exit Function
Else
'这是预料中的错误
GetCacheEntryInfo = True
End If
End If

End Function

在窗体上添加一个Command和一个Text。然后加入这些代码:

Option Explicit

Private Sub Command1_Click()
On Error Goto ErrorHandler
'检查Text中的URL地址是否出现在缓存中:
If (GetCacheEntryInfo(Me.hWnd, Text1.Text)) Then
MsgBox "URL In Cache.", vbInformation
Else
MsgBox "URL Not In Cache.", vbInformation
End If

Exit Sub

ErrorHandler:
MsgBox "URL Not in Cache [" & Err.Description & "]",vbInformation

End Sub
你参考一下吧追问汗,这个是搜索完整的URL是否存在IE缓存中的代码,网上到处都是。
只能确认文件是否存在,而且只查询一次,如果有重复的URL不会继续搜索。
而且看问题,前三步我已经做到了。

参考资料:http://www.programfan.com/club/showpost.asp?id=48765&t=o

热心网友 时间:2024-11-01 17:37

787888888888888888888
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
离职几个月公司发短信说我离职生效叫我回去补办离职交接手续怎么 开除员工不办手续违法吗 辞退员工没有办手续违法吗 苹果13/6.1录制两个人脸,后面换锁屏密码认证还有什么提醒,或者是两个人... 很规律很威严的词语是什么 我老了又无能 想有个爱我一辈子的 到今没 就一个人 把爱放心里 用数字... 日语N2 20天复习够吗 为什么泥工先于木工 泥工做好隔多久做木工 从泥工做好到做木工,需要等待多久? 水泥操作人员作业流程是怎样的? 上海耀能紧固件制造有限公司怎么样? IE6浏览器收藏夹中的网站名称后面都有个.url,且无法打开网页了_百度知 ... c#webbrowswer1如何获取弹出IE窗口的URL 花儿乐队的主唱大张伟的详细资料 大张伟毕业于哪所大学 以便的解释 为什么今年合肥地区蚊子比较多?是冬天没有下雪吗 保障信息安全的3大体系是什么? 酶制剂中含量最高的氨基酸 学校里的小卖部都是科研教育用地吗 全合成和半合成机油有什么区别 我的世界国际服怎么下模组? 我军文职干部有没有军衔? 在石塘,听着导航开车时要多加小心 放养土鸡需要应该注意那些问题,还需要喂吗? 社联面试会提问的问题? 有谁知道竞选学生会、社联等组织面试时一般会出什么类型的题目?_百度... 请问研究生买学生票有什么规定吗? 藏祖宗时有白天鹅飞来好吗? 梦见天鹅在空中飞翔是什么意思?做梦梦见天鹅在空中飞翔好不好 ie浏览器下载小说,原来“目标另存为”是能下载rar格式,现在都是thew... 2024上海紧固件专业展时间、地点、免费门票如何领? ...中ie浏览器无法浏览网页提示您所请求的网址(url)无法获取如何解决... 每天中午俩123点钟12点钟黑咖啡好吗 兰州市今年将选址新建汽车北站 榆中兰州融创城在什么位置? 新乡中原融创文旅城什么时候交房? 技嘉B85-HD3-A主板台式机没有声音是怎么回事?重装系统,安装驱动都没... 技嘉b85m没声音 ...主板是技嘉B85M一D3V,后面有声,前面板音频没声音,连线没问题,用鲁大 ... 技嘉z87x-hd3主板后置音源没有声音,前置麦也没声音,怎么解决 纪念中国银行成立一百周年邮票有投资价值吗? 中国银行邮票有升值空间吗 纹身风格简约图案男士 优珍钙片可以跟菠菜一起吃吗? 吃完菠菜后多久才可以吃钙片 苏州市高速核酸落地检查取消了吗 快递不给派送 买家申请全额退款 卖家改该怎么办 如果是因为快递的失误导致买家退款,快递有义务赔偿吗? 求助,买家以快递不送货上们为理由,要求退款,怎么处理