Wininet cache task object что это
CacheTask в планировщике — что это? (Windows 7)
CacheTask — задача, появляется после обновления Internet Explorer 8, предназначена для кэширования копий веб-сайтов, которые были посещены пользователем.
Сам кэш реализован в виде файла WebCacheV01.dat (база данных ESE, раньше известная как Jet Blue). Такое кэширование ускоряет работу браузера и открытие ранее посещенных сайтов.
Также найдена информация, что данное задание можно спокойно удалить, особенно если вы не пользуетесь Internet Explorer. Дополнительно в реестре можно удалить раздел <3EB3C877-1F16-487C-9050-104DBCD66683>. Только сперва нужно получить разрешения — правой кнопкой по мышкой по разделу > выбираем Разрешения > станьте владельцем и предоставьте полный доступ. После удаления — обратно поставьте владельца TrustedInstaller:
У одного человека была проблема — примерно один раз в неделю выскакивала такая ошибка:
DllHost (3648) WebCacheLocal: Повреждена страница теневого заголовка файла C:\Users\User\AppData\Local\Microsoft\Windows\WebCache\WebCacheV01.dat.
Мое мнение — задачу можно отключить, а потом удалить, особенно если вы не пользуетесь браузером Internet Explorer (а им мало кто пользуется):
Дополнительно конечно не лишним будет создать точку восстановления на всякий случай. Тогда если что — вы сможете произвести откат системы.
Надеюсь данная информация оказалась полезной. Удачи и добра, до новых встреч друзья!
кэширование (Windows интернет)
Функции WinINet имеют простую, но гибкую встроенную поддержку кэширования. Все данные, полученные из сети, кэшируются на жестком диске и извлекаются для последующих запросов. Приложение может управлять кэшированием каждого запроса. Для HTTP-запросов с сервера большинство полученных заголовков также кэшируются. Когда HTTP-запрос выполняется из кэша, кэшированные заголовки также возвращаются вызывающему объекту. Это позволяет легко загружать данные независимо от того, поступают ли они из кэша или из сети.
Приложения должны правильно выделить буфер для получения нужных результатов при использовании постоянных функций кэширования URL-адресов. Дополнительные сведения см. в разделе использование буферов.
Поведение кэша во время обработки ответа
Кэш WinINet совместим с директивами управления кэшем HTTP, описанными в RFC 2616. Директивы управления кэшем и флаги набора приложений определяют, что может быть кэшировано; Однако WinINet определяет, что на самом деле кэшируется на основе следующего критерия:
Очистка кэша
Очистка кэша периодически удаляет элементы из кэша. Если элемент добавляется в кэш, а кэш полон, элемент добавляется в кэш и планируется очистка кэша. Если очистка кэша завершает очистку, а кэш не достигает предела кэша, то для очистки планируется еще один цикл, когда в кэш добавляется другой элемент. Как правило, очистка планируется, когда добавленный элемент помещает кэш на предельный размер. По умолчанию минимальное время жизни в кэше составляет 10 минут, если иное не указано в директиве Cache-Control. При инициации очистки кэша не гарантируется, что самые старые элементы первыми будут удалены из кэша.
Кэш является общим для всех приложений WinINet на компьютере для одного и того же пользователя. начиная с Windows Vista и Windows Server 2008 размер кэша задается равным 1 или 32-го размер диска, минимальный размер 8 мб и максимальный размер 50 мб.
Использование флагов для управления кэшированием
Флаги кэширования позволяют приложению управлять тем, когда и как оно использует кэш. Эти флаги можно использовать отдельно или в сочетании с параметром dwFlags в функциях, обращающихся к информации или ресурсам в Интернете. По умолчанию функции хранят все данные, загруженные из Интернета.
Для управления кэшированием можно использовать следующие флаги.
Функции постоянного кэширования
Клиенты, которым требуются постоянные службы кэширования, используют функции постоянного кэширования, чтобы позволить приложениям сохранять данные в локальной файловой системе для последующего использования, например в ситуациях, когда канал с низкой пропускной способностью ограничивает доступ к данным, или доступ вообще недоступен.
Функции кэширования обеспечивают постоянное кэширование и просмотр в автономном режиме. Если флаг Internet _ флаг _ _ _ записи кэша явно не указывает кэширование, функции кэшируют все данные, загруженные из сети. Ответы на POST данные не кэшируются.
Использование функций кэша постоянного URL-адреса
Следующие функции кэша постоянных URL-адресов позволяют приложению получать доступ к информации, хранящейся в кэше, и управлять ею.
Перечисление кэша
Функции финдфирстурлкачинтри и финднекстурлкачинтри перечисляют сведения, хранящиеся в кэше. Финдфирстурлкачинтри запускает перечисление, используя шаблон поиска, буфер и размер буфера для создания маркера и возврата первой записи кэша. Финднекстурлкачинтри принимает маркер, созданный финдфирстурлкачинтри, буфер и размер буфера, чтобы вернуть следующую запись кэша.
Обе функции хранят информационную структуру _ _ записи _ в кэше Интернета в буфере. Размер этой структуры различается для каждой записи. Если размер буфера, передаваемый любой из функций, недостаточен, функция завершается ошибкой, а GetLastError возвращает ошибку, _ недостаточную для _ буфера. Переменная размера буфера содержит размер буфера, который был необходим для получения этой записи кэша. Буфер, размер которого определяется переменной размера буфера, должен быть выделен, а функция должна вызываться повторно с новым буфером.
Структура _ _ _ сведений о записи кэша Интернета содержит размер структуры, URL-адрес кэшированной информации, имя локального файла, тип записи кэша, число использований, скорость попаданий, размер, время последнего изменения, срок действия, Последний доступ, время последней синхронизации, сведения о заголовке, размер сведений о заголовке и расширение имени файла.
В следующем примере отображается URL-адрес каждой записи кэша в поле со списком, IDC _ качелист. Он использует максимальный _ _ Размер записи _ кэша _ для первоначального выделения буфера, поскольку ранние версии API WinInet не перечисляют кэш должным образом. Более поздние версии выполняют перечисление кэша в правильном объеме и не имеют ограничения на размер кэша. Все приложения, работающие на компьютерах с версией API WinINet из Internet Explorer 4,0, должны выделить буфер требуемого размера. Дополнительные сведения см. в разделе использование буферов.
Получение сведений о записи кэша
Функция жетурлкачинтринфо позволяет получить структуру _ _ _ сведений об элементе кэша Интернета для указанного URL-адреса. Эта структура содержит размер структуры, URL-адрес кэшированной информации, имя локального файла, тип записи кэша, число использований, коэффициент попаданий, размер, время последнего изменения, срок действия, Последний доступ, время последней синхронизации, сведения о заголовке, размер сведений о заголовке и расширение имени файла.
Жетурлкачинтринфо принимает URL-адрес, буфер для структуры _ _ _ сведений об элементе кэша Интернета и размер буфера. Если URL-адрес найден, сведения копируются в буфер. В противном случае происходит сбой функции, а GetLastError ВОЗВРАЩАЕТ _ файл ошибки _ не _ найден. Если размер буфера недостаточен для хранения данных записи кэша, функция завершается ошибкой, а GetLastError возвращает ошибку, _ недостаточную для _ буфера. Размер, необходимый для получения сведений, хранится в переменной размера буфера.
Жетурлкачинтринфо не выполняет синтаксический анализ URL-адреса, поэтому URL-адрес, содержащий привязку ( # ), не будет найден в кэше, даже если ресурс кэшируется. Например, если передается URL-адрес » https://example.com/example.htm\#sample «, функция возвращает _ файл ошибки _ не _ найден, даже если https://example.com/example.htm в кэше находится «».
Создание записи кэша
Креатеурлкачинтри принимает URL-адрес, ожидаемый размер файла и расширение имени файла. Затем функция создает локальное имя файла для сохранения записи кэша, которая соответствует URL-адресу и расширению имени файла.
С помощью имени локального файла запишите данные в локальный файл. После того как данные записаны в локальный файл, приложение должно вызвать коммитурлкачинтри.
Коммитурлкачинтри принимает URL-адрес, имя локального файла, срок действия, время последнего изменения, тип записи кэша, сведения о заголовке, размер сведений о заголовке и расширение имени файла. Затем функция кэширует данные в файле, указанном в хранилище кэша, и связывает его с заданным URL-адресом.
В следующем примере используется локальное имя файла, созданное предыдущим вызовом креатеурлкачинтри, которое хранится в текстовом поле IDC _ локальный_файл, чтобы сохранить текст из текстового поля, IDC _ качедумп, в записи кэша. После записи данных в файл с помощью fopen, fprintf и фклосе запись фиксируется с помощью коммитурлкачинтри.
Удаление записи кэша
Получение файлов записей кэша
Ретриевеурлкачинтристреам не выполняет синтаксический анализ URL-адреса, поэтому URL-адрес, содержащий привязку ( # ), не будет найден в кэше, даже если ресурс кэшируется. Например, если передается URL-адрес » https://example.com/example.htm\#sample «, функция возвращает _ файл ошибки _ не _ найден, даже если https://example.com/example.htm в кэше находится «».
После того как данные в файле будут использованы, приложение должно вызвать унлоккурлкачинтрифиле для разблокировки файла.
Группы кэша
Функции финдфирстурлкачинтрекс и финднекстурлкачинтрекс можно использовать для перечисления записей в указанной группе кэша. После завершения перечисления функция должна вызвать финдклосеурлкаче.
Обработка структур со сведениями о размере переменных
Некоторые функции кэша завершаются ошибкой, _ недостаточным _ сообщение об ошибке буфера, если указать буфер, который слишком мал для хранения данных записи кэша, полученных функцией. В этом случае функция также возвращает необходимый размер буфера. Затем можно выделить буфер соответствующего размера и вызвать функцию снова.
WinINet не поддерживает реализации серверов. Кроме того, его не следует использовать из службы. для серверных реализаций или служб используйте Microsoft Windows HTTP services (WinHTTP).
Cache task что это
Подлинный файл является одним из компонентов программного обеспечения Caché, разработанного InterSystems.
Cache.exe — это исполняемый файл (программа) для Windows. Расширение имени файла .exe — это аббревиатура от англ. слова executable — исполнимый. Необходимо запускать исполняемые файлы от проверенных производителей программ, потому что исполняемые файлы могут потенциально изменить настройки компьютера или нанести вред вашему компьютеру. Бесплатный форум с информацией о файлах может помочь вам разобраться является ли Cache.exe вирусом, трояном, программой-шпионом, рекламой, которую вы можете удалить, или файл принадлежит системе Windows или приложению, которому можно доверять.
Вот так, вы сможете исправить ошибки, связанные с Cache.exe
Информация о файле Cache.exe
Описание: Cache.exe не является важным для Windows и часто вызывает проблемы. Файл Cache.exe находится в подпапках «C:UsersUSERNAME». Известны следующие размеры файла для Windows 10/8/7/XP 110,592 байт (33% всех случаев), 133,120 байт или 107,520 байт.
Нет информации по файлу. Приложение не видно пользователям. Процесс использует порт, чтобы присоединится к сети или интернету. Это не системный процесс Windows. Поэтому технический рейтинг надежности 90% опасности.
Если Cache.exe находится в подпапках «C:Program Files», тогда рейтинг надежности 73% опасности. Размер файла 4,552,704 байт (50% всех случаев) или 3,342,336 байт. Нет информации по файлу. У процесса нет видимого окна. Процесс использует порт, чтобы присоединится к сети или интернету. Это не системный файл Windows.
Издатель программного обеспечения Intersystems обеспечивает прямую поддержку (www.intersystems.com/support). В случае проблем с Cache.exe, Вы можете удалить всю программу Caché in C: InterSystems Cache или Caché in C: CACHESYS, используя Панель управления Windows, или проверьте существует ли более новая версия.
Важно: Некоторые вредоносные программы используют такое же имя файла Cache.exe, например Trojan:MSIL/Golbla.B (определяется антивирусом Microsoft), и HEUR:Trojan.Win32.Generic (определяется антивирусом Kaspersky). Таким образом, вы должны проверить файл Cache.exe на вашем ПК, чтобы убедиться, что это угроза. Мы рекомендуем Security Task Manager для проверки безопасности вашего компьютера.
Комментарий пользователя
Лучшие практики для исправления проблем с Cache
Аккуратный и опрятный компьютер — это главное требование для избежания проблем с Cache. Для этого требуется регулярная проверка компьютера на вирусы, очистка жесткого диска, используя cleanmgr и sfc /scannow, удаление программ, которые больше не нужны, проверка программ, которые запускаются при старте Windows (используя msconfig) и активация Автоматическое обновление Windows. Всегда помните о создании периодических бэкапов, или в крайнем случае о создании точек восстановления.
Если у вас актуальные проблемы, попробуйте вспомнить, что вы делали в последнее время, или последнюю программу, которую вы устанавливали перед тем, как появилась впервые проблема. Используйте команду resmon, чтобы определить процесс, который вызывает проблемы. Даже если у вас серьезные проблемы с компьютером, прежде чем переустанавливать Windows, лучше попробуйте восстановить целостность установки ОС или для Windows 8 и более поздних версий Windows выполнить команду DISM.exe /Online /Cleanup-image /Restorehealth. Это позволит восстановить операционную систему без потери данных.
Следующие программы могут вам помочь для анализа процесса Cache.exe на вашем компьютере: Security Task Manager отображает все запущенные задания Windows, включая встроенные скрытые процессы, такие как мониторинг клавиатуры и браузера или записей автозагрузки. Уникальная оценка рисков безопасности указывает на вероятность процесса быть потенциально опасным — шпионской программой, вирусом или трояном. Malwarebytes Anti-Malware определяет и удаляет бездействующие программы-шпионы, рекламное ПО, трояны, кейлоггеры, вредоносные программы и трекеры с вашего жесткого диска.
Cache сканер
Security Task Manager показывает все запущенные сервисы Windows, включая внедренные скрытые приложения (например, мониторинг клавиатуры или браузера, авто вход). Уникальный рейтинг надежности указывает на вероятность того, что процесс потенциально может быть вредоносной программой-шпионом, кейлоггером или трояном.
Бесплатный aнтивирус находит и удаляет неактивные программы-шпионы, рекламу, трояны, кейлоггеры, вредоносные и следящие программы с вашего жесткого диска. Идеальное дополнение к Security Task Manager.
Reimage бесплатное сканирование, очистка, восстановление и оптимизация вашей системы.
Современные программы и операционные системы обеспечивают быстрый доступ к недавно использовавшимся данным и документам с помощью кэшируемых Web-страниц, списков ранее набранных фраз и списков часто используемых элементов (MRU). Все эти функции полезны, но иногда они занимают огромное количество дискового пространства и могут доставлять немало хлопот администратору, который вынужден защищать конфиденциальность пользовательских данных. Если подобные проблемы возникают, можно использовать сценарий на языке Perl CleanCache.p», приведенный в Листинге 8, для удаления большинства часто используемых кэшированных файлов в системе Windows и списков MRU. Я полагаю, что читатели имеют некоторое представление о языке Perl, а дополнительно c этим языком можно ознакомиться на сайте http://www.roth.net/perl.
Простой сценарий Perl для очистки кэша
Современные программы и операционные системы обеспечивают быстрый доступ к недавно использовавшимся данным и документам с помощью кэшируемых Web-страниц, списков ранее набранных фраз и списков часто используемых элементов (MRU). Все эти функции полезны, но иногда они занимают огромное количество дискового пространства и могут доставлять немало хлопот администратору, который вынужден защищать конфиденциальность пользовательских данных. Если подобные проблемы возникают, можно использовать сценарий на языке Perl CleanCache.p», приведенный в Листинге 8, для удаления большинства часто используемых кэшированных файлов в системе Windows и списков MRU. Я полагаю, что читатели имеют некоторое представление о языке Perl, а дополнительно c этим языком можно ознакомиться на сайте http://www.roth.net/perl.
Кэш Internet Explorer
Когда вы используете Microsoft Internet Explorer (IE) для навигации по Web-ресурсам, он сохраняет Web-страницы, графику, cookies-файлы, сценарии Java и другую загружаемую информацию на жесткий диск в область, обозначенную как кэш IE. Последующие обращения к объектам, сохраненным подобным образом, не требуют повторного соединения с Web-сервером. Это позволяет экономить время, которое затрачивается на установку соединения и загрузку, особенно при работе с объемными файлами. Однако правом использования кэша владеет не только IE. Точнее, данная область принадлежит библиотеке WinInet.dll. Эта библиотека предоставляет доступ по протоколам Web и FTP, а также функции кэширования. IE и другие приложения, такие как Microsoft Outlook Express и Windows Media Player (WMP), используют кэш библиотеки WinInet, поэтому кэш может содержать файлы с полезной информацией. Для просмотра списка содержимого кэша откройте приложение Internet Options в Control Panel, перейдите на вкладку General и нажмите кнопку Settings (под надписью «Temporary Internet files»). Далее нажмите кнопку View Files в окне диалогового окна Settings.
Кэш библиотеки WinInet состоит из двух компонентов: базы данных и контейнера. Контейнер – это каталог или набор каталогов, в которых размещаются кэшированные файлы. База данных содержит записи, которые отображают каждый из URL-адресов местоположения кэшированных элементов на диске. Когда вы загружаете файл с Web-ресурса, IE сохраняет файл в контейнере и добавляет запись-указатель в базу данных. Обычно контейнер кэша находится по адресу %systemroot%documents and settingsusernamelocal settings emporary internet files, где «username» — имя пользователя.
Очистить кэш достаточно легко – нужно лишь удалить кэшированные файлы из контейнера на жестком диске (обычно папка Temporary Internet Files) и удалить записи из базы данных. Однако записи базы данных кэша могут указывать не только на контейнер, но и на любой файл, в любом каталоге, на любом диске локальной системы или даже на удаленной системе. Поэтому если просто удалить все файлы из папки Temporary Internet Files, можно пропустить некоторые кэшированные файлы.
Кроме того, кэш библиотеки WinInet может хранить файлы, как по отдельности, так и группами. Следовательно, любой сценарий, чистящий кэш, должен запрашивать из базы данных кэша как отдельные файлы, так и группы файлов. Например, WMP может кэшировать потоковые данные с потокового сервера или постепенно загружать данные с Web-сервера. WMP хранит эти файлы группой в кэше библиотеки WinInet. Следовательно, если сценарий ищет и удаляет только файлы, он может пропустить группу кэшированных файлов WMP. Аналогично, чтобы удалить только те файлы, которые принадлежат WMP, необходим сценарий, который будет распознавать группу кэшированных файлов.
Более того, удаление кэшированных файлов не приводит к очистке базы данных кэша, для которой приложение (например, IE) или сценарий могут продолжать создание запросов. Для полной очистки кэша необходимо перебрать все записи в базе данных, после чего удалить каждый кэшированный файл и связанную с ним запись из базы данных. Библиотека WinInet предлагает функцию для перебора всех записей кэша и функцию DeleteUrlCacheEntry(), которая удаляет и сам кэшированный файл, и запись в базе данных кэша. Та же процедура требуется для удаления кэшированных данных cookies-файлов и информации по использованию браузера. Так как множество процессов могут использовать кэш библиотеки WinInet одновременно, файлы базы данных обычно находятся в открытом состоянии. Поэтому сценарий не может удалить текущие файлы базы данных. Вместо этого сценарий должен просто удалить информацию из файлов базы данных.
Временные файлы
Приложения генерируют все виды временных файлов. Хотя некоторые приложения при завершении работы автоматически удаляют свои временные файлы, многие программы оставляют их. Пакет Microsoft Word печально известен тем, что создает временные файлы и никогда их не удаляет.
Со временем накопленные временные файлы начинают занимать значительный объем дискового пространства, от нескольких килобайт до сотен мегабайт. Еще хуже то, что большинство этих файлов имеют маленький размер, и их хранение может привести к фрагментации более крупных файлов. Сильная фрагментация файла может снизить общую производительность системы (особенно если фрагментируется файл подкачки Windows) и послужить причиной чрезмерной загрузки жесткого диска. Поэтому периодическая очистка каталогов временных файлов очень желательна.
Временные файлы хранятся в двух местах: в каталоге Temporary Internet и в каталоге Temp. Как я пояснил выше, библиотека WinInet использует каталог Temporary Internet Files для хранения кэшированных файлов из Internet. В каталоге Temp хранятся временные файлы, создаваемые приложениями и операционной системой. Переменная окружения temp описывает точное местоположение папки Temp. Вы можете просмотреть эту переменную, выполнив команду Set в командной строке. В языке Perl можно использовать список %ENV с ключом TEMP — ENV – для получения пути к папке Temp. Для просмотра списка переменных окружения следует щелкнуть правой кнопкой мыши на ярлыке My Computer и выбрать пункт Properties. Затем перейдите на вкладку Advanced и нажмите кнопку Environment Variables. Удаление временных файлов сводится к удалению всех файлов из каталога Temp; удаление файлов из папки Temporary Internet Files, как я объяснил выше, является чуть более сложной задачей.
Другие данные
Несколько других типов данных могут создавать хаотичность в дисковом пространстве. Сценарий CleanCache.pl можно использовать для удаления следующих данных (часто путем простого удаления значений определенных подключей реестра):
Данные форм IE. IE может запоминать данные, которые пользователь вводит в Web-формы. Эта способность облегчает процесс заполнения форм. Запоминаемая информация располагается в подразделе реестра HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerIntelliFormsSPW.
Список введенных адресов URL. Когда вы вводите адрес URL в строку адреса, IE сохраняет этот адрес в списке введенных адресов, из которого в дальнейшем можно выбирать ранее введенные адреса. Список введенных адресов располагается в разделе реестра HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerTypedURLs.
Список MRU. Выбор в меню Start пункта Run открывает текстовое поле, в которое можно ввести команду или путь для запуска приложения. Это текстовое поле имеет ниспадающий список путей, введенных ранее. Данный список известен как список MRU. Список MRU удобен, так как не требуется целиком запоминать команду или путь, использованный ранее для запуска приложения. Однако любой, кто получит доступ к вашей учетной записи или разделу реестра, в котором содержатся настройки списка MRU, также сможет получить эту информацию. Список MRU располагается в подразделе реестра HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerRunMRU.
Корзины. Когда вы используете службу Windows Explorer для удаления файлов, система Windows сохраняет файлы в Корзине, чтобы при необходимости можно было восстановить их. Обычно своя корзина существует на каждом диске, а общая корзина располагается на рабочем столе. Корзины со временем начинают занимать довольно много места, и их следует периодически очищать.
Сценарий
Сценарий CleanCache.pl удаляет различные типы кэшируемых данных. Он полезен для очистки учетной записи на системе, чтобы другие пользователи не смогли узнать, к каким данным обращался тот или иной пользователь. Сценарий, на первый взгляд, может показаться сложным, но на самом деле он достаточно прост. Давайте рассмотрим наиболее важные части сценария.
Код, приведенный в Листинге 1, отображает работу с настройками. В этом разделе сценарий присваивает значения различным переменным. Я обнаружил большинство этих значений в документации Microsoft Developer Network (MSDN); остальные были получены методом проб и ошибок. Эта часть сценария находится в блоке «без ограничений», в котором отключено ограничение языка Perl, так что большинство определенных переменных, лексически не выделенных словом «my», не вызовут появления предупреждений при работе сценария.
Код, приведенный в Листинге 2, отображает загрузку различных библиотек для получения доступа к необходимым функциям. Данный сценарий будет использовать модуль Win32::API::Prototype для вызова этих функций, чтобы выполнить определенные задачи, такие как очистка Корзины (функция SHQueryRecycleBin()) и удаление записи из кэша (функция DeleteUrlCacheEntry()). Код, приведенный в Листинге 3, отображает вызов различных процедур для удаления файлов, значений подключей реестра и вызова функций операционной системы.
Процедура DeleteUrlCacheGroups перебирает группы кэша, которые находятся в базе данных кэша библиотеки WinInet. Далее сценарий получает информацию (например, используемый под группу объем дискового пространства) по каждой группе в кэше, как показано в коде Листинга 4. Имейте в виду, что в коде блока A в Листинге 4 для присвоения значений списку используется небольшая хитрость. Этот прием работает, так как порядок массива значений хорошо известен. Однако данный блок может вызвать ошибки, если не отменено применение ограничения для данного блока. Код в Листинге 5 отображает удаление файлов и очистку кэша (как я объяснил выше, предполагается, что сценарий создается именно для этого).
Процедура CleanDirectory осуществляет вызов системной функции SHGetFolderpath(). Используя значение идентификатора класса (CLSID), функция возвращает полный путь к специализированному каталогу (например, к папкам My Documents, Recent File или Temporary Internet Files). Дополнительную информацию о том, как сценарий получает пути, можно найти во врезке «Определение путей». Функция возвращает строку в кодировке Unicode, и код удаляет все символы NULL в строке. Выполнение этой операции может оказаться затруднительным для путей, в которых на самом деле используются символы Unicode. Далее процедура вызывает функцию CleanDirectoryAndFiles() для удаления файлов из данного каталога. Если удаление файлов выполнить невозможно, сценарий пытается переименовать файл, так, чтобы его было легко обнаружить при следующей очистке.
Процедура ClearRegistryKey() удаляет все значения из определенного подраздела реестра. Сценарий вызывает эту процедуру несколько раз для очистки списка MRU, данных форм IE и списка введенных адресов IE.
Процедура EmptyRecycleBin запрашивает статистику по Корзине на данной системе (например, какое количество файлов хранится в корзине) и очищает Корзины. Когда сценарий вызывает системную функцию SHEmptyRecycleBin() для очистки корзин, функция выставляет несколько флагов, чтобы предотвратить появление диалогового окна подтверждения. Флаги также подавляют любое звуковое оповещение об очистке корзины и появление диалогового окна, отображающего степень очистки корзины.
Работа со сценарием
Сценарий использует модуль Win32::API::Prototype, который можно установить, используя службу Perl Package Manager (PPM). Для этого в командную строку нужно ввести:
Этот модуль использует расширение Win32-API, которое входит в стандартный набор пакета Perl от компании ActiveState. Вы также можете получить расширение по адресу http://dada.perl.it/#api и задействовать службу PPM для его установки с помощью команды:
Когда мы запускаем сценарий без указания параметров, он собирает информацию об объеме дискового пространства, используемого кэшем, количестве кэшированных файлов, количестве элементов в списке MRU и так далее. В результате сценарий отобразит итоговые значения, но не удалит ни одного элемента и не очистит кэш. Если вы запускаете сценарий с параметром /v, результаты будут отображены подробно. Если вы запускаете сценарий с параметром /s, сценарий будет работать в скрытом режиме, не выдавая никакой информации. Данный параметр перекрывает параметр /v. Если вы запускаете сценарий с параметром /d, он удалит кэшированные файлы, очистит базу данных кэша и удалит другие названные выше типы данных.
Успех использования сценария зависит от количества приложений, имеющих доступ к базе данных кэша. Если другой процесс использует библиотеку WinInet, база данных кэша может быть очищена не полностью. Поэтому необходимо закрыть все сопроцессы IE, включая процессы, внедренные в другие приложения, такие как WMP Media Guide, перед запуском сценария. Кроме того, некоторые некорректно написанные приложения используют библиотеку WinInet и должны быть остановлены перед запуском сценария.
Также следует иметь в виду, что даже после запуска сценария с параметром /d список MRUWindows Explorer может казаться не очищенным. Windows Explorer загружает список MRU в память и не обязательно производит повторную загрузку с диска. Чтобы отобразить очищенный список MRU, нужно остановить и перезапустить Windows Explorer, завершив сеанс и заново зарегистрировавшись в системе.
Определение путей
Каждый пользователь имеет выделенный каталог со своим профилем. Этот профиль содержит индивидуальную информацию об учетной записи (например, Internet-закладки, раздел реестра, список Recent File, список My Documents, настройки программ). Обычно каталог с профилем является подкаталогом папки C:documents and settings и идентифицируется по имени пользователя. Например, пользователь с именем Ralph будет иметь профиль в папке C:documents and settings alph. Однако предположение, что недавно загруженные пользователем документы будут храниться в папке C:documents and settings alph ecent, может быть и неверным. Например, если пользователь имеет перемещаемый профиль, каталог с профилем может иметь адрес profile_serverusers alph.
Кэш — это то, что винды после закачки файлов по ftp (и не только) хранят в каталогах C:Documents and Settings. Local SettingsTemporary Internet FilesContent.IE5
дабы ты, при их повторной качке не качал?
ясно что надо юзать DeleteUrlCacheEntry, но что то не получается,
есть ли способ сразу указать не использовать кэш, без этого гемороя (перодической его очисткой)?
hUrl:=InternetOpenUrl(hInet,
pchar(xUrl),
pchar(Header),
strlen(pchar(Header)), INTERNET_FLAG_NO_CACHE_WRITE,0);
все работает, но с этой функцией не пашет FtpOpenFile
как быть? Может кто — уже сталкивался с этой проблемой. И еще довесок будет ли в такой связке пахать InternetSetFilePointer (для организации докачки)?
← →
Seeker © ( 2005-01-03 16:14 ) [1]
procedure ClearCashe;
Var
lpEntryInfo : PInternetCacheEntryInfo;
hCacheDir : LongWord;
dwEntrySize : LongWord;
dwLastError : LongWord;
Begin
dwEntrySize := 0;
FindFirstUrlCacheEntry(NIL,TInternetCacheEntryInfo(NIL^),
dwEntrySize );
GetMem(lpEntryInfo, dwEntrySize);
hCacheDir := FindFirstUrlCacheEntry(NIL, lpEntryInfo^,dwEntrySize);
If ( hCacheDir <> 0 ) Then
DeleteUrlCacheEntry(lpEntryInfo^.lpszSourceUrlName);
FreeMem( lpEntryInfo );
Repeat
dwEntrySize := 0;
FindNextUrlCacheEntry(hCacheDir, TInternetCacheEntryInfo(NIL^), dwEntrySize);
dwLastError := GetLastError();
If (GetLastError = ERROR_INSUFFICIENT_BUFFER) Then
Begin
GetMem(lpEntryInfo, dwEntrySize);
If (FindNextUrlCacheEntry(hCacheDir, lpEntryInfo^,
dwEntrySize)) Then
DeleteUrlCacheEntry( lpEntryInfo^.lpszSourceUrlName );
FreeMem(lpEntryInfo);
End;
Until ( dwLastError = ERROR_NO_MORE_ITEMS );
End;
Можешь чистить выборочно( только то что тебе нужно) так будет быстрее.Если енто не то, пардон.