signed int __cdecl sub_475790(_BYTE *a1)
{
signed int result; // eax
DWORD v2; // [esp+10h] [ebp-10h]
HANDLE hEnumHandle; // [esp+14h] [ebp-Ch]
DWORD dwFirstCacheEntryInfoBufferSize; // [esp+18h] [ebp-8h]
LPINTERNET_CACHE_ENTRY_INFOA lpFirstCacheEntryInfo; // [esp+1Ch] [ebp-4h] dwFirstCacheEntryInfoBufferSize = ;
lpFirstCacheEntryInfo = (LPINTERNET_CACHE_ENTRY_INFOA)operator new[](0x1000u);
lpFirstCacheEntryInfo->dwStructSize = ;
hEnumHandle = FindFirstUrlCacheEntryA(, lpFirstCacheEntryInfo, &dwFirstCacheEntryInfoBufferSize);
if ( hEnumHandle )
{
if ( !(lpFirstCacheEntryInfo->CacheEntryType & 0x100000) )
DeleteUrlCacheEntry(lpFirstCacheEntryInfo->lpszSourceUrlName);
goto LABEL_12;
}
if ( GetLastError() != )
{
FindCloseUrlCache();
return ;
}
lpFirstCacheEntryInfo = (LPINTERNET_CACHE_ENTRY_INFOA)operator new[](dwFirstCacheEntryInfoBufferSize);
lpFirstCacheEntryInfo->dwStructSize = dwFirstCacheEntryInfoBufferSize;
hEnumHandle = FindFirstUrlCacheEntryA(, lpFirstCacheEntryInfo, &dwFirstCacheEntryInfoBufferSize);
if ( !hEnumHandle )
return ;
if ( !(lpFirstCacheEntryInfo->CacheEntryType & 0x100000) )
DeleteUrlCacheEntry(lpFirstCacheEntryInfo->lpszSourceUrlName);
LABEL_12:
while ( FindNextUrlCacheEntryA(hEnumHandle, lpFirstCacheEntryInfo, &dwFirstCacheEntryInfoBufferSize) )
{
if ( !(lpFirstCacheEntryInfo->CacheEntryType & 0x100000) )
DeleteUrlCacheEntry(lpFirstCacheEntryInfo->lpszSourceUrlName);
LABEL_25:
if ( *a1 )
return ;
}
v2 = GetLastError();
if ( v2 == )
{
lpFirstCacheEntryInfo = (LPINTERNET_CACHE_ENTRY_INFOA)operator new[](dwFirstCacheEntryInfoBufferSize);
lpFirstCacheEntryInfo->dwStructSize = dwFirstCacheEntryInfoBufferSize;
if ( !FindNextUrlCacheEntryA(hEnumHandle, lpFirstCacheEntryInfo, &dwFirstCacheEntryInfoBufferSize) )
{
FindCloseUrlCache(hEnumHandle);
return ;
}
if ( !(lpFirstCacheEntryInfo->CacheEntryType & 0x100000) )
DeleteUrlCacheEntry(lpFirstCacheEntryInfo->lpszSourceUrlName);
goto LABEL_25;
}
if ( v2 == )
{
FindCloseUrlCache(hEnumHandle);
result = ;
}
else
{
FindCloseUrlCache(hEnumHandle);
result = ;
}
return result;
}

