WinInet и кеширование

Тема в разделе "WASM.WIN32", создана пользователем JamesB, 21 апр 2008.

  1. JamesB

    JamesB New Member

    Публикаций:
    0
    Регистрация:
    3 фев 2008
    Сообщения:
    66
    Всех приветствую. Проблема появилась следующая. WinINet, если не поставить флаг INTERNET_FLAG_NO_CACHE_WRITE request'у, грузит все в кеш сам по себе. ЛЮБЫЕ элементы кроме главной страницы, например, <script src="http://somehost.com/jscript.js"> читаются через InternetReadFileEx(A|W), но почему-то все равно подгружаются из кеша, т.е. их невозможно перехватить вообще. Ф-ий работы с кешем довольно не мало, но почти ничего из них не вызывается. Подскажите плиз, что можно сделать?

    PS пытаюсь распаковать gzip-контент "на лету"
    убрать Accept-Encoding не предлагайте, это не вариант
     
  2. comrade

    comrade Константин Ёпрст

    Публикаций:
    0
    Регистрация:
    16 сен 2002
    Сообщения:
    232
    Адрес:
    Russian Federation
    WinInet - устарело. Даже мелкомягкие советует не использовать.

    Посоветую голову не морочить и использовать WinHttp или libcurl.
     
  3. comrade

    comrade Константин Ёпрст

    Публикаций:
    0
    Регистрация:
    16 сен 2002
    Сообщения:
    232
    Адрес:
    Russian Federation
    (На WinHttp переход должен быть легким - API почти аналогичны WinInet'у)
     
  4. JamesB

    JamesB New Member

    Публикаций:
    0
    Регистрация:
    3 фев 2008
    Сообщения:
    66
    Я пишу перехват, а не свою программу
    Что там устарело это не моя забота
     
  5. comrade

    comrade Константин Ёпрст

    Публикаций:
    0
    Регистрация:
    16 сен 2002
    Сообщения:
    232
    Адрес:
    Russian Federation
    Понял, можно было без драмы.

    Ты INTERNET_FLAG_NO_CACHE_WRITE на все реквесты ставишь? (даже на http://somehost.com/jscript.js и т.д.) ?
     
  6. JamesB

    JamesB New Member

    Публикаций:
    0
    Регистрация:
    3 фев 2008
    Сообщения:
    66
    Не, я как раз не ставлю. Если ставить, то само собой. Но тогда кеша не будет. И все каждый раз обновляется, что тормозно и заметно. Моя идея в том что грамортно прям так все реализовать :) CommitUrlCacheEntry вот вчера нашел, впринципе, уверен, что ее нужно похукать. Но ещё не разбирался...