win7系统C++读取浏览器网页缓存

因为浏览器网页缓存文件的特殊性,用程序读取缓存内容要颇费些周折。

个人因为项目需要,要有个读取浏览器缓存的功能,在网上找了一下,有个例程。方向方法是对的。但是语焉不详,给出的说明很不清晰。

让我Try个好苦,不过最终还是Try出来了。在此分享给大家。

前提需要include名为Wininet.h头文件,然后#pragma comment(lib,"Wininet.lib").

int _tmain(int argc, _TCHAR* argv[])
{
	wchar_t* IMG_PATH = _T("http://news.ifeng.com/a/20141011/42173581_0.shtml");
	wchar_t* OUT_PATH = _T("E:\\out.txt");
	DWORD dwEntrySize = 0;
	LPINTERNET_CACHE_ENTRY_INFO lpCacheEntry;
	if (!GetUrlCacheEntryInfo(IMG_PATH, NULL, &dwEntrySize))
	{
		if (GetLastError() != ERROR_INSUFFICIENT_BUFFER)
			return -1;
		else
			lpCacheEntry = (LPINTERNET_CACHE_ENTRY_INFO)new BYTE[dwEntrySize];
		if (GetUrlCacheEntryInfo(IMG_PATH, lpCacheEntry, &dwEntrySize))
		{
			{
				::CopyFile(lpCacheEntry->lpszLocalFileName, 
				OUT_PATH,
				FALSE
				);
			}
		}
		delete lpCacheEntry;
	}
	return 0;
}
注意:IMG_PATH变量是要读取的缓存文件的名称。

找到缓存文件夹右键属性,赋值URL即可

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值