rs
заметил такие глюки:
1) через диспетчер задач устанавливаю средний приоритет вашей программе навожу курсор на иконку в трее показывает низкий приоритет
2)у меня не добавляется новые адреса в историю (добавляются только при обновлении базы чарез закладку сервис), может виноват HC?
Версии
HandyCache 0.97b1a
hc.Historian 2.3
У меня возникли следующие вопросы:
1)что за опция CheckQueue? если можно поподробнее
2)почему у меня при заходе на вкладку Сервис она долго отрисовывается?
Несколько предложений:
1)Поговорить с MAI, чтобы он в HandyCache сделал поддержку плагинов (например с расширением *.hcp (HandyCache Plug-in)) для начала, чтобы HC плагинам передавал следующие параметры:ссылка на файл в интернете, дата время, ссылка на файл в кэше кастрированая(т.е. например полная ссылка C:\HandyCache\cache\baner\img.jpg - кастрированная baner\img.jpg), ссылка на файл в кэше полная, рядом с плагином кнопочка параметры
2)Перенести все настройки в INI файл(например hch.ini)
3)Написать плагин (желательно на ассемблере, чтоб меньше памяти жрал и быстрее выполнялся, т.к. он постоянно будет висеть в памяти) который бы имел следующие настройки:
импорт настроек из hch.ini(вводится путь), CachePath, DataPath, ExcludeExts(у плагина должен быть свой ini файл), кодировка по умолчанию(на случай если не указана кодировка), а также кнопки Обновить историю, прервать обновление истории, Очистить историю
Также HC должен спрашивать у плагина User-Agent, который будет использоваться чтобы брать инфу только из кэша.
Примерный алгоритм работы плагина:
1)HC передает плагину параметры(ссылка на файл в интернете, дата время, ссылка на файл в кэше кастрированая).
2)плагин проверяет расширение файла и сверяет его со списком ExcludeExts, если оно там имеется, тогда переходит к следующему файлу иначе определяет, что за файл, если HTML, то определяет его кодировку, заголовок и заносит все это(ссылка на файл в интернете, дата время, ссылка на файл в кэше кастрированая) в базу данных.
Спросите зачем нужен плагин?, да хотябы для того, чтобы уменьшить головную боль для MAI
(вдруг вы захотите поменять формат базы данных)
4)Расширить поле ExcludeExts(сделать полноценный фильтр по имени файла, ссылке и его пути с исключениями, можно даже попробовать добавить логику, типа если не нашел заголовок страницы, то переход к следющему файлу)
5)Добавить переменную в которую бы заносилась буква диска используемого в пути CachePath, чтобы в ручную не редактировать букву диска в DecopressParams1 и DecopressParams2
6)На закладке История, в контекстное меню добавить "Загрузить\обновить выделенную WEB страницу в кэш из интернета"(если к примеру база давно создана и проводилась очистка кэша HC, т.е. история есть, а по факту страницы нет)
7)На закладке История добавить галочку "Открывать WEB-страницы из интернета"(при этом просто меняется User-Agent)
8)На закладке История над Адресом и Названием сделать 2 поля вровень с полями для фильтрации по дате, на этом же уровне сделать кнопочку очистки всех полей и фильтрации по дате. Смысл такой: только при удовлетворении всех критериев фильтрации(Адрес, Название, Дата) выводятся ссылки
9)Если это возможно (если знаешь ассемблер), то я предлагаю сортировку по адресу, названию, дате вынести в отдельную DLL написанную на ассемблере. Критерии фильтрации тоже вынести в отдельную DLL. И главное Обновить историю(ну и все остальные кнопки с закладки Сервис), вынести в отдельную DLL написанную на ассемблере(т.к эта операция ооочень долго выполняется).
Скорее всего, что-то забыл, ну лад, то потом
PS: БОЛЬШОЕ СПАСИБО!!! за отличную программу