IE历史纪录的更多相关文章

  1. Xamarin.Android之转换,呼叫,查看历史纪录

    Xamarin.Android之转换,呼叫,查看历史纪录 E文文章. 功能:能将输入的字母转换成相应的数字.并且能呼叫出去.能查看呼叫的历史纪录. 界面代码如下: <?xml version=& ...

  2. 移动端与pc端如何用localStorage实现历史纪录?

    1.使用jq完成localStorage实现历史纪录版. 代码如下: <!DOCTYPE html> <html> <head lang="en"&g ...

  3. PHP记录商品历史纪录

    /* 记录浏览历史 */ if (!empty($_COOKIE['history'])) { if(stripos($_COOKIE['history'].',',$goods_id.',')=== ...

  4. Cookie案例-显示商品浏览历史纪录

    package cn.itcast.cookie; import java.io.IOException; import java.io.PrintWriter; import java.util.D ...

  5. 历史命令:history

    [root@linux ~]# history [n][root@linux ~]# history [-c][root@linux ~]# history [-raw] histfiles参数:n ...

  6. linux下history命令显示历史指令记录的使用方法

    Linux系统当你在shell(控制台)中输入并执行命令时,shell会自动把你的命令记录到历史列表中,一般保存在用户目录下的.bash_history文件中.默认保存1000条,你也可以更改这个值 ...

  7. Linux学习之十二、命令别名与历史命令

    命令别名配置: alias, unalias 那么需要下达『 ls -al | more 』这个命令,我是觉得很烦啦! 要输入好几个单字!那可不可以使用 lm 来简化呢?当然可以,你可以在命令行下面下 ...

  8. linux删除历史操作命令

    有时候在系统中做了任何操作,但不想被别人知道,毕竟系统别人都可以登入查看,那怎么把自己操作系统的历史命令删除而不让别人知晓呢? 在linux系统里一旦操作了任何命令,都会被记录下来,可以通过histo ...

  9. 鸟哥的私房菜:Bash shell(三)-命令别名与历史指令

    一  命令别名设定: alias, unalias 命令别名是一个很有趣的东西,特别是你的惯用指令特别长的时候!还有, 增设预设的属性在一些惯用的指令上面,可以预防一些不小心误杀档案的情况发生的时候! ...

随机推荐

  1. 批量定时任务将rtf文件转为docx,入参是rtf文件夹,生成一个docx文件夹

    java,python等语言对于rft的处理很受限,rtf提供了很少的api供外部调用处理,但是对于docx我们却又很多api来处理,所以很多人会有需求将rtf批量转为docx的需求,接下来就来说说解 ...

  2. The Constructor with No Arguments

    If a class supplies at least one constructor but does not supply a no-argument constructor, it is il ...

  3. 【leetcode】1017. Convert to Base -2

    题目如下: Given a number N, return a string consisting of "0"s and "1"s that represe ...

  4. 十条服务器端优化Web性能的技巧

    服务器  远程桌面连接工具 提高web应用的性能从来没有比现在更重要过.网络经济的比重一直在增长;全球经济超过5%的价值是在因特网上产生的(数据参见下面的资料).这个时刻在线的超连接世界意味着用户对其 ...

  5. 【CF1210C】Kamil and Making a Stream(vector,数论,树)

    题意:给定一棵n个点带点权的树,i号点的点定义f(i,j)为i到j路径上所有点的gcd,其中i是j的一个祖先,求所有f(i,j)之和mod1e9+7 2<=n<=1e5,0<=a[i ...

  6. http_load(基于linux平台的一种性能测试工具)

    http_load  是运行在linux操作系统上的命令行测试工具, 用来对网站做压力测试.http_load以并行复用的方式运行,用以测试web服务器的吞吐量和负载.但是它不同于大多数压力测试工具, ...

  7. python中常用得字符串,列表函数汇总

    字符串函数: 1,replace函数,替换函数.s = s.replace(old,new),老得元素被新的元素替换.注意不能直接写s.replace(old,new).要写s=s.replace(o ...

  8. 20175120彭宇辰 《Java程序设计》第十周学习总结

    教材内容总结 十二章 Java多线程机制 一.进程与线程.操作系统与进程 -线程不是进程,是比进程更小的执行单位.但与进程不同的是,线程的中断和恢复可以更加节省系统的开销. -线程可以共享进程中的某些 ...

  9. LintCode之合并排序数组

    题目描述: 我的代码: public class Solution { /* * @param A: sorted integer array A * @param B: sorted integer ...

  10. jmeter添加自定义扩展函数之DoubleSum

    1,打开eclipse,新建maven工程,在pom中引用jmeter核心jar包,具体请看---https://www.cnblogs.com/guanyf/p/10863033.html---,这 ...