Очиста файла index.dat Internet Explorer

Тема в разделе "WASM.WIN32", создана пользователем DeRekX, 7 апр 2009.

  1. DeRekX

    DeRekX New Member

    Публикаций:
    0
    Регистрация:
    21 июл 2007
    Сообщения:
    98
    Адрес:
    Russia
    Всем, добрый день.

    Не секрет, что IE сохраняет все посещённые адреса в файлы: cash, cookie, history и т.д.

    Необходимо программно очистить файл index.dat с посещёнными url: "C:\Documents and Settings\<User>\Local Settings\Temporary Internet Files\Content.IE5\index.dat"
    Нужно затереть не все ссылки, а избирательно.

    Без использования драйвера и функций, за которыми следит AV: CreateRemoteThread, WriteProcessMemory, etc.

    index.dat всегда открыт ОС и видимо флажки FILE_SHARE_WRITE и FILE_SHARE_DELETE не выставлены, поэтому изменять в лоб его нельзя.

    Вариантов несколько:
    1. Умудриться всётаки открыть для записи
    2. Каждый перед открытием программно настраивать реестр, чтоб url вообще не сохранялись, после "работы", откатывать реестр назад.
    3. Затирать свои адреса мусорными url, index.dat имеет фиксированный размер ~ 13 мб (теоретически)

    Поделитесь опытом, как сделать так, чтобы index.dat не хранил некоторые ссылки.
     
  2. planet

    planet New Member

    Публикаций:
    0
    Регистрация:
    10 апр 2007
    Сообщения:
    108
    накуя городить весь этот огород, когда есть api для работы с кешем?) COM/API - примеров в гугле - куча.
     
  3. DeRekX

    DeRekX New Member

    Публикаций:
    0
    Регистрация:
    21 июл 2007
    Сообщения:
    98
    Адрес:
    Russia
    planet
    спасибо за ответ.

    Вопрос был как чистить index.dat файлы, а не как чистить кеш. Кеш чистится прекрасно.

    Замечу, что при очистке кеша штатными функциями(DeleteUrlCacheEntry) содержимое файла index.dat не очищается.

    Работающих примеров, позволяющих очищать index.dat, я пока не встретил.
     
  4. planet

    planet New Member

    Публикаций:
    0
    Регистрация:
    10 апр 2007
    Сообщения:
    108
    хм, может он потом очиститься. Но по идее раз DeleteUrlCacheEntry вызвал, то пох что там в файле висит, IE про это не узнает.
    Еще один вариант, путь к файлу с кешем есть в реестре, попробуй поменять на другой, тогда старый index.dat - освободиться.
     
  5. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    DeRekX
    После очистки кеша нужно перезагрузиться.
     
  6. barton

    barton New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2008
    Сообщения:
    164
    Адрес:
    Czechoslovakia
    Чистить надо не index.dat, а папки с кешом рядом с ним. После запуска ИЕ движек кеша сам очистит этот файл.