• ベストアンサー

インターネットキャッシュフォルダについて教えて

IEのインターネットキャッシュフォルダの 「C:\Temporary Internet Files」のようなものなのですが、 普通のフォルダとは性質が違うようで、ファイルの扱い方に困っています。 上記のパスをエクスプローラーで開くと、アクセスしたサイトの オブジェクトが一覧として現れるのですが、 上記のフォルダを指定してDir関数でファイルを表示しようとすると ファイル名が表示されません。 またエクスプローラでそのフォルダにはサブフォルダは表示されないのですが、 「C:\Temporary Internet Files\Content.IE5」と指定してDir関数で 一覧を表示させると、サブフォルダやファイルが見つかります。 「C:\Temporary Internet Files」をエクスプローラで表示した時に現れる一覧をVB.NETのプログラム上で取得して、 エクスプローラーで表示されているような、インターネットアドレス、サイズ、最終アクセス日などを取得したいのですが、 どのような方法でやれば良いでしょうか? 特殊なフォルダのようでどうしたら良いか全く分からない状態です。 検索をしてみたのですが、キャッシュを削除するというのはいくつか 見つかったのですが、それ以外では参考になりそうなものを見つけることができませんでした。 申し訳ございませんが、ご教示頂きたくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

Public Delegate Sub myDelegate(f As System.IO.FileInfo) Class Q3770814A Public Shared Sub Main(args As String()) Dim di As New System.IO.DirectoryInfo(System.Environment.GetFolderPath(System.Environment.SpecialFolder.InternetCache)) Q3770814A.dosomething(di, AddressOf Q3770814A.ShowInfo) System.Console.WriteLine("以上") System.Console.ReadKey(True) End Sub Public Shared Function dosomething(di1 As System.IO.DirectoryInfo, d As myDelegate) As Boolean For Each f As System.IO.FileInfo In di1.GetFiles() d(f) Next For Each di2 As System.IO.DirectoryInfo In di1.GetDirectories() dosomething(di2, d) Next Return True End Function Public Shared Sub ShowInfo(f As System.IO.FileInfo) System.Console.WriteLine(f.FullName & " " & f.Length & "Bytes") End Sub End Class