2012-04-12 2 views
0

Я хочу очистить все файлы kml в файлах временного Интернета. Я пробовал поиск в рекурсивном каталоге, но никаких файлов kml не найдено, хотя вы можете видеть файлы kml при просмотре с помощью Windows Explorer. В фактических каталогах «Временные файлы Интернета», например Content.IE5, для этих файлов kml существуют * .xml-копии. Я также удалил их, но Windows Explorer все еще показывает файлы kml. Я также пробовал некоторые методы WinApi, но я не мог написать код, который я хочу.Очистка * .kml файлов в временных файлах Интернета

ответ

1

Насколько я знаю, временные файлы Интернета обрабатываются аналогично файлам корзины, то есть есть индексный файл с метаданными (например, имена файлов) и файлы, содержащие фактическое содержимое. Возможно, вы сможете использовать GetUrlCacheEntryInfo() для получения информации о файлах, но я не думаю, что есть какой-либо конкретный/простой способ очистить все файлы, за исключением определенного подмножества (без ущерба для файлов кеша, как вы делаете, просто удаляя файлы без обновления мета данных или итерации по всем файлам в кеше).

Редактировать: Я неправильно понял вас (я думаю, вы просто хотите удалить определенный набор файлов, а не все остальное). Если вы хотите удалить только все * .kml файлы, вы могли бы быть в состоянии сделать это:

  • Найти записи кэша с FindFirstUrlCacheEntry и `FindNextUrlCacheEntry).
  • Используйте DeleteUrlCacheEntry, чтобы удалить записи, которые вы нашли.
+0

Спасибо за ваш ответ, я использовал код из [http://social.msdn.microsoft.com/Forums/en/netfxnetcom/thread/b5721e4f-6b58-465e-82eb-629613c7de4a](http://social .msdn.microsoft.com/Форум/ен/netfxnetcom/резьба/b5721e4f-6b58-465e-82eb-629613c7de4a) –

0

Вы пробовали Environment.SpecialFolder.InternetCache путь

 string tempPath = Environment.GetFolderPath(Environment.SpecialFolder.InternetCache); 

     System.IO.DirectoryInfo tempDir = new DirectoryInfo(tempPath); 
     foreach (FileInfo file in tempDir.GetFiles("*.kml")) 
     { 
      file.Delete(); 
     } 

Вы должны также обновить код, чтобы удалить файлы в подкаталогах, а также.

Надеюсь, это поможет.

Смежные вопросы