楼主你是否要作一个清除IE缓存? Temporary Internet Files文件夹下有至少一个系统属性的文件夹Content.IE5,这里面还数个系统属性的文件夹,实际的Temporary Internet Files下的缓存文件都是分布在这些二级子文件内的,你试试把...\Local Settings\Temporary Internet Files改为其中一个子文件夹...\Local Settings\Temporary Internet Files\Content.IE5\1JRJ9DSE,就可以找到其中一部分文件了。但是Temporary Internet Files下系统属性文件夹名的规律和数量我没搞明白。如果能查到它们的名字和数量就可以实现你的目的了。
楼上wangxuejun(计算机低手) Content.IE5目录及子目录内的所有文件我已经找到了,问题是 Temporary Internet Files目录的文件找不到. 我试过删除Content.IE5目录及子目录内的所有文件,删除后Temporary Internet Files目录的文件看不到了,查看Temporary Internet Files目录属性也只有1M多,好象是没有了,但用WINDOWS的查找还是可以找到一千多个文件,这说明这个目录内的文件并没有自动清除!它仍然占用硬盘空间.
Temporary Internet Files下一级子目录的名字与IE版有关,内容可以从注册表的:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Cache\Paths 这一位置取得。现在假设你已通过注册表取出这个一级系统子目录名为Content.IE5,下面代码直接使用之,(窗体上放置一个按钮一个列表框LIST1),以下代码进行二个循环嵌套将找到的文件放入列表框Private Sub Command1_Click() Dim totbyte As Currency, p As String, currentpath As String Dim sFileName As String, sFileName1 As String currentpath = "I:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\Content.IE5\" sFileName = Dir(currentpath, 1 + 2 + 4 + 8 + 16 + 32) Do While sFileName <> "" If sFileName <> "." And sFileName <> ".." And sFileName <> "操作题" Then If GetAttr(currentpath & sFileName) = 4 + 16 Then '找到一个系统级二级子目录 If InStr(p, sFileName & "|") = 0 Then '用|符号来分隔取得的系统级二级子目录名 p = p & sFileName & "|" sFileName1 = Dir(currentpath & sFileName & "\", 1 + 2 + 8 + 32) '只取文件 Do While sFileName1 <> "" If sFileName1 <> "." And sFileName1 <> ".." Then List1.AddItem sFileName1 End If sFileName1 = Dir If sFileName1 = "" Then Exit Do Loop sFileName = Dir(currentpath, 1 + 2 + 4 + 8 + 16 + 32) Else sFileName = Dir End If Else List1.AddItem sFileName sFileName = Dir End If Else sFileName = Dir End If Loop End Sub用这个方法我找到了7000多个文件。不过以上方法原理上是否正确我不保证,仅提供一个个人的考虑方法。 ------------------------------------------------------------
wangxuejun(计算机低手) 你的代码仍然是在找\Content.IE5目录,这个目录有几千个文件很正常! Content.IE5的上一级目录Temporary Internet Files内的几千个文件还是没找到.
我在DOS下看Temporary Internet Files这个目录,只有一个Content.IE5目录和一个desktop.ini文件,如果在98系统下的这个目录也是这样,我怀疑在Temporary Internet Files目录下只有Content.IE5目录,根本就没有实际的文件!
Temporary Internet Files根目录下基本没有文件,文件都在下面的各个子目录中,你把所有子目录中的文件都删除了(当然有个别正在使用的文件删除不了),这个总文件夹内当然不会找到文件了,这点我确实有点晕。我用的是2000,和XP都是NT核心,应该不会有太大差别,我也试着把Temporary Internet Files目录下全部子目录中可以删除的文件都删除了,最后看Temporary Internet Files的属性只有几M了,在Temporary Internet Files文件夹在击右键选择查找全部文件,也只有非常少的几M了,你是如何查找删除后还存在的?对了,与不同用户登录是否有关系?你删除的是特写用户的缓存内容而查找的是所有用户的?可这好像又不可能,WINDOWS的缓存所有用户都应该是公用这个Temporary Internet Files文件夹的。
我的Temporary Internet Files根目录下有一千多个文件,用IE的删除临时文件后,这个目录的文件没有了.但一上网又出来几百个XP的缓存,所有用户并不是公用同一个Temporary Internet Files文件夹
是这样呀。我的Temporary Internet Files根目录下有一千多个文件,用IE的删除临时文件后,这个目录的文件没有了.但一上网又出来几百个这你认为不正常吗?这文件夹当然就是IE的缓存文件所在位置呀,文件夹又叫临时文件夹,你打开IE上网就会把文件先下载到这里再显示,这里有几千个文件是完全正常的,要是太多了是要手工从IE工具中或手工进行删除的,它的总体积如果超过20M应该处理一下,对不起你肯定知道我废话了。
推荐使用 IrfanView 软件查看该目录下的文件。
一个猜测,各位看看有没有道理:Temporary Internet Files文件夹下根本没有实际的文件,我们看到的文件可能只是其几个子文件夹中的文件名的“映射”
楼上说的确实是这么回事,所以不能只用...Temporary Internet Files去找,要找到它下面的系统子文件夹,这可以从注册表中取得。
Temporary Internet Files文件夹下有至少一个系统属性的文件夹Content.IE5,这里面还数个系统属性的文件夹,实际的Temporary Internet Files下的缓存文件都是分布在这些二级子文件内的,你试试把...\Local Settings\Temporary Internet Files改为其中一个子文件夹...\Local Settings\Temporary Internet Files\Content.IE5\1JRJ9DSE,就可以找到其中一部分文件了。但是Temporary Internet Files下系统属性文件夹名的规律和数量我没搞明白。如果能查到它们的名字和数量就可以实现你的目的了。
Content.IE5目录及子目录内的所有文件我已经找到了,问题是
Temporary Internet Files目录的文件找不到.
我试过删除Content.IE5目录及子目录内的所有文件,删除后Temporary Internet Files目录的文件看不到了,查看Temporary Internet Files目录属性也只有1M多,好象是没有了,但用WINDOWS的查找还是可以找到一千多个文件,这说明这个目录内的文件并没有自动清除!它仍然占用硬盘空间.
这一位置取得。现在假设你已通过注册表取出这个一级系统子目录名为Content.IE5,下面代码直接使用之,(窗体上放置一个按钮一个列表框LIST1),以下代码进行二个循环嵌套将找到的文件放入列表框Private Sub Command1_Click()
Dim totbyte As Currency, p As String, currentpath As String
Dim sFileName As String, sFileName1 As String
currentpath = "I:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files\Content.IE5\"
sFileName = Dir(currentpath, 1 + 2 + 4 + 8 + 16 + 32)
Do While sFileName <> ""
If sFileName <> "." And sFileName <> ".." And sFileName <> "操作题" Then
If GetAttr(currentpath & sFileName) = 4 + 16 Then '找到一个系统级二级子目录
If InStr(p, sFileName & "|") = 0 Then '用|符号来分隔取得的系统级二级子目录名
p = p & sFileName & "|"
sFileName1 = Dir(currentpath & sFileName & "\", 1 + 2 + 8 + 32) '只取文件
Do While sFileName1 <> ""
If sFileName1 <> "." And sFileName1 <> ".." Then
List1.AddItem sFileName1
End If
sFileName1 = Dir
If sFileName1 = "" Then Exit Do
Loop
sFileName = Dir(currentpath, 1 + 2 + 4 + 8 + 16 + 32)
Else
sFileName = Dir
End If
Else
List1.AddItem sFileName
sFileName = Dir
End If
Else
sFileName = Dir
End If
Loop
End Sub用这个方法我找到了7000多个文件。不过以上方法原理上是否正确我不保证,仅提供一个个人的考虑方法。
------------------------------------------------------------
你的代码仍然是在找\Content.IE5目录,这个目录有几千个文件很正常!
Content.IE5的上一级目录Temporary Internet Files内的几千个文件还是没找到.
我在DOS下看Temporary Internet Files这个目录,只有一个Content.IE5目录和一个desktop.ini文件,如果在98系统下的这个目录也是这样,我怀疑在Temporary Internet Files目录下只有Content.IE5目录,根本就没有实际的文件!